2 #include "project/project.hpp" 3 #include "util/editor_process.hpp" 4 #include "util/window_state_store.hpp" 15 std::pair<bool, std::string> create();
16 typedef sigc::signal<void, bool> type_signal_valid_change;
17 type_signal_valid_change signal_valid_change()
19 return s_signal_valid_change;
21 void populate_pool_combo(
const Glib::RefPtr<Gtk::Application> &app);
25 Gtk::Entry *project_name_entry =
nullptr;
26 Gtk::Entry *project_description_entry =
nullptr;
27 Gtk::FileChooserButton *project_path_chooser =
nullptr;
28 Gtk::Label *project_dir_label =
nullptr;
29 Gtk::ComboBoxText *project_pool_combo =
nullptr;
32 type_signal_valid_change s_signal_valid_change;
38 Gtk::Entry *entry_project_title =
nullptr;
39 Gtk::Label *label_pool_name =
nullptr;
40 Gtk::InfoBar *info_bar =
nullptr;
41 Gtk::Label *info_bar_label =
nullptr;
45 Gtk::Button *button_top_schematic =
nullptr;
46 Gtk::Button *button_board =
nullptr;
47 Gtk::Button *button_part_browser =
nullptr;
48 Gtk::Button *button_pool_cache =
nullptr;
50 void handle_button_top_schematic();
51 void handle_button_board();
52 void handle_button_part_browser();
53 void handle_button_pool_cache();
58 enum class Type { IMP_SCHEMATIC, IMP_BOARD, IMP_PADSTACK };
59 ProjectManagerProcess(Type ty,
const std::vector<std::string> &args,
const std::vector<std::string> &env);
61 std::unique_ptr<EditorProcess> proc =
nullptr;
75 void open_file_view(
const Glib::RefPtr<Gio::File> &file);
76 void spawn_imp(ProjectManagerProcess::Type type,
const UUID &pool_uuid,
const std::vector<std::string> &args);
80 Glib::RefPtr<Gtk::Builder> builder;
81 Gtk::Stack *stack =
nullptr;
82 Gtk::Button *button_open =
nullptr;
83 Gtk::Button *button_new =
nullptr;
84 Gtk::Button *button_close =
nullptr;
85 Gtk::Button *button_cancel =
nullptr;
86 Gtk::Button *button_create =
nullptr;
87 Gtk::Button *button_save =
nullptr;
88 Gtk::HeaderBar *header =
nullptr;
89 Gtk::ListBox *recent_listbox =
nullptr;
90 Gtk::Label *label_gitversion =
nullptr;
92 std::unique_ptr<Project> project =
nullptr;
93 std::string project_filename;
94 std::map<std::string, ProjectManagerProcess> processes;
98 enum class ViewMode { OPEN, PROJECT, CREATE };
99 void set_view_mode(ViewMode mode);
103 void handle_cancel();
104 void handle_create();
107 void handle_place_part(
const UUID &uu);
112 bool on_delete_event(GdkEventAny *ev)
override;
114 void update_recent_items();
116 zmq::socket_t sock_project;
117 std::string sock_project_ep;
119 sigc::connection sock_project_conn;
Definition: prj-mgr-app_win.hpp:64
Definition: part_browser_window.hpp:13
a class to store JSON values
Definition: json.hpp:161
Definition: window_state_store.hpp:20
Definition: pool_cache_window.hpp:14
Definition: prj-mgr-app_win.hpp:56
Definition: prj-mgr-app.hpp:21
This class encapsulates a UUID and allows it to be uses as a value type.
Definition: uuid.hpp:16
Definition: prj-mgr-app_win.hpp:35
Definition: prj-mgr-app_win.hpp:11