2 #include "common/common.hpp"
3 #include "pool/part.hpp"
4 #include "pool/pool.hpp"
5 #include "pool/pool_parametric.hpp"
6 #include "util/uuid.hpp"
7 #include "util/window_state_store.hpp"
16 PartBrowserWindow(BaseObjectType *cobject,
const Glib::RefPtr<Gtk::Builder> &x,
const std::string &pool_path,
17 std::deque<UUID> &favs);
18 static PartBrowserWindow *create(Gtk::Window *p,
const std::string &pool_path, std::deque<UUID> &favs);
19 typedef sigc::signal<void, UUID> type_signal_place_part;
20 type_signal_place_part signal_place_part()
22 return s_signal_place_part;
24 type_signal_place_part signal_assign_part()
26 return s_signal_assign_part;
28 void placed_part(
const UUID &uu);
29 void go_to_part(
const UUID &uu);
30 void set_can_assign(
bool v);
33 Gtk::Menu *add_search_menu =
nullptr;
34 Gtk::Notebook *notebook =
nullptr;
35 Gtk::Button *place_part_button =
nullptr;
36 Gtk::Button *assign_part_button =
nullptr;
37 Gtk::ToggleButton *fav_button =
nullptr;
38 Gtk::ListBox *lb_favorites =
nullptr;
39 Gtk::ListBox *lb_recent =
nullptr;
40 Gtk::Paned *paned =
nullptr;
44 void handle_switch_page(Gtk::Widget *w, guint index);
45 void handle_fav_toggled();
46 void update_favorites();
47 void update_recents();
48 void handle_favorites_selected(Gtk::ListBoxRow *row);
49 void handle_favorites_activated(Gtk::ListBoxRow *row);
50 void handle_place_part();
51 void handle_assign_part();
52 sigc::connection fav_toggled_conn;
53 std::set<Gtk::Widget *> search_views;
57 void update_part_current();
58 std::deque<UUID> &favorites;
59 std::deque<UUID> recents;
61 type_signal_place_part s_signal_place_part;
62 type_signal_place_part s_signal_assign_part;
63 bool can_assign =
false;