3 #include "common/common.hpp"
4 #include "pool/part.hpp"
5 #include "editor_interface.hpp"
11 PartEditor(BaseObjectType *cobject,
const Glib::RefPtr<Gtk::Builder> &x,
class Part &p,
class IPool &po,
14 void reload()
override;
29 std::map<Part::Attribute, class EntryWithInheritance *> attr_editors;
32 Gtk::Label *w_entity_label =
nullptr;
33 Gtk::Label *w_package_label =
nullptr;
34 Gtk::Label *w_base_label =
nullptr;
35 Gtk::Button *w_change_package_button =
nullptr;
36 Gtk::ComboBoxText *w_model_combo =
nullptr;
37 Gtk::ToggleButton *w_model_inherit =
nullptr;
40 Gtk::Entry *w_tags_inherited =
nullptr;
41 Gtk::ToggleButton *w_tags_inherit =
nullptr;
43 Gtk::TreeView *w_tv_pins =
nullptr;
44 Gtk::TreeView *w_tv_pads =
nullptr;
45 Gtk::Button *w_button_map =
nullptr;
46 Gtk::Button *w_button_unmap =
nullptr;
47 Gtk::Button *w_button_automap =
nullptr;
48 Gtk::Button *w_button_select_pin =
nullptr;
49 Gtk::Button *w_button_select_pads =
nullptr;
50 Gtk::Button *w_button_copy_from_other =
nullptr;
51 Gtk::Label *w_pin_stat =
nullptr;
52 Gtk::Label *w_pad_stat =
nullptr;
54 Gtk::ComboBoxText *w_parametric_table_combo =
nullptr;
55 Gtk::Box *w_parametric_box =
nullptr;
56 Gtk::Button *w_parametric_from_base =
nullptr;
58 Gtk::Label *w_orderable_MPNs_label =
nullptr;
59 Gtk::Button *w_orderable_MPNs_add_button =
nullptr;
60 Gtk::Box *w_orderable_MPNs_box =
nullptr;
62 Gtk::Label *w_flags_label =
nullptr;
63 Gtk::Grid *w_flags_grid =
nullptr;
65 Gtk::RadioButton *w_override_prefix_inherit_button =
nullptr;
66 Gtk::RadioButton *w_override_prefix_no_button =
nullptr;
67 Gtk::RadioButton *w_override_prefix_yes_button =
nullptr;
68 Gtk::Entry *w_override_prefix_entry =
nullptr;
70 class PinListColumns :
public Gtk::TreeModelColumnRecord {
74 Gtk::TreeModelColumnRecord::add(gate_name);
75 Gtk::TreeModelColumnRecord::add(gate_uuid);
76 Gtk::TreeModelColumnRecord::add(pin_name);
77 Gtk::TreeModelColumnRecord::add(pin_uuid);
78 Gtk::TreeModelColumnRecord::add(mapped);
80 Gtk::TreeModelColumn<Glib::ustring> gate_name;
81 Gtk::TreeModelColumn<Glib::ustring> pin_name;
82 Gtk::TreeModelColumn<horizon::UUID> gate_uuid;
83 Gtk::TreeModelColumn<horizon::UUID> pin_uuid;
84 Gtk::TreeModelColumn<bool> mapped;
86 PinListColumns pin_list_columns;
88 Glib::RefPtr<Gtk::ListStore> pin_store;
90 class PadListColumns :
public Gtk::TreeModelColumnRecord {
94 Gtk::TreeModelColumnRecord::add(pad_name);
95 Gtk::TreeModelColumnRecord::add(pad_uuid);
96 Gtk::TreeModelColumnRecord::add(gate_name);
97 Gtk::TreeModelColumnRecord::add(gate_uuid);
98 Gtk::TreeModelColumnRecord::add(pin_name);
99 Gtk::TreeModelColumnRecord::add(pin_uuid);
101 Gtk::TreeModelColumn<Glib::ustring> pad_name;
102 Gtk::TreeModelColumn<horizon::UUID> pad_uuid;
103 Gtk::TreeModelColumn<Glib::ustring> gate_name;
104 Gtk::TreeModelColumn<Glib::ustring> pin_name;
105 Gtk::TreeModelColumn<horizon::UUID> gate_uuid;
106 Gtk::TreeModelColumn<horizon::UUID> pin_uuid;
108 PadListColumns pad_list_columns;
110 Glib::RefPtr<Gtk::ListStore> pad_store;
112 void update_orderable_MPNs_label();
113 void update_treeview();
114 void update_mapped();
115 void update_entries();
116 void change_package();
117 void populate_models();
118 void update_model_inherit();
119 void map_pin(Gtk::TreeModel::iterator it_pin);
120 void copy_from_other_part();
121 void update_map_buttons();
122 void update_flags_label();
123 void update_prefix_entry();
126 void update_parametric_editor();
Definition: part_editor.cpp:17
Definition: part_editor.cpp:100
Definition: parametric.hpp:11
Definition: part_editor.hpp:9
Definition: editor_interface.hpp:6
Definition: pool_parametric.hpp:10
Definition: tag_entry.hpp:9
This class encapsulates a UUID and allows it to be uses as a value type.
Definition: uuid.hpp:16