5 #include "util/window_state_store.hpp"
6 #include "util/export_file_chooser.hpp"
7 #include "util/changeable.hpp"
11 class FabOutputWindow :
public Gtk::Window,
public Changeable {
12 friend class GerberLayerEditor;
15 FabOutputWindow(BaseObjectType *cobject,
const Glib::RefPtr<Gtk::Builder> &x,
class IDocumentBoard &c,
16 const std::string &project_dir);
17 static FabOutputWindow *create(Gtk::Window *p,
class IDocumentBoard &c,
const std::string &project_dir);
19 void set_can_generate(
bool v);
24 class IDocumentBoard &core;
26 class FabOutputSettings &settings;
27 Gtk::ListBox *gerber_layers_box =
nullptr;
28 Gtk::Entry *npth_filename_entry =
nullptr;
29 Gtk::Entry *pth_filename_entry =
nullptr;
30 Gtk::Label *npth_filename_label =
nullptr;
31 Gtk::Label *pth_filename_label =
nullptr;
32 Gtk::Entry *prefix_entry =
nullptr;
33 Gtk::Entry *directory_entry =
nullptr;
34 class SpinButtonDim *outline_width_sp =
nullptr;
35 Gtk::Button *generate_button =
nullptr;
36 Gtk::Button *directory_button =
nullptr;
37 Gtk::ComboBoxText *drill_mode_combo =
nullptr;
38 Gtk::TextView *log_textview =
nullptr;
39 Gtk::Switch *zip_output_switch =
nullptr;
40 bool can_export =
true;
41 void update_export_button();
43 ExportFileChooser export_filechooser;
45 Glib::RefPtr<Gtk::SizeGroup> sg_layer_name;
47 WindowStateStore state_store;
49 void update_drill_visibility();
50 unsigned int n_layers = 0;