2 #include "canvas/appearance.hpp"
3 #include "nlohmann/json_fwd.hpp"
4 #include <sigc++/sigc++.h>
6 #include "imp/action_catalog.hpp"
7 #include "imp/action.hpp"
8 #include "core/tool_id.hpp"
16 void load_from_json(
const json &j);
17 void load_colors_from_json(
const json &j);
18 json serialize()
const;
19 json serialize_colors()
const;
24 bool show_all_junctions =
false;
25 bool drag_start_net_line =
true;
27 void load_from_json(
const json &j);
28 json serialize()
const;
33 bool drag_start_track =
true;
34 bool highlight_on_top =
true;
35 bool show_text_in_tracks =
true;
37 void load_from_json(
const json &j);
38 json serialize()
const;
43 std::map<std::pair<ActionID, ToolID>, std::map<ActionCatalogItem::Availability, std::vector<KeySequence>>> keys;
45 void load_from_json(
const json &j);
46 void append_from_json(
const json &j);
47 json serialize()
const;
52 bool smooth_zoom_2d =
true;
53 bool smooth_zoom_3d =
false;
55 void load_from_json(
const json &j);
56 json serialize()
const;
62 std::string url =
"https://dev-partinfo.kitspace.org/graphql";
63 std::string preferred_distributor;
64 bool ignore_moq_gt_1 =
true;
65 unsigned int max_price_breaks = 3;
66 unsigned int cache_days = 5;
67 bool is_enabled()
const;
69 void load_from_json(
const json &j);
70 json serialize()
const;
76 void set_filename(
const std::string &filename);
79 void load_from_json(
const json &j);
81 static std::string get_preferences_filename();
82 json serialize()
const;
90 bool capture_output =
false;
93 typedef sigc::signal<void> type_signal_changed;
94 type_signal_changed signal_changed()
96 return s_signal_changed;
100 std::string filename;
101 type_signal_changed s_signal_changed;