1 //
2 // "$Id: function_panel.cxx 8172 2011-01-03 08:28:38Z matt $"
3 //
4 // Code dialogs for the Fast Light Tool Kit (FLTK).
5 //
6 // Copyright 1998-2010 by Bill Spitzak and others.
7 //
8 // This library is free software; you can redistribute it and/or
9 // modify it under the terms of the GNU Library General Public
10 // License as published by the Free Software Foundation; either
11 // version 2 of the License, or (at your option) any later version.
12 //
13 // This library is distributed in the hope that it will be useful,
14 // but WITHOUT ANY WARRANTY; without even the implied warranty of
15 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
16 // Library General Public License for more details.
17 //
18 // You should have received a copy of the GNU Library General Public
19 // License along with this library; if not, write to the Free Software
20 // Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
21 // USA.
22 //
23 // Please report all bugs and problems on the following page:
24 //
25 //     http://www.fltk.org/str.php
26 //
27 
28 // generated by Fast Light User Interface Designer (fluid) version 1.0300
29 
30 #include "function_panel.h"
31 #include <FL/Fl_Pixmap.H>
32 #include "Fl_Type.h"
33 #include "undo.h"
34 extern class Fl_Pixmap *pixmap[];
35 extern class Fl_Type *Fl_Type_make(const char*);
36 extern void select_only(Fl_Type*);
37 extern void exit_cb(Fl_Widget*, void*);
38 extern void toggle_widgetbin_cb(Fl_Widget*, void*);
39 
40 Fl_Double_Window *function_panel=(Fl_Double_Window *)0;
41 
42 Fl_Choice *f_public_member_choice=(Fl_Choice *)0;
43 
44 Fl_Menu_Item menu_f_public_member_choice[] = {
45  {"private", 0,  0, (void*)(0), 0, FL_NORMAL_LABEL, 0, 11, 0},
46  {"public", 0,  0, (void*)(1), 0, FL_NORMAL_LABEL, 0, 11, 0},
47  {"protected", 0,  0, (void*)(2), 0, FL_NORMAL_LABEL, 0, 11, 0},
48  {0,0,0,0,0,0,0,0,0}
49 };
50 
51 Fl_Choice *f_public_choice=(Fl_Choice *)0;
52 
53 Fl_Menu_Item menu_f_public_choice[] = {
54  {"local", 0,  0, (void*)(0), 0, FL_NORMAL_LABEL, 0, 11, 0},
55  {"global", 0,  0, (void*)(1), 0, FL_NORMAL_LABEL, 0, 11, 0},
56  {0,0,0,0,0,0,0,0,0}
57 };
58 
59 Fl_Light_Button *f_c_button=(Fl_Light_Button *)0;
60 
61 Fl_Input *f_name_input=(Fl_Input *)0;
62 
63 Fl_Input *f_return_type_input=(Fl_Input *)0;
64 
65 Fl_Return_Button *f_panel_ok=(Fl_Return_Button *)0;
66 
67 Fl_Button *f_panel_cancel=(Fl_Button *)0;
68 
69 Fl_Text_Editor *f_comment_input=(Fl_Text_Editor *)0;
70 
make_function_panel()71 Fl_Double_Window* make_function_panel() {
72   { function_panel = new Fl_Double_Window(343, 232, "Function/Method Properties");
73     { Fl_Group* o = new Fl_Group(10, 10, 270, 20);
74       { f_public_member_choice = new Fl_Choice(10, 10, 75, 20);
75         f_public_member_choice->tooltip("Change member access attribute.");
76         f_public_member_choice->down_box(FL_BORDER_BOX);
77         f_public_member_choice->labelsize(11);
78         f_public_member_choice->textsize(11);
79         f_public_member_choice->when(FL_WHEN_CHANGED);
80         f_public_member_choice->menu(menu_f_public_member_choice);
81       } // Fl_Choice* f_public_member_choice
82       { f_public_choice = new Fl_Choice(10, 10, 75, 20);
83         f_public_choice->tooltip("Change widget accessibility.");
84         f_public_choice->down_box(FL_BORDER_BOX);
85         f_public_choice->labelsize(11);
86         f_public_choice->textsize(11);
87         f_public_choice->when(FL_WHEN_CHANGED);
88         f_public_choice->menu(menu_f_public_choice);
89       } // Fl_Choice* f_public_choice
90       { f_c_button = new Fl_Light_Button(95, 10, 80, 20, "C declaration");
91         f_c_button->tooltip("Declare with a C interface instead of C++.");
92         f_c_button->labelsize(11);
93       } // Fl_Light_Button* f_c_button
94       { Fl_Box* o = new Fl_Box(235, 10, 45, 20);
95         Fl_Group::current()->resizable(o);
96       } // Fl_Box* o
97       o->end();
98     } // Fl_Group* o
99     { f_name_input = new Fl_Input(10, 50, 320, 20, "Name(args): (blank for main())");
100       f_name_input->tooltip("The name of the function or method.");
101       f_name_input->labelfont(1);
102       f_name_input->labelsize(11);
103       f_name_input->textfont(4);
104       f_name_input->textsize(11);
105       f_name_input->align(Fl_Align(FL_ALIGN_TOP_LEFT));
106       f_name_input->when(FL_WHEN_NEVER);
107     } // Fl_Input* f_name_input
108     { f_return_type_input = new Fl_Input(10, 90, 320, 20, "Return Type: (blank to return outermost widget)");
109       f_return_type_input->tooltip("The return type of the function or method.");
110       f_return_type_input->labelfont(1);
111       f_return_type_input->labelsize(11);
112       f_return_type_input->textfont(4);
113       f_return_type_input->textsize(11);
114       f_return_type_input->align(Fl_Align(FL_ALIGN_TOP_LEFT));
115       f_return_type_input->when(FL_WHEN_NEVER);
116     } // Fl_Input* f_return_type_input
117     { Fl_Group* o = new Fl_Group(10, 200, 320, 20);
118       { f_panel_ok = new Fl_Return_Button(220, 200, 50, 20, "OK");
119         f_panel_ok->tooltip("Apply the changes.");
120         f_panel_ok->labelsize(11);
121         f_panel_ok->window()->hotspot(f_panel_ok);
122       } // Fl_Return_Button* f_panel_ok
123       { f_panel_cancel = new Fl_Button(280, 200, 50, 20, "Cancel");
124         f_panel_cancel->tooltip("Cancel the changes.");
125         f_panel_cancel->shortcut(0xff1b);
126         f_panel_cancel->labelsize(11);
127       } // Fl_Button* f_panel_cancel
128       { Fl_Box* o = new Fl_Box(10, 200, 205, 20);
129         Fl_Group::current()->resizable(o);
130       } // Fl_Box* o
131       o->end();
132     } // Fl_Group* o
133     { f_comment_input = new Fl_Text_Editor(10, 125, 320, 65, "Comment:");
134       f_comment_input->tooltip("Function comment in Doxygen format");
135       f_comment_input->box(FL_DOWN_BOX);
136       f_comment_input->labelfont(1);
137       f_comment_input->labelsize(11);
138       f_comment_input->textfont(4);
139       f_comment_input->textsize(11);
140       f_comment_input->align(Fl_Align(FL_ALIGN_TOP_LEFT));
141       Fl_Group::current()->resizable(f_comment_input);
142       f_comment_input->buffer(new Fl_Text_Buffer());
143     } // Fl_Text_Editor* f_comment_input
144     function_panel->set_modal();
145     function_panel->end();
146   } // Fl_Double_Window* function_panel
147   return function_panel;
148 }
149 
150 Fl_Double_Window *code_panel=(Fl_Double_Window *)0;
151 
152 CodeEditor *code_input=(CodeEditor *)0;
153 
154 Fl_Return_Button *code_panel_ok=(Fl_Return_Button *)0;
155 
156 Fl_Button *code_panel_cancel=(Fl_Button *)0;
157 
make_code_panel()158 Fl_Double_Window* make_code_panel() {
159   { Fl_Double_Window* o = code_panel = new Fl_Double_Window(540, 180, "Code Properties");
160     code_panel->labelsize(11);
161     { CodeEditor* o = code_input = new CodeEditor(10, 10, 520, 130);
162       code_input->box(FL_DOWN_BOX);
163       code_input->color(FL_BACKGROUND2_COLOR);
164       code_input->selection_color(FL_SELECTION_COLOR);
165       code_input->labeltype(FL_NORMAL_LABEL);
166       code_input->labelfont(0);
167       code_input->labelsize(11);
168       code_input->labelcolor(FL_FOREGROUND_COLOR);
169       code_input->textfont(4);
170       code_input->textsize(11);
171       code_input->align(Fl_Align(FL_ALIGN_TOP));
172       code_input->when(FL_WHEN_RELEASE);
173       Fl_Group::current()->resizable(code_input);
174       o->when(FL_WHEN_ENTER_KEY_CHANGED|FL_WHEN_RELEASE);
175     } // CodeEditor* code_input
176     { Fl_Group* o = new Fl_Group(10, 150, 520, 20);
177       o->labelsize(11);
178       { code_panel_ok = new Fl_Return_Button(400, 150, 60, 20, "OK");
179         code_panel_ok->labelsize(11);
180         code_panel_ok->window()->hotspot(code_panel_ok);
181       } // Fl_Return_Button* code_panel_ok
182       { code_panel_cancel = new Fl_Button(470, 150, 60, 20, "Cancel");
183         code_panel_cancel->shortcut(0xff1b);
184         code_panel_cancel->labelsize(11);
185       } // Fl_Button* code_panel_cancel
186       { Fl_Box* o = new Fl_Box(10, 150, 380, 20);
187         o->labelsize(11);
188         Fl_Group::current()->resizable(o);
189       } // Fl_Box* o
190       o->end();
191     } // Fl_Group* o
192     o->size_range(200, 150);
193     code_panel->set_modal();
194     code_panel->end();
195   } // Fl_Double_Window* code_panel
196   return code_panel;
197 }
198 
199 Fl_Double_Window *codeblock_panel=(Fl_Double_Window *)0;
200 
201 Fl_Input *code_before_input=(Fl_Input *)0;
202 
203 Fl_Input *code_after_input=(Fl_Input *)0;
204 
205 Fl_Return_Button *codeblock_panel_ok=(Fl_Return_Button *)0;
206 
207 Fl_Button *codeblock_panel_cancel=(Fl_Button *)0;
208 
make_codeblock_panel()209 Fl_Double_Window* make_codeblock_panel() {
210   { Fl_Double_Window* o = codeblock_panel = new Fl_Double_Window(300, 115, "Code Block Properties");
211     codeblock_panel->labelsize(11);
212     { code_before_input = new Fl_Input(10, 15, 280, 20, "Conditional code block");
213       code_before_input->tooltip("#ifdef or similar conditional code block.");
214       code_before_input->labelsize(11);
215       code_before_input->textfont(4);
216       code_before_input->textsize(11);
217       code_before_input->align(Fl_Align(FL_ALIGN_TOP_LEFT));
218       code_before_input->when(FL_WHEN_NEVER);
219     } // Fl_Input* code_before_input
220     { code_after_input = new Fl_Input(10, 55, 280, 20, "\"{...child code...}\" is inserted here");
221       code_after_input->tooltip("#endif or similar conditional code block.");
222       code_after_input->labelsize(11);
223       code_after_input->textfont(4);
224       code_after_input->textsize(11);
225       code_after_input->align(Fl_Align(FL_ALIGN_TOP_LEFT));
226       code_after_input->when(FL_WHEN_NEVER);
227       Fl_Group::current()->resizable(code_after_input);
228     } // Fl_Input* code_after_input
229     { Fl_Group* o = new Fl_Group(10, 85, 280, 20);
230       { codeblock_panel_ok = new Fl_Return_Button(160, 85, 60, 20, "OK");
231         codeblock_panel_ok->labelsize(11);
232         codeblock_panel_ok->window()->hotspot(codeblock_panel_ok);
233       } // Fl_Return_Button* codeblock_panel_ok
234       { codeblock_panel_cancel = new Fl_Button(230, 85, 60, 20, "Cancel");
235         codeblock_panel_cancel->shortcut(0xff1b);
236         codeblock_panel_cancel->labelsize(11);
237       } // Fl_Button* codeblock_panel_cancel
238       { Fl_Box* o = new Fl_Box(10, 85, 140, 20);
239         Fl_Group::current()->resizable(o);
240       } // Fl_Box* o
241       o->end();
242     } // Fl_Group* o
243     o->size_range(o->w(), o->h(), Fl::w(), o->h());
244     codeblock_panel->set_modal();
245     codeblock_panel->end();
246   } // Fl_Double_Window* codeblock_panel
247   return codeblock_panel;
248 }
249 
250 Fl_Double_Window *declblock_panel=(Fl_Double_Window *)0;
251 
252 Fl_Choice *declblock_public_choice=(Fl_Choice *)0;
253 
254 Fl_Menu_Item menu_declblock_public_choice[] = {
255  {"in source code only", 0,  0, (void*)(0), 0, FL_NORMAL_LABEL, 0, 11, 0},
256  {"in header and source", 0,  0, (void*)(1), 0, FL_NORMAL_LABEL, 0, 11, 0},
257  {0,0,0,0,0,0,0,0,0}
258 };
259 
260 Fl_Light_Button *declblock_public_button_x=(Fl_Light_Button *)0;
261 
262 Fl_Input *decl_before_input=(Fl_Input *)0;
263 
264 Fl_Input *decl_after_input=(Fl_Input *)0;
265 
266 Fl_Return_Button *declblock_panel_ok=(Fl_Return_Button *)0;
267 
268 Fl_Button *declblock_panel_cancel=(Fl_Button *)0;
269 
make_declblock_panel()270 Fl_Double_Window* make_declblock_panel() {
271   { Fl_Double_Window* o = declblock_panel = new Fl_Double_Window(300, 135, "Declaration Block Properties");
272     declblock_panel->labelsize(11);
273     { Fl_Group* o = new Fl_Group(10, 10, 280, 20);
274       { declblock_public_choice = new Fl_Choice(10, 10, 140, 20);
275         declblock_public_choice->tooltip("Change widget accessibility.");
276         declblock_public_choice->down_box(FL_BORDER_BOX);
277         declblock_public_choice->labelsize(11);
278         declblock_public_choice->textsize(11);
279         declblock_public_choice->when(FL_WHEN_NEVER);
280         declblock_public_choice->menu(menu_declblock_public_choice);
281       } // Fl_Choice* declblock_public_choice
282       { declblock_public_button_x = new Fl_Light_Button(10, 10, 60, 20, "public");
283         declblock_public_button_x->tooltip("Make the declaration publicly accessible.");
284         declblock_public_button_x->labelsize(11);
285         declblock_public_button_x->when(FL_WHEN_NEVER);
286         declblock_public_button_x->hide();
287       } // Fl_Light_Button* declblock_public_button_x
288       { Fl_Box* o = new Fl_Box(155, 10, 135, 20);
289         Fl_Group::current()->resizable(o);
290       } // Fl_Box* o
291       o->end();
292     } // Fl_Group* o
293     { decl_before_input = new Fl_Input(10, 40, 280, 20);
294       decl_before_input->tooltip("#ifdef or similar conditional declaration block.");
295       decl_before_input->labelsize(11);
296       decl_before_input->textfont(4);
297       decl_before_input->textsize(11);
298       decl_before_input->align(Fl_Align(FL_ALIGN_TOP_LEFT));
299       decl_before_input->when(FL_WHEN_NEVER);
300       Fl_Group::current()->resizable(decl_before_input);
301     } // Fl_Input* decl_before_input
302     { decl_after_input = new Fl_Input(10, 75, 280, 20, "\"\\n...child code...\\n\" is inserted here");
303       decl_after_input->tooltip("#endif or similar declaration code block.");
304       decl_after_input->labelsize(11);
305       decl_after_input->textfont(4);
306       decl_after_input->textsize(11);
307       decl_after_input->align(Fl_Align(FL_ALIGN_TOP_LEFT));
308       decl_after_input->when(FL_WHEN_NEVER);
309     } // Fl_Input* decl_after_input
310     { Fl_Group* o = new Fl_Group(10, 105, 280, 20);
311       { declblock_panel_ok = new Fl_Return_Button(160, 105, 60, 20, "OK");
312         declblock_panel_ok->labelsize(11);
313         declblock_panel_ok->window()->hotspot(declblock_panel_ok);
314       } // Fl_Return_Button* declblock_panel_ok
315       { declblock_panel_cancel = new Fl_Button(230, 105, 60, 20, "Cancel");
316         declblock_panel_cancel->shortcut(0xff1b);
317         declblock_panel_cancel->labelsize(11);
318       } // Fl_Button* declblock_panel_cancel
319       { Fl_Box* o = new Fl_Box(10, 105, 140, 20);
320         Fl_Group::current()->resizable(o);
321       } // Fl_Box* o
322       o->end();
323     } // Fl_Group* o
324     o->size_range(o->w(), o->h(), Fl::w(), o->h());
325     declblock_panel->set_modal();
326     declblock_panel->end();
327   } // Fl_Double_Window* declblock_panel
328   return declblock_panel;
329 }
330 
331 Fl_Double_Window *decl_panel=(Fl_Double_Window *)0;
332 
333 Fl_Choice *decl_choice=(Fl_Choice *)0;
334 
335 Fl_Menu_Item menu_decl_choice[] = {
336  {"in source file only", 0,  0, 0, 0, FL_NORMAL_LABEL, 0, 11, 0},
337  {"in header file only", 0,  0, 0, 0, FL_NORMAL_LABEL, 0, 11, 0},
338  {"\"static\" in source file", 0,  0, 0, 0, FL_NORMAL_LABEL, 0, 11, 0},
339  {"in source and \"extern\" in header", 0,  0, 0, 0, FL_NORMAL_LABEL, 0, 11, 0},
340  {0,0,0,0,0,0,0,0,0}
341 };
342 
343 Fl_Choice *decl_class_choice=(Fl_Choice *)0;
344 
345 Fl_Menu_Item menu_decl_class_choice[] = {
346  {"private", 0,  0, 0, 0, FL_NORMAL_LABEL, 0, 11, 0},
347  {"public", 0,  0, 0, 0, FL_NORMAL_LABEL, 0, 11, 0},
348  {"protected", 0,  0, 0, 0, FL_NORMAL_LABEL, 0, 11, 0},
349  {0,0,0,0,0,0,0,0,0}
350 };
351 
352 Fl_Input *decl_input=(Fl_Input *)0;
353 
354 Fl_Return_Button *decl_panel_ok=(Fl_Return_Button *)0;
355 
356 Fl_Button *decl_panel_cancel=(Fl_Button *)0;
357 
358 Fl_Text_Editor *decl_comment_input=(Fl_Text_Editor *)0;
359 
make_decl_panel()360 Fl_Double_Window* make_decl_panel() {
361   { decl_panel = new Fl_Double_Window(343, 237, "Declaration Properties");
362     decl_panel->align(Fl_Align(FL_ALIGN_CLIP|FL_ALIGN_INSIDE));
363     { Fl_Group* o = new Fl_Group(10, 10, 270, 20);
364       { Fl_Box* o = new Fl_Box(200, 10, 80, 20);
365         Fl_Group::current()->resizable(o);
366       } // Fl_Box* o
367       { decl_choice = new Fl_Choice(10, 10, 185, 20);
368         decl_choice->down_box(FL_BORDER_BOX);
369         decl_choice->labelsize(11);
370         decl_choice->textsize(11);
371         decl_choice->menu(menu_decl_choice);
372       } // Fl_Choice* decl_choice
373       { decl_class_choice = new Fl_Choice(10, 10, 75, 20);
374         decl_class_choice->down_box(FL_BORDER_BOX);
375         decl_class_choice->labelsize(11);
376         decl_class_choice->textsize(11);
377         decl_class_choice->menu(menu_decl_class_choice);
378       } // Fl_Choice* decl_class_choice
379       o->end();
380     } // Fl_Group* o
381     { decl_input = new Fl_Input(10, 40, 320, 20, "This can be any declaration, like \"int x;\", an external symbol like \"exter\
382 n int foo();\", a #directive like \"#include <foo.h>\", a comment like \"//foo\
383 \" or \"/*foo*/\", or typedef like \"typedef char byte;\" or \"using std::list\
384 ;\".");
385       decl_input->tooltip("Declaration text.");
386       decl_input->labelsize(11);
387       decl_input->textfont(4);
388       decl_input->textsize(11);
389       decl_input->align(Fl_Align(134));
390       decl_input->when(FL_WHEN_NEVER);
391     } // Fl_Input* decl_input
392     { Fl_Group* o = new Fl_Group(10, 205, 320, 20);
393       { decl_panel_ok = new Fl_Return_Button(200, 205, 60, 20, "OK");
394         decl_panel_ok->labelsize(11);
395         decl_panel_ok->window()->hotspot(decl_panel_ok);
396       } // Fl_Return_Button* decl_panel_ok
397       { decl_panel_cancel = new Fl_Button(270, 205, 60, 20, "Cancel");
398         decl_panel_cancel->shortcut(0xff1b);
399         decl_panel_cancel->labelsize(11);
400       } // Fl_Button* decl_panel_cancel
401       { Fl_Box* o = new Fl_Box(10, 205, 185, 20);
402         Fl_Group::current()->resizable(o);
403       } // Fl_Box* o
404       o->end();
405     } // Fl_Group* o
406     { decl_comment_input = new Fl_Text_Editor(10, 130, 320, 65, "Comment:");
407       decl_comment_input->tooltip("Declaration comment in Doxygen format");
408       decl_comment_input->box(FL_DOWN_BOX);
409       decl_comment_input->labelfont(1);
410       decl_comment_input->labelsize(11);
411       decl_comment_input->textfont(4);
412       decl_comment_input->textsize(11);
413       decl_comment_input->align(Fl_Align(FL_ALIGN_TOP_LEFT));
414       Fl_Group::current()->resizable(decl_comment_input);
415       decl_comment_input->buffer(new Fl_Text_Buffer());
416     } // Fl_Text_Editor* decl_comment_input
417     decl_panel->size_range(343, 237);
418     decl_panel->end();
419   } // Fl_Double_Window* decl_panel
420   return decl_panel;
421 }
422 
423 Fl_Double_Window *data_panel=(Fl_Double_Window *)0;
424 
425 Fl_Choice *data_choice=(Fl_Choice *)0;
426 
427 Fl_Menu_Item menu_data_choice[] = {
428  {"in source file only", 0,  0, 0, 0, FL_NORMAL_LABEL, 0, 11, 0},
429  {"in header file only", 0,  0, 0, 16, FL_NORMAL_LABEL, 0, 11, 0},
430  {"\"static\" in source file", 0,  0, 0, 0, FL_NORMAL_LABEL, 0, 11, 0},
431  {"in source and \"extern\" in header", 0,  0, 0, 0, FL_NORMAL_LABEL, 0, 11, 0},
432  {0,0,0,0,0,0,0,0,0}
433 };
434 
435 Fl_Choice *data_class_choice=(Fl_Choice *)0;
436 
437 Fl_Menu_Item menu_data_class_choice[] = {
438  {"private", 0,  0, 0, 0, FL_NORMAL_LABEL, 0, 11, 0},
439  {"public", 0,  0, 0, 0, FL_NORMAL_LABEL, 0, 11, 0},
440  {"protected", 0,  0, 0, 0, FL_NORMAL_LABEL, 0, 11, 0},
441  {0,0,0,0,0,0,0,0,0}
442 };
443 
444 Fl_Input *data_input=(Fl_Input *)0;
445 
446 Fl_Input *data_filename=(Fl_Input *)0;
447 
448 Fl_Button *data_filebrowser=(Fl_Button *)0;
449 
450 Fl_Return_Button *data_panel_ok=(Fl_Return_Button *)0;
451 
452 Fl_Button *data_panel_cancel=(Fl_Button *)0;
453 
454 Fl_Text_Editor *data_comment_input=(Fl_Text_Editor *)0;
455 
make_data_panel()456 Fl_Double_Window* make_data_panel() {
457   { data_panel = new Fl_Double_Window(343, 237, "Binary Data Properties");
458     data_panel->align(Fl_Align(FL_ALIGN_CLIP|FL_ALIGN_INSIDE));
459     { Fl_Group* o = new Fl_Group(10, 10, 270, 20);
460       { Fl_Box* o = new Fl_Box(200, 10, 80, 20);
461         Fl_Group::current()->resizable(o);
462       } // Fl_Box* o
463       { data_choice = new Fl_Choice(10, 10, 185, 20);
464         data_choice->down_box(FL_BORDER_BOX);
465         data_choice->labelsize(11);
466         data_choice->textsize(11);
467         data_choice->menu(menu_data_choice);
468       } // Fl_Choice* data_choice
469       { data_class_choice = new Fl_Choice(10, 10, 75, 20);
470         data_class_choice->down_box(FL_BORDER_BOX);
471         data_class_choice->labelsize(11);
472         data_class_choice->textsize(11);
473         data_class_choice->menu(menu_data_class_choice);
474       } // Fl_Choice* data_class_choice
475       o->end();
476     } // Fl_Group* o
477     { data_input = new Fl_Input(10, 52, 320, 20, "Variable Name:");
478       data_input->tooltip("Binary Data variables are declared \"const unsigned char []\".");
479       data_input->labelfont(1);
480       data_input->labelsize(11);
481       data_input->textfont(4);
482       data_input->textsize(11);
483       data_input->align(Fl_Align(133));
484       data_input->when(FL_WHEN_NEVER);
485     } // Fl_Input* data_input
486     { data_filename = new Fl_Input(10, 90, 280, 20, "Filename:");
487       data_filename->tooltip("Name and path of binary file that will be included.");
488       data_filename->labelfont(1);
489       data_filename->labelsize(11);
490       data_filename->textfont(4);
491       data_filename->textsize(11);
492       data_filename->align(Fl_Align(133));
493       data_filename->when(FL_WHEN_NEVER);
494     } // Fl_Input* data_filename
495     { data_filebrowser = new Fl_Button(290, 90, 40, 20, "@fileopen");
496       data_filebrowser->labelcolor((Fl_Color)134);
497     } // Fl_Button* data_filebrowser
498     { Fl_Group* o = new Fl_Group(10, 205, 320, 20);
499       { data_panel_ok = new Fl_Return_Button(200, 205, 60, 20, "OK");
500         data_panel_ok->labelsize(11);
501         data_panel_ok->window()->hotspot(data_panel_ok);
502       } // Fl_Return_Button* data_panel_ok
503       { data_panel_cancel = new Fl_Button(270, 205, 60, 20, "Cancel");
504         data_panel_cancel->shortcut(0xff1b);
505         data_panel_cancel->labelsize(11);
506       } // Fl_Button* data_panel_cancel
507       { Fl_Box* o = new Fl_Box(10, 205, 185, 20);
508         Fl_Group::current()->resizable(o);
509       } // Fl_Box* o
510       o->end();
511     } // Fl_Group* o
512     { data_comment_input = new Fl_Text_Editor(10, 130, 320, 65, "Comment:");
513       data_comment_input->tooltip("Declaration comment in Doxygen format");
514       data_comment_input->box(FL_DOWN_BOX);
515       data_comment_input->labelfont(1);
516       data_comment_input->labelsize(11);
517       data_comment_input->textfont(4);
518       data_comment_input->textsize(11);
519       data_comment_input->align(Fl_Align(FL_ALIGN_TOP_LEFT));
520       Fl_Group::current()->resizable(data_comment_input);
521       data_comment_input->buffer(new Fl_Text_Buffer());
522     } // Fl_Text_Editor* data_comment_input
523     data_panel->size_range(343, 237);
524     data_panel->end();
525   } // Fl_Double_Window* data_panel
526   return data_panel;
527 }
528 
529 Fl_Double_Window *class_panel=(Fl_Double_Window *)0;
530 
531 Fl_Light_Button *c_public_button=(Fl_Light_Button *)0;
532 
533 Fl_Input *c_name_input=(Fl_Input *)0;
534 
535 Fl_Input *c_subclass_input=(Fl_Input *)0;
536 
537 Fl_Text_Editor *c_comment_input=(Fl_Text_Editor *)0;
538 
539 Fl_Return_Button *c_panel_ok=(Fl_Return_Button *)0;
540 
541 Fl_Button *c_panel_cancel=(Fl_Button *)0;
542 
make_class_panel()543 Fl_Double_Window* make_class_panel() {
544   { class_panel = new Fl_Double_Window(342, 196, "Class Properties");
545     class_panel->labelsize(11);
546     { Fl_Group* o = new Fl_Group(10, 10, 280, 20);
547       o->hide();
548       { c_public_button = new Fl_Light_Button(10, 10, 60, 20, "public");
549         c_public_button->tooltip("Make the class publicly accessible.");
550         c_public_button->labelsize(11);
551         c_public_button->when(FL_WHEN_NEVER);
552         c_public_button->hide();
553       } // Fl_Light_Button* c_public_button
554       { Fl_Box* o = new Fl_Box(80, 10, 210, 20);
555         Fl_Group::current()->resizable(o);
556       } // Fl_Box* o
557       o->end();
558     } // Fl_Group* o
559     { c_name_input = new Fl_Input(10, 20, 320, 20, "Name:");
560       c_name_input->tooltip("Name of class.");
561       c_name_input->labelfont(1);
562       c_name_input->labelsize(11);
563       c_name_input->textfont(4);
564       c_name_input->textsize(11);
565       c_name_input->align(Fl_Align(FL_ALIGN_TOP_LEFT));
566       c_name_input->when(FL_WHEN_NEVER);
567     } // Fl_Input* c_name_input
568     { c_subclass_input = new Fl_Input(10, 55, 320, 20, "Subclass of (text between : and {)");
569       c_subclass_input->tooltip("Name of subclass.");
570       c_subclass_input->labelfont(1);
571       c_subclass_input->labelsize(11);
572       c_subclass_input->textfont(4);
573       c_subclass_input->textsize(11);
574       c_subclass_input->align(Fl_Align(FL_ALIGN_TOP_LEFT));
575       c_subclass_input->when(FL_WHEN_NEVER);
576     } // Fl_Input* c_subclass_input
577     { c_comment_input = new Fl_Text_Editor(10, 90, 320, 65, "Comment:");
578       c_comment_input->tooltip("Class comment in Doxygen format");
579       c_comment_input->box(FL_DOWN_BOX);
580       c_comment_input->labelfont(1);
581       c_comment_input->labelsize(11);
582       c_comment_input->textfont(4);
583       c_comment_input->textsize(11);
584       c_comment_input->align(Fl_Align(FL_ALIGN_TOP_LEFT));
585       Fl_Group::current()->resizable(c_comment_input);
586       c_comment_input->buffer(new Fl_Text_Buffer());
587     } // Fl_Text_Editor* c_comment_input
588     { Fl_Group* o = new Fl_Group(10, 165, 320, 20);
589       { c_panel_ok = new Fl_Return_Button(200, 165, 60, 20, "OK");
590         c_panel_ok->labelsize(11);
591         c_panel_ok->window()->hotspot(c_panel_ok);
592       } // Fl_Return_Button* c_panel_ok
593       { c_panel_cancel = new Fl_Button(270, 165, 60, 20, "Cancel");
594         c_panel_cancel->shortcut(0xff1b);
595         c_panel_cancel->labelsize(11);
596       } // Fl_Button* c_panel_cancel
597       { Fl_Box* o = new Fl_Box(10, 165, 185, 20);
598         Fl_Group::current()->resizable(o);
599       } // Fl_Box* o
600       o->end();
601     } // Fl_Group* o
602     class_panel->set_modal();
603     class_panel->size_range(343, 188);
604     class_panel->end();
605   } // Fl_Double_Window* class_panel
606   return class_panel;
607 }
608 
609 Fl_Double_Window *comment_panel=(Fl_Double_Window *)0;
610 
611 CodeEditor *comment_input=(CodeEditor *)0;
612 
613 Fl_Return_Button *comment_panel_ok=(Fl_Return_Button *)0;
614 
615 Fl_Button *comment_panel_cancel=(Fl_Button *)0;
616 
617 Fl_Light_Button *comment_in_source=(Fl_Light_Button *)0;
618 
619 Fl_Light_Button *comment_in_header=(Fl_Light_Button *)0;
620 
621 Fl_Menu_Button *comment_predefined=(Fl_Menu_Button *)0;
622 
623 Fl_Button *comment_load=(Fl_Button *)0;
624 
make_comment_panel()625 Fl_Double_Window* make_comment_panel() {
626   { Fl_Double_Window* o = comment_panel = new Fl_Double_Window(550, 280, "Comment Properties");
627     comment_panel->labelsize(11);
628     { CodeEditor* o = comment_input = new CodeEditor(110, 10, 430, 230);
629       comment_input->box(FL_DOWN_BOX);
630       comment_input->color(FL_BACKGROUND2_COLOR);
631       comment_input->selection_color(FL_SELECTION_COLOR);
632       comment_input->labeltype(FL_NORMAL_LABEL);
633       comment_input->labelfont(0);
634       comment_input->labelsize(11);
635       comment_input->labelcolor(FL_FOREGROUND_COLOR);
636       comment_input->textfont(4);
637       comment_input->textsize(11);
638       comment_input->align(Fl_Align(FL_ALIGN_TOP));
639       comment_input->when(FL_WHEN_RELEASE);
640       Fl_Group::current()->resizable(comment_input);
641       o->when(FL_WHEN_ENTER_KEY_CHANGED|FL_WHEN_RELEASE);
642     } // CodeEditor* comment_input
643     { Fl_Group* o = new Fl_Group(110, 250, 430, 20);
644       o->labelsize(11);
645       { comment_panel_ok = new Fl_Return_Button(370, 250, 80, 20, "OK");
646         comment_panel_ok->labelsize(11);
647         comment_panel_ok->window()->hotspot(comment_panel_ok);
648       } // Fl_Return_Button* comment_panel_ok
649       { comment_panel_cancel = new Fl_Button(460, 250, 80, 20, "Cancel");
650         comment_panel_cancel->shortcut(0xff1b);
651         comment_panel_cancel->labelsize(11);
652       } // Fl_Button* comment_panel_cancel
653       { Fl_Box* o = new Fl_Box(110, 250, 250, 20);
654         o->labelsize(11);
655         Fl_Group::current()->resizable(o);
656       } // Fl_Box* o
657       o->end();
658     } // Fl_Group* o
659     { Fl_Group* o = new Fl_Group(10, 10, 90, 243);
660       o->labelsize(11);
661       { comment_in_source = new Fl_Light_Button(10, 10, 90, 20, "In Source");
662         comment_in_source->tooltip("Put the comment into the source (.cxx) file.");
663         comment_in_source->labelsize(11);
664         comment_in_source->when(FL_WHEN_NEVER);
665       } // Fl_Light_Button* comment_in_source
666       { comment_in_header = new Fl_Light_Button(10, 40, 90, 20, "In Header");
667         comment_in_header->tooltip("Put the comment into the header (.h) file.");
668         comment_in_header->labelsize(11);
669         comment_in_header->when(FL_WHEN_NEVER);
670       } // Fl_Light_Button* comment_in_header
671       { comment_predefined = new Fl_Menu_Button(10, 70, 90, 20, "Predefined");
672         comment_predefined->labelsize(11);
673         comment_predefined->textsize(11);
674       } // Fl_Menu_Button* comment_predefined
675       { comment_load = new Fl_Button(10, 100, 90, 20, "Import...");
676         comment_load->labelsize(11);
677       } // Fl_Button* comment_load
678       { Fl_Box* o = new Fl_Box(10, 132, 90, 121);
679         o->labelsize(11);
680         Fl_Group::current()->resizable(o);
681       } // Fl_Box* o
682       o->end();
683     } // Fl_Group* o
684     o->size_range(320, 180);
685     comment_panel->set_modal();
686     comment_panel->end();
687   } // Fl_Double_Window* comment_panel
688   return comment_panel;
689 }
690 
type_make_cb(Fl_Widget *,void * d)691 void type_make_cb(Fl_Widget*,void*d) {
692   undo_checkpoint();
693     Fl_Type *t = Fl_Type_make((char*)d);
694     if (t) {
695       select_only(t);
696       set_modflag(1);
697       t->open();
698     } else {
699       undo_current --;
700       undo_last --;
701     }
702 }
703 
704 Fl_Window *widgetbin_panel=(Fl_Window *)0;
705 
cb_widgetbin_panel(Fl_Window * o,void * v)706 static void cb_widgetbin_panel(Fl_Window* o, void* v) {
707   if (Fl::event()==FL_SHORTCUT && Fl::event_key()==FL_Escape)
708   exit_cb((Fl_Widget*)o, v);
709 else
710   toggle_widgetbin_cb((Fl_Widget*)o, v);
711 }
712 
make_widgetbin()713 Fl_Window* make_widgetbin() {
714   { widgetbin_panel = new Fl_Window(574, 85, "Widget Bin");
715     widgetbin_panel->callback((Fl_Callback*)cb_widgetbin_panel);
716     widgetbin_panel->align(Fl_Align(FL_ALIGN_CLIP|FL_ALIGN_INSIDE));
717     { Fl_Group* o = new Fl_Group(3, 3, 79, 79);
718       { Fl_Button* o = new Fl_Button(5, 5, 24, 24);
719         o->tooltip("Function");
720         o->box(FL_THIN_UP_BOX);
721         o->callback((Fl_Callback*)type_make_cb, (void*)("Function"));
722         o->image(pixmap[7]);
723       } // Fl_Button* o
724       { Fl_Button* o = new Fl_Button(30, 5, 24, 24);
725         o->tooltip("Class");
726         o->box(FL_THIN_UP_BOX);
727         o->callback((Fl_Callback*)type_make_cb, (void*)("Class"));
728         o->image(pixmap[12]);
729       } // Fl_Button* o
730       { Fl_Button* o = new Fl_Button(55, 5, 24, 24);
731         o->tooltip("Comment");
732         o->box(FL_THIN_UP_BOX);
733         o->callback((Fl_Callback*)type_make_cb, (void*)("comment"));
734         o->image(pixmap[46]);
735       } // Fl_Button* o
736       { Fl_Button* o = new Fl_Button(5, 30, 24, 24);
737         o->tooltip("Code");
738         o->box(FL_THIN_UP_BOX);
739         o->callback((Fl_Callback*)type_make_cb, (void*)("Code"));
740         o->image(pixmap[8]);
741       } // Fl_Button* o
742       { Fl_Button* o = new Fl_Button(30, 30, 24, 24);
743         o->tooltip("Code Block");
744         o->box(FL_THIN_UP_BOX);
745         o->callback((Fl_Callback*)type_make_cb, (void*)("CodeBlock"));
746         o->image(pixmap[9]);
747       } // Fl_Button* o
748       { Fl_Button* o = new Fl_Button(55, 30, 24, 24);
749         o->tooltip("Widget Class");
750         o->box(FL_THIN_UP_BOX);
751         o->callback((Fl_Callback*)type_make_cb, (void*)("widget_class"));
752         o->image(pixmap[48]);
753       } // Fl_Button* o
754       { Fl_Button* o = new Fl_Button(5, 55, 24, 24);
755         o->tooltip("Declaration");
756         o->box(FL_THIN_UP_BOX);
757         o->callback((Fl_Callback*)type_make_cb, (void*)("decl"));
758         o->image(pixmap[10]);
759       } // Fl_Button* o
760       { Fl_Button* o = new Fl_Button(30, 55, 24, 24);
761         o->tooltip("Declaration Block");
762         o->box(FL_THIN_UP_BOX);
763         o->callback((Fl_Callback*)type_make_cb, (void*)("declblock"));
764         o->image(pixmap[11]);
765       } // Fl_Button* o
766       { Fl_Button* o = new Fl_Button(55, 55, 24, 24);
767         o->tooltip("Binary Data");
768         o->box(FL_THIN_UP_BOX);
769         o->callback((Fl_Callback*)type_make_cb, (void*)("data"));
770         o->image(pixmap[49]);
771       } // Fl_Button* o
772       o->end();
773     } // Fl_Group* o
774     { Fl_Group* o = new Fl_Group(87, 3, 79, 79);
775       { Fl_Button* o = new Fl_Button(89, 5, 24, 24);
776         o->tooltip("Window");
777         o->box(FL_THIN_UP_BOX);
778         o->callback((Fl_Callback*)type_make_cb, (void*)("Fl_Window"));
779         o->image(pixmap[1]);
780       } // Fl_Button* o
781       { Fl_Button* o = new Fl_Button(114, 5, 24, 24);
782         o->tooltip("Group");
783         o->box(FL_THIN_UP_BOX);
784         o->callback((Fl_Callback*)type_make_cb, (void*)("Fl_Group"));
785         o->image(pixmap[6]);
786       } // Fl_Button* o
787       { Fl_Button* o = new Fl_Button(139, 5, 24, 24);
788         o->tooltip("Pack");
789         o->box(FL_THIN_UP_BOX);
790         o->callback((Fl_Callback*)type_make_cb, (void*)("Fl_Pack"));
791         o->image(pixmap[22]);
792       } // Fl_Button* o
793       { Fl_Button* o = new Fl_Button(89, 30, 24, 24);
794         o->tooltip("Tabs");
795         o->box(FL_THIN_UP_BOX);
796         o->callback((Fl_Callback*)type_make_cb, (void*)("Fl_Tabs"));
797         o->image(pixmap[13]);
798       } // Fl_Button* o
799       { Fl_Button* o = new Fl_Button(114, 30, 24, 24);
800         o->tooltip("Scroll");
801         o->box(FL_THIN_UP_BOX);
802         o->callback((Fl_Callback*)type_make_cb, (void*)("Fl_Scroll"));
803         o->image(pixmap[19]);
804       } // Fl_Button* o
805       { Fl_Button* o = new Fl_Button(139, 30, 24, 24);
806         o->tooltip("Table");
807         o->box(FL_THIN_UP_BOX);
808         o->callback((Fl_Callback*)type_make_cb, (void*)("Fl_Table"));
809         o->image(pixmap[51]);
810       } // Fl_Button* o
811       { Fl_Button* o = new Fl_Button(89, 55, 24, 24);
812         o->tooltip("Tile");
813         o->box(FL_THIN_UP_BOX);
814         o->callback((Fl_Callback*)type_make_cb, (void*)("Fl_Tile"));
815         o->image(pixmap[20]);
816       } // Fl_Button* o
817       { Fl_Button* o = new Fl_Button(114, 55, 24, 24);
818         o->tooltip("Wizard");
819         o->box(FL_THIN_UP_BOX);
820         o->callback((Fl_Callback*)type_make_cb, (void*)("Fl_Wizard"));
821         o->image(pixmap[21]);
822       } // Fl_Button* o
823       o->end();
824     } // Fl_Group* o
825     { Fl_Group* o = new Fl_Group(171, 3, 54, 79);
826       { Fl_Button* o = new Fl_Button(173, 5, 24, 24);
827         o->tooltip("Button");
828         o->box(FL_THIN_UP_BOX);
829         o->callback((Fl_Callback*)type_make_cb, (void*)("Fl_Button"));
830         o->image(pixmap[2]);
831       } // Fl_Button* o
832       { Fl_Button* o = new Fl_Button(198, 5, 24, 24);
833         o->tooltip("Return Button");
834         o->box(FL_THIN_UP_BOX);
835         o->callback((Fl_Callback*)type_make_cb, (void*)("Fl_Return_Button"));
836         o->image(pixmap[23]);
837       } // Fl_Button* o
838       { Fl_Button* o = new Fl_Button(173, 30, 24, 24);
839         o->tooltip("Light Button");
840         o->box(FL_THIN_UP_BOX);
841         o->callback((Fl_Callback*)type_make_cb, (void*)("Fl_Light_Button"));
842         o->image(pixmap[24]);
843       } // Fl_Button* o
844       { Fl_Button* o = new Fl_Button(198, 30, 24, 24);
845         o->tooltip("Repeat Button");
846         o->box(FL_THIN_UP_BOX);
847         o->callback((Fl_Callback*)type_make_cb, (void*)("Fl_Repeat_Button"));
848         o->image(pixmap[25]);
849       } // Fl_Button* o
850       { Fl_Button* o = new Fl_Button(173, 55, 24, 24);
851         o->tooltip("Check Button");
852         o->box(FL_THIN_UP_BOX);
853         o->callback((Fl_Callback*)type_make_cb, (void*)("Fl_Check_Button"));
854         o->image(pixmap[3]);
855       } // Fl_Button* o
856       { Fl_Button* o = new Fl_Button(198, 55, 24, 24);
857         o->tooltip("Round Button");
858         o->box(FL_THIN_UP_BOX);
859         o->callback((Fl_Callback*)type_make_cb, (void*)("Fl_Round_Button"));
860         o->image(pixmap[4]);
861       } // Fl_Button* o
862       o->end();
863     } // Fl_Group* o
864     { Fl_Group* o = new Fl_Group(230, 3, 104, 79);
865       { Fl_Button* o = new Fl_Button(232, 5, 24, 24);
866         o->tooltip("Slider");
867         o->box(FL_THIN_UP_BOX);
868         o->callback((Fl_Callback*)type_make_cb, (void*)("Fl_Slider"));
869         o->image(pixmap[37]);
870       } // Fl_Button* o
871       { Fl_Button* o = new Fl_Button(257, 5, 24, 24);
872         o->tooltip("Scroll Bar");
873         o->box(FL_THIN_UP_BOX);
874         o->callback((Fl_Callback*)type_make_cb, (void*)("Fl_Scrollbar"));
875         o->image(pixmap[38]);
876       } // Fl_Button* o
877       { Fl_Button* o = new Fl_Button(282, 5, 24, 24);
878         o->tooltip("Value Slider");
879         o->box(FL_THIN_UP_BOX);
880         o->callback((Fl_Callback*)type_make_cb, (void*)("Fl_Value_Slider"));
881         o->image(pixmap[39]);
882       } // Fl_Button* o
883       { Fl_Button* o = new Fl_Button(307, 5, 24, 24);
884         o->tooltip("Value Output");
885         o->box(FL_THIN_UP_BOX);
886         o->callback((Fl_Callback*)type_make_cb, (void*)("Fl_Value_Output"));
887         o->image(pixmap[45]);
888       } // Fl_Button* o
889       { Fl_Button* o = new Fl_Button(232, 30, 24, 24);
890         o->tooltip("Adjuster");
891         o->box(FL_THIN_UP_BOX);
892         o->callback((Fl_Callback*)type_make_cb, (void*)("Fl_Adjuster"));
893         o->image(pixmap[40]);
894       } // Fl_Button* o
895       { Fl_Button* o = new Fl_Button(257, 30, 24, 24);
896         o->tooltip("Counter");
897         o->box(FL_THIN_UP_BOX);
898         o->callback((Fl_Callback*)type_make_cb, (void*)("Fl_Counter"));
899         o->image(pixmap[41]);
900       } // Fl_Button* o
901       { Fl_Button* o = new Fl_Button(282, 30, 24, 24);
902         o->tooltip("Dial");
903         o->box(FL_THIN_UP_BOX);
904         o->callback((Fl_Callback*)type_make_cb, (void*)("Fl_Dial"));
905         o->image(pixmap[42]);
906       } // Fl_Button* o
907       { Fl_Button* o = new Fl_Button(232, 55, 24, 24);
908         o->tooltip("Roller");
909         o->box(FL_THIN_UP_BOX);
910         o->callback((Fl_Callback*)type_make_cb, (void*)("Fl_Roller"));
911         o->image(pixmap[43]);
912       } // Fl_Button* o
913       { Fl_Button* o = new Fl_Button(257, 55, 24, 24);
914         o->tooltip("Spinner");
915         o->box(FL_THIN_UP_BOX);
916         o->callback((Fl_Callback*)type_make_cb, (void*)("Fl_Spinner"));
917         o->image(pixmap[47]);
918       } // Fl_Button* o
919       { Fl_Button* o = new Fl_Button(282, 55, 24, 24);
920         o->tooltip("Value Input");
921         o->box(FL_THIN_UP_BOX);
922         o->callback((Fl_Callback*)type_make_cb, (void*)("Fl_Value_Input"));
923         o->image(pixmap[44]);
924       } // Fl_Button* o
925       o->end();
926     } // Fl_Group* o
927     { Fl_Group* o = new Fl_Group(339, 3, 54, 79);
928       { Fl_Button* o = new Fl_Button(341, 5, 24, 24);
929         o->tooltip("Input");
930         o->box(FL_THIN_UP_BOX);
931         o->callback((Fl_Callback*)type_make_cb, (void*)("Fl_Input"));
932         o->image(pixmap[14]);
933       } // Fl_Button* o
934       { Fl_Button* o = new Fl_Button(366, 5, 24, 24);
935         o->tooltip("Output");
936         o->box(FL_THIN_UP_BOX);
937         o->callback((Fl_Callback*)type_make_cb, (void*)("Fl_Output"));
938         o->image(pixmap[27]);
939       } // Fl_Button* o
940       { Fl_Button* o = new Fl_Button(341, 30, 24, 24);
941         o->tooltip("Text Edit");
942         o->box(FL_THIN_UP_BOX);
943         o->callback((Fl_Callback*)type_make_cb, (void*)("Fl_Text_Editor"));
944         o->image(pixmap[29]);
945       } // Fl_Button* o
946       { Fl_Button* o = new Fl_Button(366, 30, 24, 24);
947         o->tooltip("Text Display");
948         o->box(FL_THIN_UP_BOX);
949         o->callback((Fl_Callback*)type_make_cb, (void*)("Fl_Text_Display"));
950         o->image(pixmap[28]);
951       } // Fl_Button* o
952       { Fl_Button* o = new Fl_Button(341, 55, 24, 24);
953         o->tooltip("File Input");
954         o->box(FL_THIN_UP_BOX);
955         o->callback((Fl_Callback*)type_make_cb, (void*)("Fl_File_Input"));
956         o->image(pixmap[30]);
957       } // Fl_Button* o
958       o->end();
959     } // Fl_Group* o
960     { Fl_Group* o = new Fl_Group(398, 3, 54, 79);
961       { Fl_Button* o = new Fl_Button(400, 5, 24, 24);
962         o->tooltip("Menu Bar");
963         o->box(FL_THIN_UP_BOX);
964         o->callback((Fl_Callback*)type_make_cb, (void*)("Fl_Menu_Bar"));
965         o->image(pixmap[17]);
966       } // Fl_Button* o
967       { Fl_Button* o = new Fl_Button(425, 5, 24, 24);
968         o->tooltip("Input Choice");
969         o->box(FL_THIN_UP_BOX);
970         o->callback((Fl_Callback*)type_make_cb, (void*)("Fl_Input_Choice"));
971         o->image(pixmap[15]);
972       } // Fl_Button* o
973       { Fl_Button* o = new Fl_Button(400, 30, 24, 24);
974         o->tooltip("Menu Button");
975         o->box(FL_THIN_UP_BOX);
976         o->callback((Fl_Callback*)type_make_cb, (void*)("Fl_Menu_Button"));
977         o->image(pixmap[26]);
978       } // Fl_Button* o
979       { Fl_Button* o = new Fl_Button(425, 30, 24, 24);
980         o->tooltip("Menu Item");
981         o->box(FL_THIN_UP_BOX);
982         o->callback((Fl_Callback*)type_make_cb, (void*)("menuitem"));
983         o->image(pixmap[16]);
984       } // Fl_Button* o
985       { Fl_Button* o = new Fl_Button(400, 55, 24, 24);
986         o->tooltip("Choice");
987         o->box(FL_THIN_UP_BOX);
988         o->callback((Fl_Callback*)type_make_cb, (void*)("Fl_Choice"));
989         o->image(pixmap[15]);
990       } // Fl_Button* o
991       { Fl_Button* o = new Fl_Button(425, 55, 24, 24);
992         o->tooltip("Sub Menu");
993         o->box(FL_THIN_UP_BOX);
994         o->callback((Fl_Callback*)type_make_cb, (void*)("submenu"));
995         o->image(pixmap[18]);
996       } // Fl_Button* o
997       o->end();
998     } // Fl_Group* o
999     { Fl_Group* o = new Fl_Group(457, 3, 54, 79);
1000       { Fl_Button* o = new Fl_Button(459, 5, 24, 24);
1001         o->tooltip("Browser");
1002         o->box(FL_THIN_UP_BOX);
1003         o->callback((Fl_Callback*)type_make_cb, (void*)("Fl_Browser"));
1004         o->image(pixmap[31]);
1005       } // Fl_Button* o
1006       { Fl_Button* o = new Fl_Button(484, 5, 24, 24);
1007         o->tooltip("Tree");
1008         o->box(FL_THIN_UP_BOX);
1009         o->callback((Fl_Callback*)type_make_cb, (void*)("Fl_Tree"));
1010         o->image(pixmap[50]);
1011       } // Fl_Button* o
1012       { Fl_Button* o = new Fl_Button(459, 30, 24, 24);
1013         o->tooltip("Check Browser");
1014         o->box(FL_THIN_UP_BOX);
1015         o->callback((Fl_Callback*)type_make_cb, (void*)("Fl_Check_Browser"));
1016         o->image(pixmap[32]);
1017       } // Fl_Button* o
1018       { Fl_Button* o = new Fl_Button(459, 55, 24, 24);
1019         o->tooltip("File Browser");
1020         o->box(FL_THIN_UP_BOX);
1021         o->callback((Fl_Callback*)type_make_cb, (void*)("Fl_File_Browser"));
1022         o->image(pixmap[33]);
1023       } // Fl_Button* o
1024       o->end();
1025     } // Fl_Group* o
1026     { Fl_Group* o = new Fl_Group(515, 3, 55, 79);
1027       { Fl_Button* o = new Fl_Button(517, 5, 24, 24);
1028         o->tooltip("Box");
1029         o->box(FL_THIN_UP_BOX);
1030         o->callback((Fl_Callback*)type_make_cb, (void*)("Fl_Box"));
1031         o->image(pixmap[5]);
1032       } // Fl_Button* o
1033       { Fl_Button* o = new Fl_Button(542, 5, 24, 24);
1034         o->tooltip("Clock");
1035         o->box(FL_THIN_UP_BOX);
1036         o->callback((Fl_Callback*)type_make_cb, (void*)("Fl_Clock"));
1037         o->image(pixmap[34]);
1038       } // Fl_Button* o
1039       { Fl_Button* o = new Fl_Button(517, 30, 24, 24);
1040         o->tooltip("Help Browser");
1041         o->box(FL_THIN_UP_BOX);
1042         o->callback((Fl_Callback*)type_make_cb, (void*)("Fl_Help_View"));
1043         o->image(pixmap[35]);
1044       } // Fl_Button* o
1045       { Fl_Button* o = new Fl_Button(517, 55, 24, 24);
1046         o->tooltip("Progress");
1047         o->box(FL_THIN_UP_BOX);
1048         o->callback((Fl_Callback*)type_make_cb, (void*)("Fl_Progress"));
1049         o->image(pixmap[36]);
1050       } // Fl_Button* o
1051       o->end();
1052     } // Fl_Group* o
1053     widgetbin_panel->set_non_modal();
1054     widgetbin_panel->end();
1055   } // Fl_Window* widgetbin_panel
1056   return widgetbin_panel;
1057 }
1058 
1059 Fl_Double_Window *sourceview_panel=(Fl_Double_Window *)0;
1060 
1061 Fl_Tabs *sv_tab=(Fl_Tabs *)0;
1062 
1063 CodeViewer *sv_source=(CodeViewer *)0;
1064 
1065 CodeViewer *sv_header=(CodeViewer *)0;
1066 
1067 Fl_Light_Button *sv_autorefresh=(Fl_Light_Button *)0;
1068 
1069 Fl_Light_Button *sv_autoposition=(Fl_Light_Button *)0;
1070 
make_sourceview()1071 Fl_Double_Window* make_sourceview() {
1072   { sourceview_panel = new Fl_Double_Window(520, 490, "Code View");
1073     sourceview_panel->callback((Fl_Callback*)toggle_sourceview_cb);
1074     sourceview_panel->align(Fl_Align(FL_ALIGN_CLIP|FL_ALIGN_INSIDE));
1075     { sv_tab = new Fl_Tabs(10, 10, 500, 440);
1076       sv_tab->selection_color((Fl_Color)4);
1077       sv_tab->labelcolor(FL_BACKGROUND2_COLOR);
1078       sv_tab->callback((Fl_Callback*)update_sourceview_position_cb);
1079       { Fl_Group* o = new Fl_Group(10, 35, 500, 415, "Source");
1080         o->labelsize(13);
1081         o->hide();
1082         { sv_source = new CodeViewer(20, 50, 480, 390);
1083           sv_source->box(FL_DOWN_FRAME);
1084           sv_source->color(FL_BACKGROUND2_COLOR);
1085           sv_source->selection_color(FL_SELECTION_COLOR);
1086           sv_source->labeltype(FL_NORMAL_LABEL);
1087           sv_source->labelfont(0);
1088           sv_source->labelsize(14);
1089           sv_source->labelcolor(FL_FOREGROUND_COLOR);
1090           sv_source->textfont(4);
1091           sv_source->textsize(11);
1092           sv_source->align(Fl_Align(FL_ALIGN_TOP));
1093           sv_source->when(FL_WHEN_RELEASE);
1094           Fl_Group::current()->resizable(sv_source);
1095         } // CodeViewer* sv_source
1096         o->end();
1097         Fl_Group::current()->resizable(o);
1098       } // Fl_Group* o
1099       { Fl_Group* o = new Fl_Group(10, 35, 500, 415, "Header");
1100         o->labelsize(13);
1101         { sv_header = new CodeViewer(20, 50, 480, 390);
1102           sv_header->box(FL_DOWN_FRAME);
1103           sv_header->color(FL_BACKGROUND2_COLOR);
1104           sv_header->selection_color(FL_SELECTION_COLOR);
1105           sv_header->labeltype(FL_NORMAL_LABEL);
1106           sv_header->labelfont(0);
1107           sv_header->labelsize(14);
1108           sv_header->labelcolor(FL_FOREGROUND_COLOR);
1109           sv_header->textfont(4);
1110           sv_header->textsize(11);
1111           sv_header->align(Fl_Align(FL_ALIGN_TOP));
1112           sv_header->when(FL_WHEN_RELEASE);
1113           Fl_Group::current()->resizable(sv_header);
1114         } // CodeViewer* sv_header
1115         o->end();
1116       } // Fl_Group* o
1117       sv_tab->end();
1118       Fl_Group::current()->resizable(sv_tab);
1119     } // Fl_Tabs* sv_tab
1120     { Fl_Group* o = new Fl_Group(10, 460, 500, 20);
1121       { Fl_Button* o = new Fl_Button(10, 460, 61, 20, "Refresh");
1122         o->labelsize(11);
1123         o->callback((Fl_Callback*)update_sourceview_cb);
1124       } // Fl_Button* o
1125       { Fl_Light_Button* o = sv_autorefresh = new Fl_Light_Button(76, 460, 91, 20, "Auto-Refresh");
1126         sv_autorefresh->labelsize(11);
1127         o->callback((Fl_Callback*)update_sourceview_cb);
1128       } // Fl_Light_Button* sv_autorefresh
1129       { sv_autoposition = new Fl_Light_Button(172, 460, 89, 20, "Auto-Position");
1130         sv_autoposition->labelsize(11);
1131       } // Fl_Light_Button* sv_autoposition
1132       { Fl_Button* o = new Fl_Button(460, 460, 50, 20, "Close");
1133         o->labelsize(11);
1134         o->callback((Fl_Callback*)toggle_sourceview_b_cb);
1135       } // Fl_Button* o
1136       { Fl_Box* o = new Fl_Box(265, 460, 190, 20);
1137         Fl_Group::current()->resizable(o);
1138       } // Fl_Box* o
1139       o->end();
1140     } // Fl_Group* o
1141     sourceview_panel->size_range(384, 120);
1142     sourceview_panel->end();
1143   } // Fl_Double_Window* sourceview_panel
1144   return sourceview_panel;
1145 }
1146 
1147 //
1148 // End of "$Id: function_panel.cxx 8172 2011-01-03 08:28:38Z matt $".
1149 //
1150