Horizon
Loading...
Searching...
No Matches
prj-mgr_views.hpp
1#pragma once
2#include <gtkmm.h>
3#include <memory>
4#include <zmq.hpp>
5#include <optional>
6
7namespace horizon {
8
10public:
11 PoolProjectManagerViewCreateProject(const Glib::RefPtr<Gtk::Builder> &refBuilder,
13 void clear();
14 void focus();
15 std::optional<std::string> create();
16 typedef sigc::signal<void, bool> type_signal_valid_change;
17 type_signal_valid_change signal_valid_change()
18 {
19 return s_signal_valid_change;
20 }
21 void populate_pool_combo();
22 void update();
23
24private:
26 Gtk::FileChooserButton *project_path_chooser = nullptr;
27 Gtk::Label *project_dir_label = nullptr;
28 Gtk::ComboBoxText *project_pool_combo = nullptr;
29 std::map<std::string, std::string> meta_values;
30 class ProjectMetaEditor *meta_editor = nullptr;
31
32 type_signal_valid_change s_signal_valid_change;
33};
34
36public:
37 PoolProjectManagerViewProject(const Glib::RefPtr<Gtk::Builder> &refBuilder, class PoolProjectManagerAppWindow &w);
38 Gtk::Label *label_project_title = nullptr;
39 Gtk::Label *label_project_author = nullptr;
40 Gtk::Label *label_project_directory = nullptr;
41 Gtk::Label *label_project_pools = nullptr;
42
43 void open_top_schematic();
44 void open_board();
45 bool update_meta();
46 void update_pool_cache_status(const class PoolCacheStatus &status);
47 void reset_pool_cache_status();
48 void update_pools_label();
49
50private:
52 Gtk::Button *button_top_schematic = nullptr;
53 Gtk::Button *button_board = nullptr;
54 Gtk::Button *button_part_browser = nullptr;
55 Gtk::Button *button_project_pool = nullptr;
56 Gtk::Label *pool_cache_status_label = nullptr;
57
58 class OpeningSpinner *board_spinner = nullptr;
59 class OpeningSpinner *schematic_spinner = nullptr;
60
61 void handle_button_part_browser();
62 void handle_button_project_pool();
63};
64} // namespace horizon
Definition prj-mgr_views.cpp:115
Definition pool_cache_status.hpp:11
Definition pool-prj-mgr-app_win.hpp:22
Definition prj-mgr_views.hpp:9
Definition prj-mgr_views.hpp:35
Definition project_meta_editor.hpp:8