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(517, 30, 24, 24);
1034 o->tooltip("Help Browser");
1035 o->box(FL_THIN_UP_BOX);
1036 o->callback((Fl_Callback*)type_make_cb, (void*)("Fl_Help_View"));
1037 o->image(pixmap[35]);
1038 } // Fl_Button* o
1039 { Fl_Button* o = new Fl_Button(517, 55, 24, 24);
1040 o->tooltip("Progress");
1041 o->box(FL_THIN_UP_BOX);
1042 o->callback((Fl_Callback*)type_make_cb, (void*)("Fl_Progress"));
1043 o->image(pixmap[36]);
1044 } // Fl_Button* o
1045 o->end();
1046 } // Fl_Group* o
1047 widgetbin_panel->set_non_modal();
1048 widgetbin_panel->end();
1049 } // Fl_Window* widgetbin_panel
1050 return widgetbin_panel;
1051 }
1052
1053 Fl_Double_Window *sourceview_panel=(Fl_Double_Window *)0;
1054
1055 Fl_Tabs *sv_tab=(Fl_Tabs *)0;
1056
1057 CodeViewer *sv_source=(CodeViewer *)0;
1058
1059 CodeViewer *sv_header=(CodeViewer *)0;
1060
1061 Fl_Light_Button *sv_autorefresh=(Fl_Light_Button *)0;
1062
1063 Fl_Light_Button *sv_autoposition=(Fl_Light_Button *)0;
1064
make_sourceview()1065 Fl_Double_Window* make_sourceview() {
1066 { sourceview_panel = new Fl_Double_Window(520, 490, "Code View");
1067 sourceview_panel->callback((Fl_Callback*)toggle_sourceview_cb);
1068 sourceview_panel->align(Fl_Align(FL_ALIGN_CLIP|FL_ALIGN_INSIDE));
1069 { sv_tab = new Fl_Tabs(10, 10, 500, 440);
1070 sv_tab->selection_color((Fl_Color)4);
1071 sv_tab->labelcolor(FL_BACKGROUND2_COLOR);
1072 sv_tab->callback((Fl_Callback*)update_sourceview_position_cb);
1073 { Fl_Group* o = new Fl_Group(10, 35, 500, 415, "Source");
1074 o->labelsize(13);
1075 o->hide();
1076 { sv_source = new CodeViewer(20, 50, 480, 390);
1077 sv_source->box(FL_DOWN_FRAME);
1078 sv_source->color(FL_BACKGROUND2_COLOR);
1079 sv_source->selection_color(FL_SELECTION_COLOR);
1080 sv_source->labeltype(FL_NORMAL_LABEL);
1081 sv_source->labelfont(0);
1082 sv_source->labelsize(14);
1083 sv_source->labelcolor(FL_FOREGROUND_COLOR);
1084 sv_source->textfont(4);
1085 sv_source->textsize(11);
1086 sv_source->align(Fl_Align(FL_ALIGN_TOP));
1087 sv_source->when(FL_WHEN_RELEASE);
1088 Fl_Group::current()->resizable(sv_source);
1089 } // CodeViewer* sv_source
1090 o->end();
1091 Fl_Group::current()->resizable(o);
1092 } // Fl_Group* o
1093 { Fl_Group* o = new Fl_Group(10, 35, 500, 415, "Header");
1094 o->labelsize(13);
1095 { sv_header = new CodeViewer(20, 50, 480, 390);
1096 sv_header->box(FL_DOWN_FRAME);
1097 sv_header->color(FL_BACKGROUND2_COLOR);
1098 sv_header->selection_color(FL_SELECTION_COLOR);
1099 sv_header->labeltype(FL_NORMAL_LABEL);
1100 sv_header->labelfont(0);
1101 sv_header->labelsize(14);
1102 sv_header->labelcolor(FL_FOREGROUND_COLOR);
1103 sv_header->textfont(4);
1104 sv_header->textsize(11);
1105 sv_header->align(Fl_Align(FL_ALIGN_TOP));
1106 sv_header->when(FL_WHEN_RELEASE);
1107 Fl_Group::current()->resizable(sv_header);
1108 } // CodeViewer* sv_header
1109 o->end();
1110 } // Fl_Group* o
1111 sv_tab->end();
1112 Fl_Group::current()->resizable(sv_tab);
1113 } // Fl_Tabs* sv_tab
1114 { Fl_Group* o = new Fl_Group(10, 460, 500, 20);
1115 { Fl_Button* o = new Fl_Button(10, 460, 61, 20, "Refresh");
1116 o->labelsize(11);
1117 o->callback((Fl_Callback*)update_sourceview_cb);
1118 } // Fl_Button* o
1119 { Fl_Light_Button* o = sv_autorefresh = new Fl_Light_Button(76, 460, 91, 20, "Auto-Refresh");
1120 sv_autorefresh->labelsize(11);
1121 o->callback((Fl_Callback*)update_sourceview_cb);
1122 } // Fl_Light_Button* sv_autorefresh
1123 { sv_autoposition = new Fl_Light_Button(172, 460, 89, 20, "Auto-Position");
1124 sv_autoposition->labelsize(11);
1125 } // Fl_Light_Button* sv_autoposition
1126 { Fl_Button* o = new Fl_Button(460, 460, 50, 20, "Close");
1127 o->labelsize(11);
1128 o->callback((Fl_Callback*)toggle_sourceview_b_cb);
1129 } // Fl_Button* o
1130 { Fl_Box* o = new Fl_Box(265, 460, 190, 20);
1131 Fl_Group::current()->resizable(o);
1132 } // Fl_Box* o
1133 o->end();
1134 } // Fl_Group* o
1135 sourceview_panel->size_range(384, 120);
1136 sourceview_panel->end();
1137 } // Fl_Double_Window* sourceview_panel
1138 return sourceview_panel;
1139 }
1140
1141 //
1142 // End of "$Id: function_panel.cxx 8172 2011-01-03 08:28:38Z matt $".
1143 //
1144