[doc_tool] Moved executing of external programms from Model to FSHelper
[hsd_doku_tool.git] / src / ViewFluid.cxx
1 // generated by Fast Light User Interface Designer (fluid) version 1.0304
2
3 #include "ViewFluid.h"
4
5 Fl_Menu_Item ViewFluid::menu_menu_editor[] = {
6  {"Headlines", 0,  0, 0, 64, (uchar)FL_NORMAL_LABEL, 0, 14, 0},
7  {"h1", 0,  0, 0, 0, (uchar)FL_NORMAL_LABEL, 0, 14, 0},
8  {"h2", 0,  0, 0, 0, (uchar)FL_NORMAL_LABEL, 0, 14, 0},
9  {"h3", 0,  0, 0, 0, (uchar)FL_NORMAL_LABEL, 0, 14, 0},
10  {0,0,0,0,0,0,0,0,0},
11  {"List", 0,  0, 0, 0, (uchar)FL_NORMAL_LABEL, 0, 14, 0},
12  {0,0,0,0,0,0,0,0,0}
13 };
14 Fl_Menu_Item* ViewFluid::menu_rclck_headl = ViewFluid::menu_menu_editor + 0;
15 Fl_Menu_Item* ViewFluid::menu_rclck_headl1 = ViewFluid::menu_menu_editor + 1;
16 Fl_Menu_Item* ViewFluid::menu_rclck_headl2 = ViewFluid::menu_menu_editor + 2;
17 Fl_Menu_Item* ViewFluid::menu_rclck_headl3 = ViewFluid::menu_menu_editor + 3;
18 Fl_Menu_Item* ViewFluid::menu_rclck_list = ViewFluid::menu_menu_editor + 5;
19
20 void ViewFluid::cb_menu_open_about_dialog_i(Fl_Menu_*, void*) {
21   Fl_Double_Window win(400,220);
22 win.begin();
23 {
24 Fl_Multiline_Output* output = new Fl_Multiline_Output(0,0,400,220, "About");
25 output->value("Doc Tool\n\nFor a detailed usermanual please visit:"
26               "\nhttps://projects.nwrk.biz/projects/c-projektvorlage/wiki/Benutzerhandbuch" 
27               "\n\n(c) 2018 Daniel Giritzer\n daniel@giritzer.eu\nFH-Hagenberg\n" 
28               "\n\n[doc_tool] is based in part on the work of the"
29               "\nFLTK Project (http://www.fltk.org).");
30 }
31 win.label("About");
32 win.end();
33 win.show();
34 Fl::run();
35 }
36 void ViewFluid::cb_menu_open_about_dialog(Fl_Menu_* o, void* v) {
37   ((ViewFluid*)(o->parent()->user_data()))->cb_menu_open_about_dialog_i(o,v);
38 }
39
40 Fl_Menu_Item ViewFluid::menu_menu_bar[] = {
41  {"File", 0,  0, 0, 64, (uchar)FL_NORMAL_LABEL, 0, 14, 0},
42  {"New document", 0,  0, 0, 0, (uchar)FL_NORMAL_LABEL, 0, 14, 0},
43  {"Open document template", 0,  0, 0, 0, (uchar)FL_NORMAL_LABEL, 0, 14, 0},
44  {"Exit", 0,  0, 0, 0, (uchar)FL_NORMAL_LABEL, 0, 14, 0},
45  {0,0,0,0,0,0,0,0,0},
46  {"Edit", 0,  0, 0, 64, (uchar)FL_NORMAL_LABEL, 0, 14, 0},
47  {"Save as  template", 0,  0, 0, 1, (uchar)FL_NORMAL_LABEL, 0, 14, 0},
48  {"Change output directory", 0,  0, 0, 1, (uchar)FL_NORMAL_LABEL, 0, 14, 0},
49  {"Settings", 0,  0, 0, 1, (uchar)FL_NORMAL_LABEL, 0, 14, 0},
50  {0,0,0,0,0,0,0,0,0},
51  {"Help", 0,  0, 0, 64, (uchar)FL_NORMAL_LABEL, 0, 14, 0},
52  {"About", 0,  (Fl_Callback*)ViewFluid::cb_menu_open_about_dialog, 0, 0, (uchar)FL_NORMAL_LABEL, 0, 14, 0},
53  {0,0,0,0,0,0,0,0,0},
54  {0,0,0,0,0,0,0,0,0}
55 };
56 Fl_Menu_Item* ViewFluid::menu_file = ViewFluid::menu_menu_bar + 0;
57 Fl_Menu_Item* ViewFluid::menu_new_templ = ViewFluid::menu_menu_bar + 1;
58 Fl_Menu_Item* ViewFluid::menu_open_template = ViewFluid::menu_menu_bar + 2;
59 Fl_Menu_Item* ViewFluid::menu_exit = ViewFluid::menu_menu_bar + 3;
60 Fl_Menu_Item* ViewFluid::menu_edit = ViewFluid::menu_menu_bar + 5;
61 Fl_Menu_Item* ViewFluid::menu_gen_templ = ViewFluid::menu_menu_bar + 6;
62 Fl_Menu_Item* ViewFluid::menu_out_dir = ViewFluid::menu_menu_bar + 7;
63 Fl_Menu_Item* ViewFluid::menu_settings = ViewFluid::menu_menu_bar + 8;
64 Fl_Menu_Item* ViewFluid::menu_help = ViewFluid::menu_menu_bar + 10;
65 Fl_Menu_Item* ViewFluid::menu_open_about_dialog = ViewFluid::menu_menu_bar + 11;
66
67 Fl_Menu_Item ViewFluid::menu_menu_chapter[] = {
68  {"Add chapter", 0,  0, 0, 0, (uchar)FL_NORMAL_LABEL, 0, 14, 0},
69  {"Remove chapter", 0,  0, 0, 0, (uchar)FL_NORMAL_LABEL, 0, 14, 0},
70  {0,0,0,0,0,0,0,0,0}
71 };
72 Fl_Menu_Item* ViewFluid::menu_add_chapter = ViewFluid::menu_menu_chapter + 0;
73 Fl_Menu_Item* ViewFluid::menu_rm_chapter = ViewFluid::menu_menu_chapter + 1;
74
75 Fl_Menu_Item ViewFluid::menu_menu_author[] = {
76  {"Remove author", 0,  0, 0, 0, (uchar)FL_NORMAL_LABEL, 0, 14, 0},
77  {"Add author", 0,  0, 0, 0, (uchar)FL_NORMAL_LABEL, 0, 14, 0},
78  {"Edit coordinates", 0,  0, 0, 0, (uchar)FL_NORMAL_LABEL, 0, 14, 0},
79  {0,0,0,0,0,0,0,0,0}
80 };
81 Fl_Menu_Item* ViewFluid::menu_add_author = ViewFluid::menu_menu_author + 0;
82 Fl_Menu_Item* ViewFluid::menu_rm_author = ViewFluid::menu_menu_author + 1;
83 Fl_Menu_Item* ViewFluid::menu_coor_author = ViewFluid::menu_menu_author + 2;
84
85 Fl_Menu_Item ViewFluid::menu_menu_department[] = {
86  {"Edit coordinates", 0,  0, 0, 0, (uchar)FL_NORMAL_LABEL, 0, 14, 0},
87  {0,0,0,0,0,0,0,0,0}
88 };
89 Fl_Menu_Item* ViewFluid::menu_department_coord = ViewFluid::menu_menu_department + 0;
90
91 ViewFluid::ViewFluid() {
92   { win_doctool = new Fl_Double_Window(585, 630, "Doc Tool");
93     win_doctool->box(FL_GTK_DOWN_BOX);
94     win_doctool->user_data((void*)(this));
95     win_doctool->hotspot(win_doctool);
96     { Fl_Group* o = new Fl_Group(200, 45, 365, 575);
97       { btn_next = new Fl_Button(440, 475, 125, 45, "Next");
98         btn_next->tooltip("Edit next chapter.");
99         btn_next->box(FL_GTK_UP_BOX);
100         btn_next->deactivate();
101       } // Fl_Button* btn_next
102       { tb_editor = new Fl_Text_Editor(200, 50, 365, 410, "Text");
103         tb_editor->tooltip("Enter your Latex text here.");
104         tb_editor->box(FL_GTK_DOWN_FRAME);
105       } // Fl_Text_Editor* tb_editor
106       { btn_generate = new Fl_Button(440, 590, 125, 25, "Generate");
107         btn_generate->tooltip("Generate document.");
108         btn_generate->box(FL_GTK_UP_BOX);
109         btn_generate->user_data((void*)(this));
110         btn_generate->deactivate();
111       } // Fl_Button* btn_generate
112       { menu_editor = new Fl_Menu_Button(200, 50, 365, 410);
113         menu_editor->box(FL_GTK_UP_BOX);
114         menu_editor->deactivate();
115         menu_editor->menu(menu_menu_editor);
116       } // Fl_Menu_Button* menu_editor
117       { btn_open_src_dir = new Fl_Button(440, 530, 125, 25, "Open");
118         btn_open_src_dir->tooltip("Open directory containing source code.");
119         btn_open_src_dir->box(FL_GTK_UP_BOX);
120         btn_open_src_dir->deactivate();
121       } // Fl_Button* btn_open_src_dir
122       { btn_open_cov_sheet = new Fl_Button(440, 560, 125, 25, "Open");
123         btn_open_cov_sheet->tooltip("Select cover sheet .pdf file.");
124         btn_open_cov_sheet->box(FL_GTK_UP_BOX);
125         btn_open_cov_sheet->deactivate();
126       } // Fl_Button* btn_open_cov_sheet
127       { chb_finished = new Fl_Check_Button(355, 485, 25, 25, "Finished");
128         chb_finished->tooltip("Mark chapter as finished.");
129         chb_finished->down_box(FL_GTK_DOWN_BOX);
130         chb_finished->user_data((void*)(this));
131         chb_finished->deactivate();
132       } // Fl_Check_Button* chb_finished
133       o->end();
134       Fl_Group::current()->resizable(o);
135     } // Fl_Group* o
136     { br_chapters = new Fl_Browser(25, 50, 165, 220, "Chapters");
137       br_chapters->tooltip("Choose a chapter to write.");
138       br_chapters->box(FL_GTK_UP_BOX);
139       br_chapters->user_data((void*)(this));
140       br_chapters->align(Fl_Align(FL_ALIGN_TOP));
141       br_chapters->deactivate();
142     } // Fl_Browser* br_chapters
143     { menu_bar = new Fl_Menu_Bar(0, 0, 585, 20);
144       menu_bar->box(FL_GTK_UP_BOX);
145       menu_bar->menu(menu_menu_bar);
146     } // Fl_Menu_Bar* menu_bar
147     { pb_progress = new Fl_Progress(25, 590, 395, 25, "Progress");
148       pb_progress->tooltip("Your progress");
149       pb_progress->box(FL_GTK_DOWN_BOX);
150       pb_progress->user_data((void*)(this));
151       pb_progress->deactivate();
152     } // Fl_Progress* pb_progress
153     { cb_author = new Fl_Choice(25, 310, 165, 25, "Author");
154       cb_author->tooltip("Select author to edit.");
155       cb_author->box(FL_GTK_UP_BOX);
156       cb_author->down_box(FL_GTK_DOWN_BOX);
157       cb_author->align(Fl_Align(FL_ALIGN_TOP_LEFT));
158       cb_author->deactivate();
159     } // Fl_Choice* cb_author
160     { ti_name = new Fl_Input(75, 340, 115, 25, "Name:");
161       ti_name->box(FL_GTK_DOWN_BOX);
162       ti_name->deactivate();
163     } // Fl_Input* ti_name
164     { ti_est_time = new Fl_Input(130, 370, 60, 25, "Estimated time:");
165       ti_est_time->tooltip("Time estimated by the author.");
166       ti_est_time->box(FL_GTK_DOWN_BOX);
167       ti_est_time->deactivate();
168     } // Fl_Input* ti_est_time
169     { ti_needed_time = new Fl_Input(130, 400, 60, 25, "Needed time:");
170       ti_needed_time->tooltip("Time actually needed.");
171       ti_needed_time->box(FL_GTK_DOWN_BOX);
172       ti_needed_time->deactivate();
173     } // Fl_Input* ti_needed_time
174     { btn_save_author = new Fl_Button(25, 435, 165, 25, "Save Author");
175       btn_save_author->box(FL_GTK_UP_BOX);
176       btn_save_author->deactivate();
177     } // Fl_Button* btn_save_author
178     { btn_up_chpt = new Fl_Button(25, 270, 80, 25, "Up");
179       btn_up_chpt->tooltip("Move chapter up.");
180       btn_up_chpt->box(FL_GTK_UP_BOX);
181       btn_up_chpt->deactivate();
182     } // Fl_Button* btn_up_chpt
183     { btn_down_chpt = new Fl_Button(105, 270, 85, 25, "Down");
184       btn_down_chpt->tooltip("Move chapter down..");
185       btn_down_chpt->box(FL_GTK_UP_BOX);
186       btn_down_chpt->deactivate();
187     } // Fl_Button* btn_down_chpt
188     { ot_src_dir = new Fl_Output(140, 530, 280, 25, "Source Directory:");
189       ot_src_dir->tooltip("Directory containing Sourcecode.");
190       ot_src_dir->box(FL_GTK_DOWN_BOX);
191       ot_src_dir->deactivate();
192     } // Fl_Output* ot_src_dir
193     { ot_cov_sheet = new Fl_Output(140, 560, 280, 25, "Cover Sheet:");
194       ot_cov_sheet->tooltip("Cover sheet .pdf file.");
195       ot_cov_sheet->box(FL_GTK_DOWN_BOX);
196       ot_cov_sheet->deactivate();
197     } // Fl_Output* ot_cov_sheet
198     { menu_chapter = new Fl_Menu_Button(25, 50, 165, 220);
199       menu_chapter->box(FL_GTK_UP_BOX);
200       menu_chapter->deactivate();
201       menu_chapter->menu(menu_menu_chapter);
202     } // Fl_Menu_Button* menu_chapter
203     { menu_author = new Fl_Menu_Button(25, 295, 165, 165);
204       menu_author->box(FL_GTK_UP_BOX);
205       menu_author->deactivate();
206       menu_author->menu(menu_menu_author);
207     } // Fl_Menu_Button* menu_author
208     { ti_doc_name = new Fl_Input(140, 470, 200, 25, "Document name:");
209       ti_doc_name->box(FL_GTK_DOWN_BOX);
210       ti_doc_name->deactivate();
211     } // Fl_Input* ti_doc_name
212     { ti_department = new Fl_Input(140, 500, 200, 25, "Department:");
213       ti_department->box(FL_GTK_DOWN_BOX);
214       ti_department->deactivate();
215     } // Fl_Input* ti_department
216     { menu_department = new Fl_Menu_Button(60, 500, 280, 25);
217       menu_department->box(FL_GTK_UP_BOX);
218       menu_department->deactivate();
219       menu_department->menu(menu_menu_department);
220     } // Fl_Menu_Button* menu_department
221     win_doctool->size_range(585, 555);
222     win_doctool->end();
223   } // Fl_Double_Window* win_doctool
224   { win_chapt_add = new Fl_Double_Window(415, 125, "Add Chapter");
225     win_chapt_add->box(FL_GTK_DOWN_BOX);
226     win_chapt_add->user_data((void*)(this));
227     { add_chapt_chaptname = new Fl_Input(150, 15, 225, 25, "Chapter Name:");
228       add_chapt_chaptname->box(FL_GTK_DOWN_BOX);
229     } // Fl_Input* add_chapt_chaptname
230     { add_chapt_fname = new Fl_Input(150, 50, 225, 25, "Output Filename:");
231       add_chapt_fname->box(FL_GTK_DOWN_BOX);
232     } // Fl_Input* add_chapt_fname
233     { btn_chapt_insert = new Fl_Button(120, 85, 175, 30, "Insert Chapter");
234       btn_chapt_insert->box(FL_GTK_UP_BOX);
235     } // Fl_Button* btn_chapt_insert
236     win_chapt_add->end();
237   } // Fl_Double_Window* win_chapt_add
238   { win_settings = new Fl_Double_Window(350, 365, "Settings");
239     win_settings->box(FL_GTK_DOWN_BOX);
240     win_settings->user_data((void*)(this));
241     { btn_save_settings = new Fl_Button(220, 325, 90, 25, "Save");
242       btn_save_settings->tooltip("Save settings.");
243       btn_save_settings->box(FL_GTK_UP_BOX);
244     } // Fl_Button* btn_save_settings
245     { chb_gen_doxygen = new Fl_Check_Button(120, 70, 115, 25, "Generate Doxygen Chapter");
246       chb_gen_doxygen->tooltip("Add chapter containing doxygen source code documentation to the end of the do\
247 cument.");
248       chb_gen_doxygen->down_box(FL_GTK_DOWN_BOX);
249     } // Fl_Check_Button* chb_gen_doxygen
250     { chb_add_src = new Fl_Check_Button(120, 120, 115, 25, "Sourcecode Chapter");
251       chb_add_src->tooltip("Add chapter containing source code to the end of the document.");
252       chb_add_src->down_box(FL_GTK_DOWN_BOX);
253     } // Fl_Check_Button* chb_add_src
254     { chb_add_covpage = new Fl_Check_Button(120, 50, 25, 25, "Cover Sheet");
255       chb_add_covpage->tooltip("Add a coversheet to the document.");
256       chb_add_covpage->down_box(FL_GTK_DOWN_BOX);
257     } // Fl_Check_Button* chb_add_covpage
258     { ti_doxy_chapt_name = new Fl_Input(120, 95, 190, 25, "Chapter Name:");
259       ti_doxy_chapt_name->tooltip("Name of doxygen chapter.");
260       ti_doxy_chapt_name->box(FL_GTK_DOWN_BOX);
261     } // Fl_Input* ti_doxy_chapt_name
262     { ti_source_chapt_name = new Fl_Input(120, 140, 190, 25, "Chapter Name:");
263       ti_source_chapt_name->tooltip("Name of source code chapter.");
264       ti_source_chapt_name->box(FL_GTK_DOWN_BOX);
265     } // Fl_Input* ti_source_chapt_name
266     { ti_settings_subject_name = new Fl_Input(115, 290, 100, 25, "Subject Name:");
267       ti_settings_subject_name->tooltip("Name of the document Subject.");
268       ti_settings_subject_name->box(FL_GTK_DOWN_BOX);
269     } // Fl_Input* ti_settings_subject_name
270     { Fl_Box* o = new Fl_Box(0, 10, 350, 35, "Generation Settings");
271       o->tooltip("General generation settings used for document generation.");
272     } // Fl_Box* o
273     { ti_location = new Fl_Input(115, 325, 100, 25, "Location:");
274       ti_location->tooltip("Location of the Author.");
275       ti_location->box(FL_GTK_DOWN_BOX);
276     } // Fl_Input* ti_location
277     { ti_header_ext = new Fl_Input(115, 220, 70, 25, "Header:");
278       ti_header_ext->tooltip("Header file extension (most probably .h)");
279       ti_header_ext->box(FL_GTK_DOWN_BOX);
280     } // Fl_Input* ti_header_ext
281     { ti_src_ext = new Fl_Input(240, 220, 70, 25, "Source:");
282       ti_src_ext->tooltip("Source file extension (most probably .c/.cpp)");
283       ti_src_ext->box(FL_GTK_DOWN_BOX);
284     } // Fl_Input* ti_src_ext
285     { Fl_Box* o = new Fl_Box(0, 185, 350, 20, "File Extension Settings");
286       o->tooltip("Set file extension used by the C/C++ source files.");
287     } // Fl_Box* o
288     { Fl_Box* o = new Fl_Box(0, 250, 350, 35, "Document Settings");
289       o->tooltip("Document Settings.");
290     } // Fl_Box* o
291     win_settings->end();
292   } // Fl_Double_Window* win_settings
293   { win_auth_coord = new Fl_Double_Window(200, 190, "Author coordinates");
294     win_auth_coord->tooltip("Coordinates to enter author information on Cover Sheet.");
295     win_auth_coord->box(FL_GTK_DOWN_BOX);
296     win_auth_coord->user_data((void*)(this));
297     { btn_ok_author = new Fl_Button(50, 155, 105, 25, "Ok");
298       btn_ok_author->box(FL_GTK_UP_BOX);
299     } // Fl_Button* btn_ok_author
300     { vi_spenttime_x = new Fl_Value_Input(110, 85, 40, 25, "Time spent:");
301       vi_spenttime_x->box(FL_GTK_DOWN_BOX);
302     } // Fl_Value_Input* vi_spenttime_x
303     { vi_spenttime_y = new Fl_Value_Input(150, 85, 40, 25);
304       vi_spenttime_y->box(FL_GTK_DOWN_BOX);
305     } // Fl_Value_Input* vi_spenttime_y
306     { vi_authname_x = new Fl_Value_Input(110, 110, 40, 25, "Author name:");
307       vi_authname_x->box(FL_GTK_DOWN_BOX);
308     } // Fl_Value_Input* vi_authname_x
309     { vi_authname_y = new Fl_Value_Input(150, 110, 40, 25);
310       vi_authname_y->box(FL_GTK_DOWN_BOX);
311     } // Fl_Value_Input* vi_authname_y
312     { vi_esttime_x = new Fl_Value_Input(110, 60, 40, 25, "Time estimated:");
313       vi_esttime_x->box(FL_GTK_DOWN_BOX);
314     } // Fl_Value_Input* vi_esttime_x
315     { vi_esttime_y = new Fl_Value_Input(150, 60, 40, 25);
316       vi_esttime_y->box(FL_GTK_DOWN_BOX);
317     } // Fl_Value_Input* vi_esttime_y
318     { Fl_Box* o = new Fl_Box(20, 5, 175, 25, "Cover Sheet Coordinates");
319       o->tooltip("These coordinates are used to fill in the values in the cover page .pdf.");
320     } // Fl_Box* o
321     { new Fl_Box(110, 35, 40, 25, "X");
322     } // Fl_Box* o
323     { new Fl_Box(150, 35, 40, 25, "Y");
324     } // Fl_Box* o
325     win_auth_coord->end();
326   } // Fl_Double_Window* win_auth_coord
327   { win_depart_coord = new Fl_Double_Window(240, 130, "Department Coordinates");
328     win_depart_coord->box(FL_GTK_DOWN_BOX);
329     win_depart_coord->user_data((void*)(this));
330     { vi_depart_x = new Fl_Value_Input(125, 55, 40, 25, "Coordinates:");
331       vi_depart_x->box(FL_GTK_DOWN_BOX);
332     } // Fl_Value_Input* vi_depart_x
333     { vi_depart_y = new Fl_Value_Input(165, 55, 40, 25);
334       vi_depart_y->box(FL_GTK_DOWN_BOX);
335     } // Fl_Value_Input* vi_depart_y
336     { new Fl_Box(125, 35, 40, 25, "X");
337     } // Fl_Box* o
338     { new Fl_Box(165, 35, 40, 25, "Y");
339     } // Fl_Box* o
340     { btn_ok_depart = new Fl_Button(70, 95, 105, 25, "Ok");
341       btn_ok_depart->box(FL_GTK_UP_BOX);
342     } // Fl_Button* btn_ok_depart
343     { Fl_Box* o = new Fl_Box(30, 5, 175, 25, "Cover Sheet Coordinates");
344       o->tooltip("These coordinates are used to fill in the values in the cover page .pdf.");
345     } // Fl_Box* o
346     win_depart_coord->end();
347   } // Fl_Double_Window* win_depart_coord
348   { win_log_view = new Fl_Double_Window(460, 395, "Log");
349     win_log_view->user_data((void*)(this));
350     { td_log_view = new Fl_Text_Display(0, 5, 460, 390);
351     } // Fl_Text_Display* td_log_view
352     win_log_view->end();
353     win_log_view->resizable(win_log_view);
354   } // Fl_Double_Window* win_log_view
355 }