diff options
| author | Matthias Melcher <fltk@matthiasm.com> | 2002-11-03 00:01:21 +0000 |
|---|---|---|
| committer | Matthias Melcher <fltk@matthiasm.com> | 2002-11-03 00:01:21 +0000 |
| commit | c3de2a22c058b26700cce7ebeb26ca20072dc50f (patch) | |
| tree | bcbd8e2be5c70d29fbd1d65028a3abac64c77310 | |
| parent | f3078e51e015215432c375ccd24a2d3c93342c52 (diff) | |
Replaced 'callback' and 'code' input in FLUID with Fl_Text_Editor.
Made widget pannel resize only text fields (which I see as the
logical way to do it. Opinions welcome).
Matthias
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@2822 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
| -rw-r--r-- | fluid/Fl_Function_Type.cxx | 9 | ||||
| -rw-r--r-- | fluid/Fl_Widget_Type.cxx | 19 | ||||
| -rw-r--r-- | fluid/alignment_panel.cxx | 23 | ||||
| -rw-r--r-- | fluid/alignment_panel.fl | 22 | ||||
| -rw-r--r-- | fluid/alignment_panel.h | 1 | ||||
| -rw-r--r-- | fluid/fluid.cxx | 35 | ||||
| -rw-r--r-- | fluid/function_panel.cxx | 17 | ||||
| -rw-r--r-- | fluid/function_panel.fl | 13 | ||||
| -rw-r--r-- | fluid/function_panel.h | 5 | ||||
| -rw-r--r-- | fluid/widget_panel.cxx | 778 | ||||
| -rw-r--r-- | fluid/widget_panel.fl | 881 | ||||
| -rw-r--r-- | fluid/widget_panel.h | 17 |
12 files changed, 1011 insertions, 809 deletions
diff --git a/fluid/Fl_Function_Type.cxx b/fluid/Fl_Function_Type.cxx index a049f7437..f24ab48df 100644 --- a/fluid/Fl_Function_Type.cxx +++ b/fluid/Fl_Function_Type.cxx @@ -1,5 +1,5 @@ // -// "$Id: Fl_Function_Type.cxx,v 1.15.2.16.2.8 2002/08/09 22:56:59 easysw Exp $" +// "$Id: Fl_Function_Type.cxx,v 1.15.2.16.2.9 2002/11/03 00:01:19 matthiaswm Exp $" // // C function type code for the Fast Light Tool Kit (FLTK). // @@ -325,7 +325,8 @@ Fl_Type *Fl_Code_Type::make() { void Fl_Code_Type::open() { if (!code_panel) make_code_panel(); - code_input->static_value(name()); + const char *text = name(); + code_input->buffer()->text( text ? text : "" ); code_panel->show(); const char* message = 0; for (;;) { // repeat as long as there are errors @@ -336,7 +337,7 @@ void Fl_Code_Type::open() { else if (w == code_panel_ok) break; else if (!w) Fl::wait(); } - const char*c = code_input->value(); + const char*c = code_input->buffer()->text(); message = c_check(c); if (message) continue; name(c); break; @@ -704,5 +705,5 @@ void Fl_Class_Type::write_code2() { } // -// End of "$Id: Fl_Function_Type.cxx,v 1.15.2.16.2.8 2002/08/09 22:56:59 easysw Exp $". +// End of "$Id: Fl_Function_Type.cxx,v 1.15.2.16.2.9 2002/11/03 00:01:19 matthiaswm Exp $". // diff --git a/fluid/Fl_Widget_Type.cxx b/fluid/Fl_Widget_Type.cxx index 971a76187..f0820ae10 100644 --- a/fluid/Fl_Widget_Type.cxx +++ b/fluid/Fl_Widget_Type.cxx @@ -1,5 +1,5 @@ // -// "$Id: Fl_Widget_Type.cxx,v 1.15.2.16.2.20 2002/11/01 14:17:36 easysw Exp $" +// "$Id: Fl_Widget_Type.cxx,v 1.15.2.16.2.21 2002/11/03 00:01:19 matthiaswm Exp $" // // Widget type code for the Fast Light Tool Kit (FLTK). // @@ -251,6 +251,8 @@ Fl_Type *sort(Fl_Type *parent) { #include "widget_panel.h" #include <FL/fl_show_colormap.H> +static Fl_Window *the_panel; + // All the callbacks use the argument to indicate whether to load or store. // This avoids the need for pointers to all the widgets, and keeps the // code localized in the callbacks. @@ -267,12 +269,12 @@ void name_cb(Fl_Input* o, void *v) { if (numselected != 1) { static char buf[16]; sprintf(buf,"(%d widgets)",numselected); - ((Fl_Window*)(o->parent()->parent()->parent()))->label(buf); + the_panel->label(buf); o->hide(); } else { o->static_value(current_widget->name()); o->show(); - ((Fl_Window*)(o->parent()->parent()->parent()))->label(current_widget->title()); + the_panel->label(current_widget->title()); } } else { if (numselected == 1) { @@ -939,11 +941,12 @@ void align_cb(Fl_Button* i, void *v) { //////////////////////////////////////////////////////////////// -void callback_cb(Fl_Input* i, void *v) { +void callback_cb(Fl_Text_Editor* i, void *v) { if (v == LOAD) { - i->static_value(current_widget->callback()); + const char *cbtext = current_widget->callback(); + i->buffer()->text( cbtext ? cbtext : "" ); } else { - const char *c = i->value(); + const char *c = i->buffer()->text(); const char *d = c_check(c); if (d) {fl_message("Error in callback: %s",d); haderror = 1; return;} for (Fl_Type *o = Fl_Type::first; o; o = o->next) if (o->selected) { @@ -1216,8 +1219,6 @@ void subtype_cb(Fl_Choice* i, void* v) { //////////////////////////////////////////////////////////////// -static Fl_Window *the_panel; - void propagate_load(Fl_Group* g, void* v) { if (v == LOAD) { Fl_Widget*const* a = g->array(); @@ -1970,5 +1971,5 @@ int Fl_Widget_Type::read_fdesign(const char* propname, const char* value) { } // -// End of "$Id: Fl_Widget_Type.cxx,v 1.15.2.16.2.20 2002/11/01 14:17:36 easysw Exp $". +// End of "$Id: Fl_Widget_Type.cxx,v 1.15.2.16.2.21 2002/11/03 00:01:19 matthiaswm Exp $". // diff --git a/fluid/alignment_panel.cxx b/fluid/alignment_panel.cxx index 3fb81e28b..352f531b7 100644 --- a/fluid/alignment_panel.cxx +++ b/fluid/alignment_panel.cxx @@ -136,12 +136,6 @@ static void cb_openlast_button(Fl_Check_Button*, void*) { fluid_prefs.set("open_previous_file", openlast_button->value()); } -Fl_Check_Button *openbin_button=(Fl_Check_Button *)0; - -static void cb_openbin_button(Fl_Check_Button*, void*) { - fluid_prefs.set("open_widget_bin", openbin_button->value()); -} - Fl_Check_Button *prevpos_button=(Fl_Check_Button *)0; static void cb_prevpos_button(Fl_Check_Button*, void*) { @@ -150,14 +144,14 @@ static void cb_prevpos_button(Fl_Check_Button*, void*) { Fl_Window* make_settings_window() { Fl_Window* w; - { Fl_Window* o = settings_window = new Fl_Window(255, 253, "GUI Settings"); + { Fl_Window* o = settings_window = new Fl_Window(255, 213, "GUI Settings"); w = o; - { Fl_Button* o = new Fl_Button(185, 215, 60, 25, "Close"); + { Fl_Button* o = new Fl_Button(185, 179, 60, 25, "Close"); o->tooltip("Close this dialog."); o->callback((Fl_Callback*)cb_Close1); } - { Fl_Tabs* o = new Fl_Tabs(10, 10, 235, 190); - { Fl_Group* o = new Fl_Group(10, 35, 235, 165, "GUI:"); + { Fl_Tabs* o = new Fl_Tabs(10, 10, 235, 158); + { Fl_Group* o = new Fl_Group(10, 35, 235, 133, "GUI:"); o->align(FL_ALIGN_TOP_LEFT); { Fl_Check_Button* o = tooltips_button = new Fl_Check_Button(20, 45, 215, 20, "Show Tooltips"); o->down_box(FL_DOWN_BOX); @@ -181,14 +175,7 @@ Fl_Window* make_settings_window() { fluid_prefs.get("open_previous_file", b, 0); openlast_button->value(b); } - { Fl_Check_Button* o = openbin_button = new Fl_Check_Button(20, 135, 215, 20, "Open Widget Bin on Startup"); - o->down_box(FL_DOWN_BOX); - o->callback((Fl_Callback*)cb_openbin_button); - int b; - fluid_prefs.get("open_widget_bin", b, 1); - openbin_button->value(b); - } - { Fl_Check_Button* o = prevpos_button = new Fl_Check_Button(20, 165, 215, 20, "Remember Window Positions"); + { Fl_Check_Button* o = prevpos_button = new Fl_Check_Button(20, 135, 215, 20, "Remember Window Positions"); o->down_box(FL_DOWN_BOX); o->callback((Fl_Callback*)cb_prevpos_button); int b; diff --git a/fluid/alignment_panel.fl b/fluid/alignment_panel.fl index 6c267433d..ed54272c0 100644 --- a/fluid/alignment_panel.fl +++ b/fluid/alignment_panel.fl @@ -101,19 +101,19 @@ Function {make_settings_window()} {open } { Fl_Window settings_window { label {GUI Settings} open - xywh {462 92 255 253} visible + xywh {340 243 255 213} visible } { Fl_Button {} { label Close - callback {settings_window->hide();} - tooltip {Close this dialog.} xywh {185 215 60 25} + callback {settings_window->hide();} selected + tooltip {Close this dialog.} xywh {185 179 60 25} } Fl_Tabs {} { - xywh {10 10 235 190} + xywh {10 10 235 158} } { Fl_Group {} { label {GUI:} - xywh {10 35 235 165} align 5 + xywh {10 35 235 133} align 5 } { Fl_Check_Button tooltips_button { label {Show Tooltips} @@ -141,18 +141,10 @@ fluid_prefs.set("show_tooltips", tooltips_button->value());} code1 {fluid_prefs.get("open_previous_file", b, 0);} code2 {openlast_button->value(b);} } - Fl_Check_Button openbin_button { - label {Open Widget Bin on Startup} - callback {fluid_prefs.set("open_widget_bin", openbin_button->value());} - xywh {20 135 215 20} down_box DOWN_BOX - code0 {int b;} - code1 {fluid_prefs.get("open_widget_bin", b, 1);} - code2 {openbin_button->value(b);} - } Fl_Check_Button prevpos_button { label {Remember Window Positions} - callback {fluid_prefs.set("prev_window_pos", prevpos_button->value());} selected - xywh {20 165 215 20} down_box DOWN_BOX + callback {fluid_prefs.set("prev_window_pos", prevpos_button->value());} + xywh {20 135 215 20} down_box DOWN_BOX code0 {int b;} code1 {fluid_prefs.get("prev_window_pos", b, 1);} code2 {prevpos_button->value(b);} diff --git a/fluid/alignment_panel.h b/fluid/alignment_panel.h index 0c610627a..74c497e08 100644 --- a/fluid/alignment_panel.h +++ b/fluid/alignment_panel.h @@ -36,7 +36,6 @@ extern Fl_Window *settings_window; extern Fl_Check_Button *tooltips_button; extern Fl_Check_Button *completion_button; extern Fl_Check_Button *openlast_button; -extern Fl_Check_Button *openbin_button; extern Fl_Check_Button *prevpos_button; Fl_Window* make_settings_window(); extern Fl_Window *shell_window; diff --git a/fluid/fluid.cxx b/fluid/fluid.cxx index b867b6b89..5e752a365 100644 --- a/fluid/fluid.cxx +++ b/fluid/fluid.cxx @@ -1,5 +1,5 @@ // -// "$Id: fluid.cxx,v 1.15.2.13.2.35 2002/11/01 00:32:05 easysw Exp $" +// "$Id: fluid.cxx,v 1.15.2.13.2.36 2002/11/03 00:01:20 matthiaswm Exp $" // // FLUID main entry for the Fast Light Tool Kit (FLTK). // @@ -112,17 +112,21 @@ void leave_source_dir() { in_source_dir = 0; } -void position_window(Fl_Window *w, const char *prefsName, int X, int Y, int W=0, int H=0 ) { +char position_window(Fl_Window *w, const char *prefsName, int Visible, int X, int Y, int W=0, int H=0 ) { Fl_Preferences pos(fluid_prefs, prefsName); - pos.get("x", X, X); - pos.get("y", Y, Y); - if ( W!=0 ) { - pos.get("w", W, W); - pos.get("h", H, H); - w->resize( X, Y, W, H ); + if (prevpos_button->value()) { + pos.get("x", X, X); + pos.get("y", Y, Y); + if ( W!=0 ) { + pos.get("w", W, W); + pos.get("h", H, H); + w->resize( X, Y, W, H ); + } + else + w->position( X, Y ); } - else - w->position( X, Y ); + pos.get("visible", Visible, Visible); + return Visible; } void save_position(Fl_Window *w, const char *prefsName) { @@ -131,6 +135,7 @@ void save_position(Fl_Window *w, const char *prefsName) { pos.set("y", w->y()); pos.set("w", w->w()); pos.set("h", w->h()); + pos.set("visible", w->shown() && w->visible() ); } Fl_Window *main_window; @@ -428,7 +433,7 @@ void manual_cb(Fl_Widget *, void *) { void toggle_widgetbin_cb(Fl_Widget *, void *) { if ( !widgetbin_panel ) { make_widgetbin(); - position_window(widgetbin_panel,"widgetbin_pos", 320, 30); + if (!position_window(widgetbin_panel,"widgetbin_pos", 1, 320, 30)) return; } if ( widgetbin_panel->visible() ) widgetbin_panel->hide(); @@ -817,11 +822,9 @@ int main(int argc,char **argv) { Fl::visual((Fl_Mode)(FL_DOUBLE|FL_INDEX)); Fl_File_Icon::load_system_icons(); main_window->callback(exit_cb); - if (prevpos_button->value()) - position_window(main_window,"main_window_pos", 10, 30, WINWIDTH, WINHEIGHT ); + position_window(main_window,"main_window_pos", 1, 10, 30, WINWIDTH, WINHEIGHT ); main_window->show(argc,argv); - if (openbin_button->value()) - toggle_widgetbin_cb(0,0); + toggle_widgetbin_cb(0,0); if (!c && openlast_button->value() && absolute_history[0][0]) { // Open previous file when no file specified... open_history_cb(0, absolute_history[0]); @@ -850,5 +853,5 @@ int main(int argc,char **argv) { } // -// End of "$Id: fluid.cxx,v 1.15.2.13.2.35 2002/11/01 00:32:05 easysw Exp $". +// End of "$Id: fluid.cxx,v 1.15.2.13.2.36 2002/11/03 00:01:20 matthiaswm Exp $". // diff --git a/fluid/function_panel.cxx b/fluid/function_panel.cxx index deed876aa..560580eb5 100644 --- a/fluid/function_panel.cxx +++ b/fluid/function_panel.cxx @@ -65,7 +65,7 @@ Fl_Window* make_function_panel() { Fl_Window *code_panel=(Fl_Window *)0; -Fl_Input *code_input=(Fl_Input *)0; +Fl_Text_Editor *code_input=(Fl_Text_Editor *)0; Fl_Return_Button *code_panel_ok=(Fl_Return_Button *)0; @@ -75,13 +75,14 @@ Fl_Window* make_code_panel() { Fl_Window* w; { Fl_Window* o = code_panel = new Fl_Window(548, 175, "code"); w = o; - { Fl_Input* o = code_input = new Fl_Input(10, 10, 525, 120); - o->tooltip("C/C++ code."); - o->type(4); - o->labelsize(12); - o->textfont(4); - o->align(FL_ALIGN_CENTER); - o->when(FL_WHEN_NEVER); + { Fl_Group* o = new Fl_Group(10, 10, 525, 120); + o->box(FL_DOWN_FRAME); + { Fl_Text_Editor* o = code_input = new Fl_Text_Editor(12, 12, 521, 116); + o->box(FL_NO_BOX); + Fl_Group::current()->resizable(o); + o->buffer(new Fl_Text_Buffer); + } + o->end(); Fl_Group::current()->resizable(o); } { Fl_Return_Button* o = code_panel_ok = new Fl_Return_Button(370, 140, 80, 25, "OK"); diff --git a/fluid/function_panel.fl b/fluid/function_panel.fl index 5374fc585..19f620641 100644 --- a/fluid/function_panel.fl +++ b/fluid/function_panel.fl @@ -49,10 +49,15 @@ Function {make_code_panel()} {open } { Fl_Window code_panel { label code open - xywh {260 242 548 175} resizable modal visible + xywh {327 261 548 175} resizable modal visible } { - Fl_Input code_input { - tooltip {C/C++ code.} xywh {10 10 525 120} type Multiline labelsize 12 align 0 when 0 textfont 4 resizable + Fl_Group {} {open + xywh {10 10 525 120} box DOWN_FRAME resizable + } { + Fl_Text_Editor code_input {selected + xywh {12 12 521 116} box NO_BOX resizable + code0 {o->buffer(new Fl_Text_Buffer);} + } } Fl_Return_Button code_panel_ok { label OK @@ -471,7 +476,7 @@ Function {make_widgetbin()} {open } Fl_Button {} { user_data {"Fl_Help_View"} - callback type_make_cb selected + callback type_make_cb tooltip {Help Browser} xywh {392 28 24 24} box THIN_UP_BOX code0 {o->image(pixmap[35]);} } diff --git a/fluid/function_panel.h b/fluid/function_panel.h index 8758d4626..51b60805c 100644 --- a/fluid/function_panel.h +++ b/fluid/function_panel.h @@ -17,7 +17,9 @@ extern Fl_Return_Button *f_panel_ok; extern Fl_Button *f_panel_cancel; Fl_Window* make_function_panel(); extern Fl_Window *code_panel; -extern Fl_Input *code_input; +#include <FL/Fl_Group.H> +#include <FL/Fl_Text_Editor.H> +extern Fl_Text_Editor *code_input; extern Fl_Return_Button *code_panel_ok; extern Fl_Button *code_panel_cancel; Fl_Window* make_code_panel(); @@ -50,7 +52,6 @@ Fl_Window* make_class_panel(); void type_make_cb(Fl_Widget*w,void*d); #include <FL/Fl_Double_Window.H> extern Fl_Double_Window *widgetbin_panel; -#include <FL/Fl_Group.H> extern void type_make_cb(Fl_Button*, void*); Fl_Double_Window* make_widgetbin(); #endif diff --git a/fluid/widget_panel.cxx b/fluid/widget_panel.cxx index 8edac758f..ae1b4efd6 100644 --- a/fluid/widget_panel.cxx +++ b/fluid/widget_panel.cxx @@ -1,4 +1,4 @@ -// generated by Fast Light User Interface Designer (fluid) version 1.0100 +// generated by Fast Light User Interface Designer (fluid) version 1.0102 #include "widget_panel.h" @@ -8,9 +8,9 @@ static void cb_(Fl_Tabs* o, void* v) { Fl_Input *v_input[4]={(Fl_Input *)0}; -Fl_Window* make_widget_panel() { - Fl_Window* w; - { Fl_Window* o = new Fl_Window(415, 370); +Fl_Double_Window* make_widget_panel() { + Fl_Double_Window* w; + { Fl_Double_Window* o = new Fl_Double_Window(415, 370); w = o; w->hotspot(o); { Fl_Tabs* o = new Fl_Tabs(10, 10, 395, 315); @@ -19,293 +19,364 @@ Fl_Window* make_widget_panel() { { Fl_Group* o = new Fl_Group(10, 30, 395, 295, "GUI"); o->callback((Fl_Callback*)propagate_load); o->when(FL_WHEN_NEVER); - { Fl_Input* o = new Fl_Input(95, 40, 195, 20, "Label:"); - o->tooltip("The label text for the widget."); - o->callback((Fl_Callback*)label_cb); - o->when(FL_WHEN_CHANGED); - } - { Fl_Choice* o = new Fl_Choice(290, 40, 105, 20); - o->tooltip("The label style for the widget."); - o->box(FL_THIN_UP_BOX); - o->down_box(FL_BORDER_BOX); - o->callback((Fl_Callback*)labeltype_cb); - o->menu(labeltypemenu); - } - { Fl_Input* o = new Fl_Input(95, 65, 195, 20, "Image:"); - o->tooltip("The active image for the widget."); - o->callback((Fl_Callback*)image_cb); - } - { Fl_Button* o = new Fl_Button(290, 65, 105, 20, "Browse..."); - o->tooltip("Click to choose the active image."); - o->callback((Fl_Callback*)image_browse_cb); - } - { Fl_Input* o = new Fl_Input(95, 90, 195, 20, "Inactive:"); - o->tooltip("The inactive image for the widget."); - o->callback((Fl_Callback*)inactive_cb); - } - { Fl_Button* o = new Fl_Button(290, 90, 105, 20, "Browse..."); - o->tooltip("Click to choose the inactive image."); - o->callback((Fl_Callback*)inactive_browse_cb); - } - { Fl_Value_Input* o = new Fl_Value_Input(95, 150, 60, 20, "X:"); - o->tooltip("The X position of the widget."); - o->labelsize(10); - o->maximum(2048); - o->step(1); - o->callback((Fl_Callback*)x_cb); - o->align(FL_ALIGN_TOP_LEFT); - } - { Fl_Value_Input* o = new Fl_Value_Input(155, 150, 60, 20, "Y:"); - o->tooltip("The Y position of the widget."); - o->labelsize(10); - o->maximum(2048); - o->step(1); - o->callback((Fl_Callback*)y_cb); - o->align(FL_ALIGN_TOP_LEFT); - } - { Fl_Value_Input* o = new Fl_Value_Input(215, 150, 60, 20, "Width:"); - o->tooltip("The width of the widget."); - o->labelsize(10); - o->maximum(2048); - o->step(1); - o->callback((Fl_Callback*)w_cb); - o->align(FL_ALIGN_TOP_LEFT); - } - { Fl_Value_Input* o = new Fl_Value_Input(275, 150, 60, 20, "Height:"); - o->tooltip("The height of the widget."); - o->labelsize(10); - o->maximum(2048); - o->step(1); - o->callback((Fl_Callback*)h_cb); - o->align(FL_ALIGN_TOP_LEFT); - } - { Fl_Group* o = new Fl_Group(95, 115, 300, 20, "Alignment:"); + { Fl_Group* o = new Fl_Group(95, 40, 301, 280); o->callback((Fl_Callback*)propagate_load); - o->align(FL_ALIGN_LEFT); - { Fl_Button* o = new Fl_Button(95, 115, 40, 20, "clip"); - o->tooltip("Clip the label to the inside of the widget."); - o->type(1); - o->labelsize(8); - o->callback((Fl_Callback*)align_cb, (void*)(FL_ALIGN_CLIP)); + { Fl_Group* o = new Fl_Group(95, 40, 300, 20); + o->callback((Fl_Callback*)propagate_load); + { Fl_Input* o = new Fl_Input(95, 40, 195, 20, "Label:"); + o->tooltip("The label text for the widget."); + o->callback((Fl_Callback*)label_cb); + o->when(FL_WHEN_CHANGED); + Fl_Group::current()->resizable(o); + } + { Fl_Choice* o = new Fl_Choice(290, 40, 105, 20); + o->tooltip("The label style for the widget."); + o->box(FL_THIN_UP_BOX); + o->down_box(FL_BORDER_BOX); + o->callback((Fl_Callback*)labeltype_cb); + o->menu(labeltypemenu); + } + o->end(); } - { Fl_Button* o = new Fl_Button(135, 115, 40, 20, "wrap"); - o->tooltip("Wrap the label text."); - o->type(1); - o->labelsize(8); - o->callback((Fl_Callback*)align_cb, (void*)(FL_ALIGN_WRAP)); + { Fl_Group* o = new Fl_Group(95, 65, 300, 20); + o->callback((Fl_Callback*)propagate_load); + { Fl_Input* o = new Fl_Input(95, 65, 195, 20, "Image:"); + o->tooltip("The active image for the widget."); + o->callback((Fl_Callback*)image_cb); + Fl_Group::current()->resizable(o); + } + { Fl_Button* o = new Fl_Button(290, 65, 105, 20, "Browse..."); + o->tooltip("Click to choose the active image."); + o->callback((Fl_Callback*)image_browse_cb); + } + o->end(); } - { Fl_Button* o = new Fl_Button(175, 115, 55, 20, "text\nimage"); - o->tooltip("Show the label text over the image."); - o->type(1); - o->labelsize(8); - o->callback((Fl_Callback*)align_cb, (void*)(FL_ALIGN_TEXT_OVER_IMAGE)); + { Fl_Group* o = new Fl_Group(95, 90, 300, 20); + o->callback((Fl_Callback*)propagate_load); + { Fl_Input* o = new Fl_Input(95, 90, 195, 20, "Inactive:"); + o->tooltip("The inactive image for the widget."); + o->callback((Fl_Callback*)inactive_cb); + Fl_Group::current()->resizable(o); + } + { Fl_Button* o = new Fl_Button(290, 90, 105, 20, "Browse..."); + o->tooltip("Click to choose the inactive image."); + o->callback((Fl_Callback*)inactive_browse_cb); + } + o->end(); } - { Fl_Button* o = new Fl_Button(295, 115, 20, 20, "@-1<-"); - o->tooltip("Left-align the label."); - o->type(1); - o->labelcolor(8); - o->callback((Fl_Callback*)align_cb, (void*)(FL_ALIGN_LEFT)); - } - { Fl_Button* o = new Fl_Button(315, 115, 20, 20, "@-1->"); - o->tooltip("Right-align the label."); - o->type(1); - o->labelcolor(8); - o->callback((Fl_Callback*)align_cb, (void*)(FL_ALIGN_RIGHT)); - } - { Fl_Button* o = new Fl_Button(335, 115, 20, 20, "@-18"); - o->tooltip("Top-align the label."); - o->type(1); - o->labelcolor(8); - o->callback((Fl_Callback*)align_cb, (void*)(FL_ALIGN_TOP)); - } - { Fl_Button* o = new Fl_Button(355, 115, 20, 20, "@-12"); - o->tooltip("Bottom-align the label."); - o->type(1); - o->labelcolor(8); - o->callback((Fl_Callback*)align_cb, (void*)(FL_ALIGN_BOTTOM)); + { Fl_Value_Input* o = new Fl_Value_Input(95, 150, 60, 20, "X:"); + o->tooltip("The X position of the widget."); + o->labelsize(10); + o->maximum(2048); + o->step(1); + o->callback((Fl_Callback*)x_cb); + o->align(FL_ALIGN_TOP_LEFT); } - { Fl_Button* o = new Fl_Button(375, 115, 20, 20, "@-3square"); - o->tooltip("Show the label inside the widget."); - o->type(1); - o->labelcolor(8); - o->callback((Fl_Callback*)align_cb, (void*)(FL_ALIGN_INSIDE)); + { Fl_Value_Input* o = new Fl_Value_Input(155, 150, 60, 20, "Y:"); + o->tooltip("The Y position of the widget."); + o->labelsize(10); + o->maximum(2048); + o->step(1); + o->callback((Fl_Callback*)y_cb); + o->align(FL_ALIGN_TOP_LEFT); } - o->end(); - } - { Fl_Box* o = new Fl_Box(20, 150, 75, 20, "Position:"); - o->align(FL_ALIGN_RIGHT|FL_ALIGN_INSIDE); - } - { Fl_Box* o = new Fl_Box(20, 185, 75, 20, "Values:"); - o->align(FL_ALIGN_RIGHT|FL_ALIGN_INSIDE); - } - { Fl_Value_Input* o = new Fl_Value_Input(95, 185, 60, 20, "Size:"); - o->tooltip("The size of the slider."); - o->labelsize(10); - o->step(0.010101); - o->callback((Fl_Callback*)slider_size_cb); - o->align(FL_ALIGN_TOP_LEFT); - } - { Fl_Value_Input* o = new Fl_Value_Input(155, 185, 60, 20, "Minimum:"); - o->tooltip("The minimum value of the widget."); - o->labelsize(10); - o->callback((Fl_Callback*)min_cb); - o->align(FL_ALIGN_TOP_LEFT); - } - { Fl_Value_Input* o = new Fl_Value_Input(215, 185, 60, 20, "Maximum:"); - o->tooltip("The maximum value of the widget."); - o->labelsize(10); - o->value(1); - o->callback((Fl_Callback*)max_cb); - o->align(FL_ALIGN_TOP_LEFT); - } - { Fl_Value_Input* o = new Fl_Value_Input(275, 185, 60, 20, "Step:"); - o->tooltip("The resolution of the widget value."); - o->labelsize(10); - o->callback((Fl_Callback*)step_cb); - o->align(FL_ALIGN_TOP_LEFT); - } - { Fl_Value_Input* o = new Fl_Value_Input(335, 185, 60, 20, "Value:"); - o->tooltip("The current widget value."); - o->labelsize(10); - o->callback((Fl_Callback*)value_cb); - o->align(FL_ALIGN_TOP_LEFT); - } - { Shortcut_Button* o = new Shortcut_Button(95, 210, 300, 20, "Shortcut:"); - o->tooltip("The shortcut key for the widget."); - o->box(FL_DOWN_BOX); - o->color(7); - o->selection_color(7); - o->callback((Fl_Callback*)shortcut_in_cb); - o->align(FL_ALIGN_LEFT); - } - { Fl_Group* o = new Fl_Group(20, 235, 375, 45); - o->callback((Fl_Callback*)propagate_load); - o->align(FL_ALIGN_LEFT); - { Fl_Light_Button* o = new Fl_Light_Button(210, 235, 60, 20, "Border"); - o->tooltip("Add a border around the window."); - o->selection_color(1); + { Fl_Value_Input* o = new Fl_Value_Input(215, 150, 60, 20, "Width:"); + o->tooltip("The width of the widget."); o->labelsize(10); - o->callback((Fl_Callback*)border_cb); + o->maximum(2048); + o->step(1); + o->callback((Fl_Callback*)w_cb); + o->align(FL_ALIGN_TOP_LEFT); } - { Fl_Light_Button* o = new Fl_Light_Button(270, 235, 55, 20, "Modal"); - o->tooltip("Make the window modal."); - o->selection_color(1); + { Fl_Value_Input* o = new Fl_Value_Input(275, 150, 60, 20, "Height:"); + o->tooltip("The height of the widget."); o->labelsize(10); - o->callback((Fl_Callback*)modal_cb); + o->maximum(2048); + o->step(1); + o->callback((Fl_Callback*)h_cb); + o->align(FL_ALIGN_TOP_LEFT); } - { Fl_Light_Button* o = new Fl_Light_Button(325, 235, 70, 20, "Nonmodal"); - o->tooltip("Make the window non-modal."); - o->selection_color(1); - o->labelsize(9); - o->callback((Fl_Callback*)non_modal_cb); - o->align(132|FL_ALIGN_INSIDE); + { Fl_Group* o = new Fl_Group(95, 115, 300, 21, "Alignment:"); + o->callback((Fl_Callback*)propagate_load); + o->align(FL_ALIGN_LEFT); + { Fl_Button* o = new Fl_Button(95, 115, 40, 20, "clip"); + o->tooltip("Clip the label to the inside of the widget."); + o->type(1); + o->labelsize(8); + o->callback((Fl_Callback*)align_cb, (void*)(FL_ALIGN_CLIP)); + } + { Fl_Button* o = new Fl_Button(135, 115, 40, 20, "wrap"); + o->tooltip("Wrap the label text."); + o->type(1); + o->labelsize(8); + o->callback((Fl_Callback*)align_cb, (void*)(FL_ALIGN_WRAP)); + } + { Fl_Button* o = new Fl_Button(175, 115, 55, 20, "text\nimage"); + o->tooltip("Show the label text over the image."); + o->type(1); + o->labelsize(8); + o->callback((Fl_Callback*)align_cb, (void*)(FL_ALIGN_TEXT_OVER_IMAGE)); + } + { Fl_Button* o = new Fl_Button(295, 115, 20, 20, "@-1<-"); + o->tooltip("Left-align the label."); + o->type(1); + o->labelcolor(8); + o->callback((Fl_Callback*)align_cb, (void*)(FL_ALIGN_LEFT)); + } + { Fl_Button* o = new Fl_Button(315, 115, 20, 20, "@-1->"); + o->tooltip("Right-align the label."); + o->type(1); + o->labelcolor(8); + o->callback((Fl_Callback*)align_cb, (void*)(FL_ALIGN_RIGHT)); + } + { Fl_Button* o = new Fl_Button(335, 115, 20, 20, "@-18"); + o->tooltip("Top-align the label."); + o->type(1); + o->labelcolor(8); + o->callback((Fl_Callback*)align_cb, (void*)(FL_ALIGN_TOP)); + } + { Fl_Button* o = new Fl_Button(355, 115, 20, 20, "@-12"); + o->tooltip("Bottom-align the label."); + o->type(1); + o->labelcolor(8); + o->callback((Fl_Callback*)align_cb, (void*)(FL_ALIGN_BOTTOM)); + } + { Fl_Button* o = new Fl_Button(375, 115, 20, 20, "@-3square"); + o->tooltip("Show the label inside the widget."); + o->type(1); + o->labelcolor(8); + o->callback((Fl_Callback*)align_cb, (void*)(FL_ALIGN_INSIDE)); + } + { Fl_Box* o = new Fl_Box(256, 116, 20, 20); + Fl_Group::current()->resizable(o); + } + o->end(); } - { Fl_Box* o = new Fl_Box(20, 260, 75, 20, "Attributes:"); + { Fl_Box* o = new Fl_Box(95, 150, 0, 20, "Position:"); o->align(FL_ALIGN_RIGHT|FL_ALIGN_INSIDE); } - { Fl_Light_Button* o = new Fl_Light_Button(95, 260, 70, 20, "Visible"); - o->tooltip("Show the widget."); - o->selection_color(1); + { Fl_Box* o = new Fl_Box(95, 185, 0, 20, "Values:"); + o->align(FL_ALIGN_RIGHT|FL_ALIGN_INSIDE); + } + { Fl_Value_Input* o = new Fl_Value_Input(95, 185, 60, 20, "Size:"); + o->tooltip("The size of the slider."); + o->labelsize(10); + o->step(0.010101); + o->callback((Fl_Callback*)slider_size_cb); + o->align(FL_ALIGN_TOP_LEFT); + } + { Fl_Value_Input* o = new Fl_Value_Input(155, 185, 60, 20, "Minimum:"); + o->tooltip("The minimum value of the widget."); o->labelsize(10); - o->callback((Fl_Callback*)visible_cb); + o->callback((Fl_Callback*)min_cb); + o->align(FL_ALIGN_TOP_LEFT); } - { Fl_Light_Button* o = new Fl_Light_Button(165, 260, 70, 20, "Active"); - o->tooltip("Activate the widget."); - o->selection_color(1); + { Fl_Value_Input* o = new Fl_Value_Input(215, 185, 60, 20, "Maximum:"); + o->tooltip("The maximum value of the widget."); o->labelsize(10); - o->callback((Fl_Callback*)active_cb); + o->value(1); + o->callback((Fl_Callback*)max_cb); + o->align(FL_ALIGN_TOP_LEFT); } - { Fl_Light_Button* o = new Fl_Light_Button(235, 260, 70, 20, "Resizable"); - o->tooltip("Make the widget resizable."); - o->selection_color(1); + { Fl_Value_Input* o = new Fl_Value_Input(275, 185, 60, 20, "Step:"); + o->tooltip("The resolution of the widget value."); o->labelsize(10); - o->callback((Fl_Callback*)resizable_cb); - o->when(FL_WHEN_CHANGED); + o->callback((Fl_Callback*)step_cb); + o->align(FL_ALIGN_TOP_LEFT); } - { Fl_Light_Button* o = new Fl_Light_Button(305, 260, 70, 20, "Hotspot"); - o->tooltip("Center the window under this widget."); - o->selection_color(1); + { Fl_Value_Input* o = new Fl_Value_Input(335, 185, 60, 20, "Value:"); + o->tooltip("The current widget value."); o->labelsize(10); - o->callback((Fl_Callback*)hotspot_cb); - o->when(FL_WHEN_CHANGED); + o->callback((Fl_Callback*)value_cb); + o->align(FL_ALIGN_TOP_LEFT); + } + { Shortcut_Button* o = new Shortcut_Button(95, 210, 300, 20, "Shortcut:"); + o->tooltip("The shortcut key for the widget."); + o->box(FL_DOWN_BOX); + o->color(7); + o->selection_color(7); + o->labeltype(FL_NORMAL_LABEL); + o->labelfont(0); + o->labelsize(14); + o->labelcolor(56); + o->callback((Fl_Callback*)shortcut_in_cb); + o->align(FL_ALIGN_LEFT); + o->when(FL_WHEN_RELEASE); + } + { Fl_Group* o = new Fl_Group(95, 235, 300, 20); + o->callback((Fl_Callback*)propagate_load); + { Fl_Light_Button* o = new Fl_Light_Button(210, 235, 60, 20, "Border"); + o->tooltip("Add a border around the window."); + o->selection_color(1); + o->labelsize(10); + o->callback((Fl_Callback*)border_cb); + } + { Fl_Light_Button* o = new Fl_Light_Button(270, 235, 55, 20, "Modal"); + o->tooltip("Make the window modal."); + o->selection_color(1); + o->labelsize(10); + o->callback((Fl_Callback*)modal_cb); + } + { Fl_Light_Button* o = new Fl_Light_Button(325, 235, 70, 20, "Nonmodal"); + o->tooltip("Make the window non-modal."); + o->selection_color(1); + o->labelsize(9); + o->callback((Fl_Callback*)non_modal_cb); + o->align(132|FL_ALIGN_INSIDE); + } + { Fl_Input* o = new Fl_Input(95, 235, 115, 20, "X Class:"); + o->tooltip("The X resource class."); + o->callback((Fl_Callback*)xclass_cb); + Fl_Group::current()->resizable(o); + } + o->end(); + } + { Fl_Group* o = new Fl_Group(95, 260, 301, 20); + o->callback((Fl_Callback*)propagate_load); + { Fl_Light_Button* o = new Fl_Light_Button(95, 260, 70, 20, "Visible"); + o->tooltip("Show the widget."); + o->selection_color(1); + o->labelsize(10); + o->callback((Fl_Callback*)visible_cb); + } + { Fl_Light_Button* o = new Fl_Light_Button(165, 260, 70, 20, "Active"); + o->tooltip("Activate the widget."); + o->selection_color(1); + o->labelsize(10); + o->callback((Fl_Callback*)active_cb); + } + { Fl_Light_Button* o = new Fl_Light_Button(235, 260, 70, 20, "Resizable"); + o->tooltip("Make the widget resizable."); + o->selection_color(1); + o->labelsize(10); + o->callback((Fl_Callback*)resizable_cb); + o->when(FL_WHEN_CHANGED); + } + { Fl_Light_Button* o = new Fl_Light_Button(305, 260, 70, 20, "Hotspot"); + o->tooltip("Center the window under this widget."); + o->selection_color(1); + o->labelsize(10); + o->callback((Fl_Callback*)hotspot_cb); + o->when(FL_WHEN_CHANGED); + } + { Fl_Box* o = new Fl_Box(376, 260, 20, 20); + Fl_Group::current()->resizable(o); + } + { Fl_Box* o = new Fl_Box(95, 260, 0, 20, "Attributes:"); + o->align(FL_ALIGN_LEFT); + } + o->end(); + } + { Fl_Input* o = new Fl_Input(95, 285, 300, 20, "Tooltip:"); + o->tooltip("The tooltip text for the widget."); + o->callback((Fl_Callback*)tooltip_cb); + } + { Fl_Box* o = new Fl_Box(95, 308, 300, 12); + Fl_Group::current()->resizable(o); } o->end(); - } - { Fl_Input* o = new Fl_Input(95, 235, 115, 20, "X Class:"); - o->tooltip("The X resource class."); - o->callback((Fl_Callback*)xclass_cb); - } - { Fl_Input* o = new Fl_Input(95, 285, 300, 20, "Tooltip:"); - o->tooltip("The tooltip text for the widget."); - o->callback((Fl_Callback*)tooltip_cb); + Fl_Group::current()->resizable(o); } o->end(); + Fl_Group::current()->resizable(o); } { Fl_Group* o = new Fl_Group(10, 30, 395, 295, "Style"); o->callback((Fl_Callback*)propagate_load); o->when(FL_WHEN_NEVER); o->hide(); - { Fl_Choice* o = new Fl_Choice(100, 40, 155, 20, "Label Font:"); - o->tooltip("The style of the label text."); - o->box(FL_THIN_UP_BOX); - o->down_box(FL_BORDER_BOX); - o->callback((Fl_Callback*)labelfont_cb); - o->menu(fontmenu); - } - { Fl_Value_Input* o = new Fl_Value_Input(255, 40, 50, 20); - o->tooltip("The size of the label text."); - o->maximum(100); - o->step(1); - o->value(14); - o->callback((Fl_Callback*)labelsize_cb); - } - { Fl_Button* o = new Fl_Button(305, 40, 90, 20, "Label Color"); - o->tooltip("The color of the label text."); - o->labelsize(8); - o->callback((Fl_Callback*)labelcolor_cb); - } - { Fl_Choice* o = new Fl_Choice(100, 65, 205, 20, "Box:"); - o->tooltip("The \"up\" box of the widget."); - o->box(FL_THIN_UP_BOX); - o->down_box(FL_BORDER_BOX); - o->callback((Fl_Callback*)box_cb); - o->menu(boxmenu); - } - { Fl_Button* o = new Fl_Button(305, 65, 90, 20, "Color"); - o->tooltip("The background color of the widget."); - o->labelsize(8); - o->callback((Fl_Callback*)color_cb); - } - { Fl_Choice* o = new Fl_Choice(100, 90, 205, 20, "Down Box:"); - o->tooltip("The \"down\" box of the widget."); - o->box(FL_THIN_UP_BOX); - o->down_box(FL_BORDER_BOX); - o->callback((Fl_Callback*)down_box_cb); - o->menu(boxmenu); - } - { Fl_Button* o = new Fl_Button(305, 90, 90, 20, "Select Color"); - o->tooltip("The selection color of the widget."); - o->labelsize(8); - o->callback((Fl_Callback*)color2_cb); - } - { Fl_Choice* o = new Fl_Choice(100, 115, 155, 20, "Text Font:"); - o->tooltip("The value text style."); - o->box(FL_DOWN_BOX); - o->down_box(FL_BORDER_BOX); - o->callback((Fl_Callback*)textfont_cb); - o->menu(fontmenu); - } - { Fl_Value_Input* o = new Fl_Value_Input(255, 115, 50, 20); - o->tooltip("The value text size."); - o->maximum(100); - o->step(1); - o->value(14); - o->callback((Fl_Callback*)textsize_cb); - } - { Fl_Button* o = new Fl_Button(305, 115, 90, 20, "Text Color"); - o->tooltip("The value text color."); - o->labelsize(8); - o->callback((Fl_Callback*)textcolor_cb); + { Fl_Group* o = new Fl_Group(100, 40, 295, 276); + o->callback((Fl_Callback*)propagate_load); + { Fl_Group* o = new Fl_Group(100, 40, 295, 95); + o->callback((Fl_Callback*)propagate_load); + { Fl_Group* o = new Fl_Group(100, 40, 295, 20); + o->callback((Fl_Callback*)propagate_load); + { Fl_Choice* o = new Fl_Choice(100, 40, 155, 20, "Label Font:"); + o->tooltip("The style of the label text."); + o->box(FL_THIN_UP_BOX); + o->down_box(FL_BORDER_BOX); + o->callback((Fl_Callback*)labelfont_cb); + Fl_Group::current()->resizable(o); + o->menu(fontmenu); + } + { Fl_Value_Input* o = new Fl_Value_Input(255, 40, 50, 20); + o->tooltip("The size of the label text."); + o->maximum(100); + o->step(1); + o->value(14); + o->callback((Fl_Callback*)labelsize_cb); + } + { Fl_Button* o = new Fl_Button(305, 40, 90, 20, "Label Color"); + o->tooltip("The color of the label text."); + o->labelsize(8); + o->callback((Fl_Callback*)labelcolor_cb); + } + o->end(); + } + { Fl_Group* o = new Fl_Group(100, 65, 295, 20); + o->callback((Fl_Callback*)propagate_load); + { Fl_Choice* o = new Fl_Choice(100, 65, 205, 20, "Box:"); + o->tooltip("The \"up\" box of the widget."); + o->box(FL_THIN_UP_BOX); + o->down_box(FL_BORDER_BOX); + o->callback((Fl_Callback*)box_cb); + Fl_Group::current()->resizable(o); + o->menu(boxmenu); + } + { Fl_Button* o = new Fl_Button(305, 65, 90, 20, "Color"); + o->tooltip("The background color of the widget."); + o->labelsize(8); + o->callback((Fl_Callback*)color_cb); + } + o->end(); + } + { Fl_Group* o = new Fl_Group(100, 90, 295, 20); + o->callback((Fl_Callback*)propagate_load); + { Fl_Choice* o = new Fl_Choice(100, 90, 205, 20, "Down Box:"); + o->tooltip("The \"down\" box of the widget."); + o->box(FL_THIN_UP_BOX); + o->down_box(FL_BORDER_BOX); + o->callback((Fl_Callback*)down_box_cb); + Fl_Group::current()->resizable(o); + o->menu(boxmenu); + } + { Fl_Button* o = new Fl_Button(305, 90, 90, 20, "Select Color"); + o->tooltip("The selection color of the widget."); + o->labelsize(8); + o->callback((Fl_Callback*)color2_cb); + } + o->end(); + } + { Fl_Group* o = new Fl_Group(100, 115, 295, 20); + o->callback((Fl_Callback*)propagate_load); + { Fl_Choice* o = new Fl_Choice(100, 115, 155, 20, "Text Font:"); + o->tooltip("The value text style."); + o->box(FL_DOWN_BOX); + o->down_box(FL_BORDER_BOX); + o->callback((Fl_Callback*)textfont_cb); + Fl_Group::current()->resizable(o); + o->menu(fontmenu); + } + { Fl_Value_Input* o = new Fl_Value_Input(255, 115, 50, 20); + o->tooltip("The value text size."); + o->maximum(100); + o->step(1); + o->value(14); + o->callback((Fl_Callback*)textsize_cb); + } + { Fl_Button* o = new Fl_Button(305, 115, 90, 20, "Text Color"); + o->tooltip("The value text color."); + o->labelsize(8); + o->callback((Fl_Callback*)textcolor_cb); + } + o->end(); + } + o->end(); + } + { Fl_Box* o = new Fl_Box(100, 304, 295, 12); + Fl_Group::current()->resizable(o); + } + o->end(); + Fl_Group::current()->resizable(o); } o->end(); } @@ -313,88 +384,123 @@ Fl_Window* make_widget_panel() { o->callback((Fl_Callback*)propagate_load); o->when(FL_WHEN_NEVER); o->hide(); - { Fl_Input* o = new Fl_Input(100, 65, 230, 20, "Name:"); - o->tooltip("The name of the widget."); - o->callback((Fl_Callback*)name_cb); - } - { Fl_Light_Button* o = new Fl_Light_Button(330, 65, 65, 20, "public"); - o->tooltip("Make the widget publicly accessible."); - o->selection_color(1); - o->labelsize(10); - o->callback((Fl_Callback*)name_public_cb); - o->when(FL_WHEN_CHANGED); - } - { Fl_Input* o = new Fl_Input(100, 40, 160, 20, "Class:"); - o->tooltip("The widget subclass."); - o->textfont(4); - o->callback((Fl_Callback*)subclass_cb, (void*)(4)); - } - { Fl_Choice* o = new Fl_Choice(260, 40, 135, 20); - o->tooltip("The widget subtype."); - o->box(FL_THIN_UP_BOX); - o->down_box(FL_BORDER_BOX); - o->callback((Fl_Callback*)subtype_cb); - } - { Fl_Input* o = v_input[0] = new Fl_Input(100, 90, 295, 20, "Extra Code:"); - o->tooltip("Extra initialization code for the widget."); - o->textfont(4); - o->callback((Fl_Callback*)v_input_cb, (void*)(0)); - } - { Fl_Input* o = v_input[1] = new Fl_Input(100, 110, 295, 20); - o->tooltip("Extra initialization code for the widget."); - o->textfont(4); - o->callback((Fl_Callback*)v_input_cb, (void*)(1)); - } - { Fl_Input* o = v_input[2] = new Fl_Input(100, 130, 295, 20); - o->tooltip("Extra initialization code for the widget."); - o->textfont(4); - o->callback((Fl_Callback*)v_input_cb, (void*)(2)); - } - { Fl_Input* o = v_input[3] = new Fl_Input(100, 150, 295, 20); - o->tooltip("Extra initialization code for the widget."); - o->textfont(4); - o->callback((Fl_Callback*)v_input_cb, (void*)(3)); - } - { Fl_Box* o = new Fl_Box(20, 175, 75, 20, "Callback:"); - o->align(FL_ALIGN_RIGHT|FL_ALIGN_INSIDE); + { Fl_Group* o = new Fl_Group(100, 40, 295, 132); + o->callback((Fl_Callback*)propagate_load); + { Fl_Group* o = new Fl_Group(100, 40, 295, 20); + o->callback((Fl_Callback*)propagate_load); + { Fl_Input* o = new Fl_Input(100, 40, 160, 20, "Class:"); + o->tooltip("The widget subclass."); + o->textfont(4); + o->callback((Fl_Callback*)subclass_cb, (void*)(4)); + Fl_Group::current()->resizable(o); + } + { Fl_Choice* o = new Fl_Choice(260, 40, 135, 20); + o->tooltip("The widget subtype."); + o->box(FL_THIN_UP_BOX); + o->down_box(FL_BORDER_BOX); + o->callback((Fl_Callback*)subtype_cb); + } + o->end(); + } + { Fl_Group* o = new Fl_Group(100, 65, 295, 20); + o->callback((Fl_Callback*)propagate_load); + { Fl_Input* o = new Fl_Input(100, 65, 230, 20, "Name:"); + o->tooltip("The name of the widget."); + o->callback((Fl_Callback*)name_cb); + Fl_Group::current()->resizable(o); + } + { Fl_Light_Button* o = new Fl_Light_Button(330, 65, 65, 20, "public"); + o->tooltip("Make the widget publicly accessible."); + o->selection_color(1); + o->labelsize(10); + o->callback((Fl_Callback*)name_public_cb); + o->when(FL_WHEN_CHANGED); + } + o->end(); + } + { Fl_Input* o = v_input[0] = new Fl_Input(100, 90, 295, 20, "Extra Code:"); + o->tooltip("Extra initialization code for the widget."); + o->textfont(4); + o->callback((Fl_Callback*)v_input_cb, (void*)(0)); + } + { Fl_Input* o = v_input[1] = new Fl_Input(100, 110, 295, 20); + o->tooltip("Extra initialization code for the widget."); + o->textfont(4); + o->callback((Fl_Callback*)v_input_cb, (void*)(1)); + } + { Fl_Input* o = v_input[2] = new Fl_Input(100, 130, 295, 20); + o->tooltip("Extra initialization code for the widget."); + o->textfont(4); + o->callback((Fl_Callback*)v_input_cb, (void*)(2)); + } + { Fl_Input* o = v_input[3] = new Fl_Input(100, 150, 295, 20); + o->tooltip("Extra initialization code for the widget."); + o->textfont(4); + o->callback((Fl_Callback*)v_input_cb, (void*)(3)); + } + o->end(); } - { Fl_Input* o = new Fl_Input(100, 175, 295, 90); - o->tooltip("The callback function or code for the widget."); - o->type(4); - o->textfont(4); - o->callback((Fl_Callback*)callback_cb); + { Fl_Group* o = new Fl_Group(100, 175, 295, 90); + o->box(FL_DOWN_BOX); + o->callback((Fl_Callback*)propagate_load); + { Fl_Text_Editor* o = new Fl_Text_Editor(102, 177, 291, 86, "Callback:"); + o->tooltip("The callback function or code for the widget."); + o->box(FL_NO_BOX); + o->textfont(4); + o->callback((Fl_Callback*)callback_cb); + o->align(FL_ALIGN_LEFT); + Fl_Group::current()->resizable(o); + o->buffer(new Fl_Text_Buffer()); + } + o->end(); + Fl_Group::current()->resizable(o); } { Fl_Box* o = new Fl_Box(95, 325, 100, 0, "label"); o->hide(); o->deactivate(); } - { Fl_Input* o = new Fl_Input(100, 270, 140, 20, "User Data:"); - o->tooltip("The user data to pass into the callback code."); - o->textfont(4); - o->callback((Fl_Callback*)user_data_cb); - } - { Fl_Input* o = new Fl_Input(100, 295, 140, 20, "Type:"); - o->tooltip("The type of the user data."); - o->textfont(4); - o->callback((Fl_Callback*)user_data_type_cb); - } - { Fl_Choice* o = new Fl_Choice(290, 270, 105, 20, "When:"); - o->tooltip("When to call the callback function."); - o->box(FL_THIN_UP_BOX); - o->down_box(FL_BORDER_BOX); - o->callback((Fl_Callback*)when_cb); - o->when(FL_WHEN_CHANGED); - o->menu(whenmenu); - } - { Fl_Light_Button* o = new Fl_Light_Button(290, 295, 105, 20, "No Change"); - o->tooltip("Call the callback even if the value has not changed."); - o->selection_color(1); - o->labelsize(10); - o->callback((Fl_Callback*)when_button_cb); + { Fl_Group* o = new Fl_Group(100, 270, 295, 45); + o->callback((Fl_Callback*)propagate_load); + { Fl_Group* o = new Fl_Group(100, 270, 295, 20); + o->callback((Fl_Callback*)propagate_load); + { Fl_Input* o = new Fl_Input(100, 270, 140, 20, "User Data:"); + o->tooltip("The user data to pass into the callback code."); + o->textfont(4); + o->callback((Fl_Callback*)user_data_cb); + Fl_Group::current()->resizable(o); + } + { Fl_Choice* o = new Fl_Choice(290, 270, 105, 20, "When:"); + o->tooltip("When to call the callback function."); + o->box(FL_THIN_UP_BOX); + o->down_box(FL_BORDER_BOX); + o->callback((Fl_Callback*)when_cb); + o->when(FL_WHEN_CHANGED); + o->menu(whenmenu); + } + o->end(); + } + { Fl_Group* o = new Fl_Group(100, 295, 295, 20); + o->callback((Fl_Callback*)propagate_load); + { Fl_Input* o = new Fl_Input(100, 295, 140, 20, "Type:"); + o->tooltip("The type of the user data."); + o->textfont(4); + o->callback((Fl_Callback*)user_data_type_cb); + Fl_Group::current()->resizable(o); + } + { Fl_Light_Button* o = new Fl_Light_Button(290, 295, 105, 20, "No Change"); + o->tooltip("Call the callback even if the value has not changed."); + o->selection_color(1); + o->labelsize(10); + o->callback((Fl_Callback*)when_button_cb); + } + o->end(); + } + o->end(); } o->end(); } o->end(); + Fl_Group::current()->resizable(o); } { Fl_Group* o = new Fl_Group(10, 335, 395, 25); { Fl_Button* o = new Fl_Button(50, 335, 100, 25, "No &Overlay"); @@ -411,10 +517,12 @@ Fl_Window* make_widget_panel() { { Fl_Return_Button* o = new Fl_Return_Button(240, 335, 80, 25, "OK"); o->callback((Fl_Callback*)ok_cb); } + { Fl_Box* o = new Fl_Box(12, 335, 12, 25); + Fl_Group::current()->resizable(o); + } o->end(); } o->end(); - o->resizable(o); } return w; } diff --git a/fluid/widget_panel.fl b/fluid/widget_panel.fl index f37ac9c37..8b48a045c 100644 --- a/fluid/widget_panel.fl +++ b/fluid/widget_panel.fl @@ -1,389 +1,492 @@ -# data file for the Fltk User Interface Designer (fluid) -version 1.0100 -header_name {.h} -code_name {.cxx} -Function {make_widget_panel()} {open -} { - Fl_Window {} {open - xywh {46 61 415 370} resizable hotspot visible - } { - Fl_Tabs {} { - callback {propagate_load((Fl_Group *)o,v);} open - xywh {10 10 395 315} when 0 - } { - Fl_Group {} { - label GUI - callback propagate_load - xywh {10 30 395 295} when 0 - } { - Fl_Input {} { - label {Label:} - callback label_cb - tooltip {The label text for the widget.} xywh {95 40 195 20} when 1 - } - Fl_Choice {} { - callback labeltype_cb open - tooltip {The label style for the widget.} xywh {290 40 105 20} box THIN_UP_BOX down_box BORDER_BOX - code0 {extern Fl_Menu_Item labeltypemenu[];} - code1 {o->menu(labeltypemenu);} - } {} - Fl_Input {} { - label {Image:} - callback image_cb - tooltip {The active image for the widget.} xywh {95 65 195 20} - } - Fl_Button {} { - label {Browse...} - callback image_browse_cb - tooltip {Click to choose the active image.} xywh {290 65 105 20} - } - Fl_Input {} { - label {Inactive:} - callback inactive_cb - tooltip {The inactive image for the widget.} xywh {95 90 195 20} - } - Fl_Button {} { - label {Browse...} - callback inactive_browse_cb - tooltip {Click to choose the inactive image.} xywh {290 90 105 20} - } - Fl_Value_Input {} { - label {X:} - callback x_cb - tooltip {The X position of the widget.} xywh {95 150 60 20} labelsize 10 align 5 maximum 2048 step 1 - } - Fl_Value_Input {} { - label {Y:} - callback y_cb - tooltip {The Y position of the widget.} xywh {155 150 60 20} labelsize 10 align 5 maximum 2048 step 1 - } - Fl_Value_Input {} { - label {Width:} - callback w_cb - tooltip {The width of the widget.} xywh {215 150 60 20} labelsize 10 align 5 maximum 2048 step 1 - } - Fl_Value_Input {} { - label {Height:} - callback h_cb selected - tooltip {The height of the widget.} xywh {275 150 60 20} labelsize 10 align 5 maximum 2048 step 1 - } - Fl_Group {} { - label {Alignment:} - callback propagate_load - xywh {95 115 300 20} align 4 - } { - Fl_Button {} { - label clip - user_data FL_ALIGN_CLIP - callback align_cb - tooltip {Clip the label to the inside of the widget.} xywh {95 115 40 20} type Toggle labelsize 8 - } - Fl_Button {} { - label wrap - user_data FL_ALIGN_WRAP - callback align_cb - tooltip {Wrap the label text.} xywh {135 115 40 20} type Toggle labelsize 8 - } - Fl_Button {} { - label {text -image} - user_data FL_ALIGN_TEXT_OVER_IMAGE - callback align_cb - tooltip {Show the label text over the image.} xywh {175 115 55 20} type Toggle labelsize 8 - } - Fl_Button {} { - label {@-1<-} - user_data FL_ALIGN_LEFT - callback align_cb - tooltip {Left-align the label.} xywh {295 115 20 20} type Toggle labelcolor 8 - } - Fl_Button {} { - label {@-1->} - user_data FL_ALIGN_RIGHT - callback align_cb - tooltip {Right-align the label.} xywh {315 115 20 20} type Toggle labelcolor 8 - } - Fl_Button {} { - label {@-18} - user_data FL_ALIGN_TOP - callback align_cb - tooltip {Top-align the label.} xywh {335 115 20 20} type Toggle labelcolor 8 - } - Fl_Button {} { - label {@-12} - user_data FL_ALIGN_BOTTOM - callback align_cb - tooltip {Bottom-align the label.} xywh {355 115 20 20} type Toggle labelcolor 8 - } - Fl_Button {} { - label {@-3square} - user_data FL_ALIGN_INSIDE - callback align_cb - tooltip {Show the label inside the widget.} xywh {375 115 20 20} type Toggle labelcolor 8 - } - } - Fl_Box {} { - label {Position:} - xywh {20 150 75 20} align 24 - } - Fl_Box {} { - label {Values:} - xywh {20 185 75 20} align 24 - } - Fl_Value_Input {} { - label {Size:} - callback slider_size_cb - tooltip {The size of the slider.} xywh {95 185 60 20} labelsize 10 align 5 step 0.010101 - } - Fl_Value_Input {} { - label {Minimum:} - callback min_cb - tooltip {The minimum value of the widget.} xywh {155 185 60 20} labelsize 10 align 5 - } - Fl_Value_Input {} { - label {Maximum:} - callback max_cb - tooltip {The maximum value of the widget.} xywh {215 185 60 20} labelsize 10 align 5 value 1 - } - Fl_Value_Input {} { - label {Step:} - callback step_cb - tooltip {The resolution of the widget value.} xywh {275 185 60 20} labelsize 10 align 5 - } - Fl_Value_Input {} { - label {Value:} - callback value_cb - tooltip {The current widget value.} xywh {335 185 60 20} labelsize 10 align 5 - } - Fl_Button {} { - label {Shortcut:} - callback shortcut_in_cb - tooltip {The shortcut key for the widget.} xywh {95 210 300 20} box DOWN_BOX color 7 selection_color 7 align 4 - code0 {\#include "Shortcut_Button.h"} - class Shortcut_Button - } - Fl_Group {} { - callback propagate_load open - xywh {20 235 375 45} align 4 - } { - Fl_Light_Button {} { - label Border - callback border_cb - tooltip {Add a border around the window.} xywh {210 235 60 20} selection_color 1 labelsize 10 - } - Fl_Light_Button {} { - label Modal - callback modal_cb - tooltip {Make the window modal.} xywh {270 235 55 20} selection_color 1 labelsize 10 - } - Fl_Light_Button {} { - label Nonmodal - callback non_modal_cb - tooltip {Make the window non-modal.} xywh {325 235 70 20} selection_color 1 labelsize 9 align 148 - } - Fl_Box {} { - label {Attributes:} - xywh {20 260 75 20} align 24 - } - Fl_Light_Button {} { - label Visible - callback visible_cb - tooltip {Show the widget.} xywh {95 260 70 20} selection_color 1 labelsize 10 - } - Fl_Light_Button {} { - label Active - callback active_cb - tooltip {Activate the widget.} xywh {165 260 70 20} selection_color 1 labelsize 10 - } - Fl_Light_Button {} { - label Resizable - callback resizable_cb - tooltip {Make the widget resizable.} xywh {235 260 70 20} selection_color 1 labelsize 10 when 1 - } - Fl_Light_Button {} { - label Hotspot - callback hotspot_cb - tooltip {Center the window under this widget.} xywh {305 260 70 20} selection_color 1 labelsize 10 when 1 - } - } - Fl_Input {} { - label {X Class:} - callback xclass_cb - tooltip {The X resource class.} xywh {95 235 115 20} - } - Fl_Input {} { - label {Tooltip:} - callback tooltip_cb - tooltip {The tooltip text for the widget.} xywh {95 285 300 20} - } - } - Fl_Group {} { - label Style - callback propagate_load - xywh {10 30 395 295} when 0 hide - } { - Fl_Choice {} { - label {Label Font:} - callback labelfont_cb open - tooltip {The style of the label text.} xywh {100 40 155 20} box THIN_UP_BOX down_box BORDER_BOX - code0 {extern Fl_Menu_Item fontmenu[];} - code1 {o->menu(fontmenu);} - } {} - Fl_Value_Input {} { - callback labelsize_cb - tooltip {The size of the label text.} xywh {255 40 50 20} maximum 100 step 1 value 14 - } - Fl_Button {} { - label {Label Color} - callback labelcolor_cb - tooltip {The color of the label text.} xywh {305 40 90 20} labelsize 8 - } - Fl_Choice {} { - label {Box:} - callback box_cb open - tooltip {The "up" box of the widget.} xywh {100 65 205 20} box THIN_UP_BOX down_box BORDER_BOX - code0 {extern Fl_Menu_Item boxmenu[];} - code1 {o->menu(boxmenu);} - } {} - Fl_Button {} { - label Color - callback color_cb - tooltip {The background color of the widget.} xywh {305 65 90 20} labelsize 8 - } - Fl_Choice {} { - label {Down Box:} - callback down_box_cb open - tooltip {The "down" box of the widget.} xywh {100 90 205 20} box THIN_UP_BOX down_box BORDER_BOX - code0 {extern Fl_Menu_Item boxmenu[];} - code1 {o->menu(boxmenu);} - } {} - Fl_Button {} { - label {Select Color} - callback color2_cb - tooltip {The selection color of the widget.} xywh {305 90 90 20} labelsize 8 - } - Fl_Choice {} { - label {Text Font:} - callback textfont_cb open - tooltip {The value text style.} xywh {100 115 155 20} box DOWN_BOX down_box BORDER_BOX - code0 {extern Fl_Menu_Item fontmenu[];} - code1 {o->menu(fontmenu);} - } {} - Fl_Value_Input {} { - callback textsize_cb - tooltip {The value text size.} xywh {255 115 50 20} maximum 100 step 1 value 14 - } - Fl_Button {} { - label {Text Color} - callback textcolor_cb - tooltip {The value text color.} xywh {305 115 90 20} labelsize 8 - } - } - Fl_Group {} { - label {C++} - callback propagate_load - xywh {10 30 395 295} when 0 hide - } { - Fl_Input {} { - label {Name:} - callback name_cb - tooltip {The name of the widget.} xywh {100 65 230 20} - } - Fl_Light_Button {} { - label public - callback name_public_cb - tooltip {Make the widget publicly accessible.} xywh {330 65 65 20} selection_color 1 labelsize 10 when 1 - } - Fl_Input {} { - label {Class:} - user_data 4 - callback subclass_cb - tooltip {The widget subclass.} xywh {100 40 160 20} textfont 4 - } - Fl_Choice {} { - callback subtype_cb open - tooltip {The widget subtype.} xywh {260 40 135 20} box THIN_UP_BOX down_box BORDER_BOX - } {} - Fl_Input {v_input[0]} { - label {Extra Code:} - user_data 0 - callback v_input_cb - tooltip {Extra initialization code for the widget.} xywh {100 90 295 20} textfont 4 - } - Fl_Input {v_input[1]} { - user_data 1 - callback v_input_cb - tooltip {Extra initialization code for the widget.} xywh {100 110 295 20} textfont 4 - } - Fl_Input {v_input[2]} { - user_data 2 - callback v_input_cb - tooltip {Extra initialization code for the widget.} xywh {100 130 295 20} textfont 4 - } - Fl_Input {v_input[3]} { - user_data 3 - callback v_input_cb - tooltip {Extra initialization code for the widget.} xywh {100 150 295 20} textfont 4 - } - Fl_Box {} { - label {Callback:} - xywh {20 175 75 20} align 24 - } - Fl_Input {} { - callback callback_cb - tooltip {The callback function or code for the widget.} xywh {100 175 295 90} type Multiline textfont 4 - } - Fl_Box {} { - label label - xywh {95 325 100 0} hide deactivate - } - Fl_Input {} { - label {User Data:} - callback user_data_cb - tooltip {The user data to pass into the callback code.} xywh {100 270 140 20} textfont 4 - } - Fl_Input {} { - label {Type:} - callback user_data_type_cb - tooltip {The type of the user data.} xywh {100 295 140 20} textfont 4 - } - Fl_Choice {} { - label {When:} - callback when_cb open - tooltip {When to call the callback function.} xywh {290 270 105 20} box THIN_UP_BOX down_box BORDER_BOX when 1 - code0 {extern Fl_Menu_Item whenmenu[];} - code1 {o->menu(whenmenu);} - } {} - Fl_Light_Button {} { - label {No Change} - callback when_button_cb - tooltip {Call the callback even if the value has not changed.} xywh {290 295 105 20} selection_color 1 labelsize 10 - } - } - } - Fl_Group {} {open - xywh {10 335 395 25} - } { - Fl_Button {} { - label {No &Overlay} - callback overlay_cb - tooltip {Hide the widget overlay box.} xywh {50 335 100 25} labelcolor 1 - } - Fl_Button {} { - label Revert - callback revert_cb - xywh {155 335 80 25} - } - Fl_Button {} { - label Cancel - callback cancel_cb - xywh {325 335 80 25} - } - Fl_Return_Button {} { - label OK - callback ok_cb - xywh {240 335 80 25} - } - } - } -} +# data file for the Fltk User Interface Designer (fluid)
+version 1.0102
+header_name {.h}
+code_name {.cxx}
+Function {make_widget_panel()} {open selected
+} {
+ Fl_Window {} {open
+ xywh {318 157 415 370} type Double resizable hotspot visible
+ } {
+ Fl_Tabs {} {
+ callback {propagate_load((Fl_Group *)o,v);} open
+ xywh {10 10 395 315} when 0 resizable
+ } {
+ Fl_Group {} {
+ label GUI
+ callback propagate_load
+ xywh {10 30 395 295} when 0 resizable
+ } {
+ Fl_Group {} {
+ callback propagate_load open
+ xywh {95 40 301 280} resizable
+ } {
+ Fl_Group {} {
+ callback propagate_load
+ xywh {95 40 300 20}
+ } {
+ Fl_Input {} {
+ label {Label:}
+ callback label_cb
+ tooltip {The label text for the widget.} xywh {95 40 195 20} when 1 resizable
+ }
+ Fl_Choice {} {
+ callback labeltype_cb open
+ tooltip {The label style for the widget.} xywh {290 40 105 20} box THIN_UP_BOX down_box BORDER_BOX
+ code0 {extern Fl_Menu_Item labeltypemenu[];}
+ code1 {o->menu(labeltypemenu);}
+ } {}
+ }
+ Fl_Group {} {
+ callback propagate_load
+ xywh {95 65 300 20}
+ } {
+ Fl_Input {} {
+ label {Image:}
+ callback image_cb
+ tooltip {The active image for the widget.} xywh {95 65 195 20} resizable
+ }
+ Fl_Button {} {
+ label {Browse...}
+ callback image_browse_cb
+ tooltip {Click to choose the active image.} xywh {290 65 105 20}
+ }
+ }
+ Fl_Group {} {
+ callback propagate_load
+ xywh {95 90 300 20}
+ } {
+ Fl_Input {} {
+ label {Inactive:}
+ callback inactive_cb
+ tooltip {The inactive image for the widget.} xywh {95 90 195 20} resizable
+ }
+ Fl_Button {} {
+ label {Browse...}
+ callback inactive_browse_cb
+ tooltip {Click to choose the inactive image.} xywh {290 90 105 20}
+ }
+ }
+ Fl_Value_Input {} {
+ label {X:}
+ callback x_cb
+ tooltip {The X position of the widget.} xywh {95 150 60 20} labelsize 10 align 5 maximum 2048 step 1
+ }
+ Fl_Value_Input {} {
+ label {Y:}
+ callback y_cb
+ tooltip {The Y position of the widget.} xywh {155 150 60 20} labelsize 10 align 5 maximum 2048 step 1
+ }
+ Fl_Value_Input {} {
+ label {Width:}
+ callback w_cb
+ tooltip {The width of the widget.} xywh {215 150 60 20} labelsize 10 align 5 maximum 2048 step 1
+ }
+ Fl_Value_Input {} {
+ label {Height:}
+ callback h_cb
+ tooltip {The height of the widget.} xywh {275 150 60 20} labelsize 10 align 5 maximum 2048 step 1
+ }
+ Fl_Group {} {
+ label {Alignment:}
+ callback propagate_load
+ xywh {95 115 300 21} align 4
+ } {
+ Fl_Button {} {
+ label clip
+ user_data FL_ALIGN_CLIP
+ callback align_cb
+ tooltip {Clip the label to the inside of the widget.} xywh {95 115 40 20} type Toggle labelsize 8
+ }
+ Fl_Button {} {
+ label wrap
+ user_data FL_ALIGN_WRAP
+ callback align_cb
+ tooltip {Wrap the label text.} xywh {135 115 40 20} type Toggle labelsize 8
+ }
+ Fl_Button {} {
+ label {text
+image}
+ user_data FL_ALIGN_TEXT_OVER_IMAGE
+ callback align_cb
+ tooltip {Show the label text over the image.} xywh {175 115 55 20} type Toggle labelsize 8
+ }
+ Fl_Button {} {
+ label {@-1<-}
+ user_data FL_ALIGN_LEFT
+ callback align_cb
+ tooltip {Left-align the label.} xywh {295 115 20 20} type Toggle labelcolor 8
+ }
+ Fl_Button {} {
+ label {@-1->}
+ user_data FL_ALIGN_RIGHT
+ callback align_cb
+ tooltip {Right-align the label.} xywh {315 115 20 20} type Toggle labelcolor 8
+ }
+ Fl_Button {} {
+ label {@-18}
+ user_data FL_ALIGN_TOP
+ callback align_cb
+ tooltip {Top-align the label.} xywh {335 115 20 20} type Toggle labelcolor 8
+ }
+ Fl_Button {} {
+ label {@-12}
+ user_data FL_ALIGN_BOTTOM
+ callback align_cb
+ tooltip {Bottom-align the label.} xywh {355 115 20 20} type Toggle labelcolor 8
+ }
+ Fl_Button {} {
+ label {@-3square}
+ user_data FL_ALIGN_INSIDE
+ callback align_cb
+ tooltip {Show the label inside the widget.} xywh {375 115 20 20} type Toggle labelcolor 8
+ }
+ Fl_Box {} {
+ xywh {256 116 20 20} resizable
+ }
+ }
+ Fl_Box {} {
+ label {Position:}
+ xywh {95 150 0 20} align 24
+ }
+ Fl_Box {} {
+ label {Values:}
+ xywh {95 185 0 20} align 24
+ }
+ Fl_Value_Input {} {
+ label {Size:}
+ callback slider_size_cb
+ tooltip {The size of the slider.} xywh {95 185 60 20} labelsize 10 align 5 step 0.010101
+ }
+ Fl_Value_Input {} {
+ label {Minimum:}
+ callback min_cb
+ tooltip {The minimum value of the widget.} xywh {155 185 60 20} labelsize 10 align 5
+ }
+ Fl_Value_Input {} {
+ label {Maximum:}
+ callback max_cb
+ tooltip {The maximum value of the widget.} xywh {215 185 60 20} labelsize 10 align 5 value 1
+ }
+ Fl_Value_Input {} {
+ label {Step:}
+ callback step_cb
+ tooltip {The resolution of the widget value.} xywh {275 185 60 20} labelsize 10 align 5
+ }
+ Fl_Value_Input {} {
+ label {Value:}
+ callback value_cb
+ tooltip {The current widget value.} xywh {335 185 60 20} labelsize 10 align 5
+ }
+ Fl_Button {} {
+ label {Shortcut:}
+ callback shortcut_in_cb
+ tooltip {The shortcut key for the widget.} xywh {95 210 300 20} box DOWN_BOX color 7 selection_color 7 align 4
+ code0 {\#include "Shortcut_Button.h"}
+ class Shortcut_Button
+ }
+ Fl_Group {} {
+ callback propagate_load
+ xywh {95 235 300 20}
+ } {
+ Fl_Light_Button {} {
+ label Border
+ callback border_cb
+ tooltip {Add a border around the window.} xywh {210 235 60 20} selection_color 1 labelsize 10
+ }
+ Fl_Light_Button {} {
+ label Modal
+ callback modal_cb
+ tooltip {Make the window modal.} xywh {270 235 55 20} selection_color 1 labelsize 10
+ }
+ Fl_Light_Button {} {
+ label Nonmodal
+ callback non_modal_cb
+ tooltip {Make the window non-modal.} xywh {325 235 70 20} selection_color 1 labelsize 9 align 148
+ }
+ Fl_Input {} {
+ label {X Class:}
+ callback xclass_cb
+ tooltip {The X resource class.} xywh {95 235 115 20} resizable
+ }
+ }
+ Fl_Group {} {
+ callback propagate_load open
+ xywh {95 260 301 20}
+ } {
+ Fl_Light_Button {} {
+ label Visible
+ callback visible_cb
+ tooltip {Show the widget.} xywh {95 260 70 20} selection_color 1 labelsize 10
+ }
+ Fl_Light_Button {} {
+ label Active
+ callback active_cb
+ tooltip {Activate the widget.} xywh {165 260 70 20} selection_color 1 labelsize 10
+ }
+ Fl_Light_Button {} {
+ label Resizable
+ callback resizable_cb
+ tooltip {Make the widget resizable.} xywh {235 260 70 20} selection_color 1 labelsize 10 when 1
+ }
+ Fl_Light_Button {} {
+ label Hotspot
+ callback hotspot_cb
+ tooltip {Center the window under this widget.} xywh {305 260 70 20} selection_color 1 labelsize 10 when 1
+ }
+ Fl_Box {} {
+ xywh {376 260 20 20} resizable
+ }
+ Fl_Box {} {
+ label {Attributes:}
+ xywh {95 260 0 20} align 4
+ }
+ }
+ Fl_Input {} {
+ label {Tooltip:}
+ callback tooltip_cb
+ tooltip {The tooltip text for the widget.} xywh {95 285 300 20}
+ }
+ Fl_Box {} {
+ xywh {95 308 300 12} resizable
+ }
+ }
+ }
+ Fl_Group {} {
+ label Style
+ callback propagate_load
+ xywh {10 30 395 295} when 0 hide
+ } {
+ Fl_Group {} {
+ callback propagate_load
+ xywh {100 40 295 276} resizable
+ } {
+ Fl_Group {} {
+ callback propagate_load open
+ xywh {100 40 295 95}
+ } {
+ Fl_Group {} {
+ callback propagate_load
+ xywh {100 40 295 20}
+ } {
+ Fl_Choice {} {
+ label {Label Font:}
+ callback labelfont_cb open
+ tooltip {The style of the label text.} xywh {100 40 155 20} box THIN_UP_BOX down_box BORDER_BOX resizable
+ code0 {extern Fl_Menu_Item fontmenu[];}
+ code1 {o->menu(fontmenu);}
+ } {}
+ Fl_Value_Input {} {
+ callback labelsize_cb
+ tooltip {The size of the label text.} xywh {255 40 50 20} maximum 100 step 1 value 14
+ }
+ Fl_Button {} {
+ label {Label Color}
+ callback labelcolor_cb
+ tooltip {The color of the label text.} xywh {305 40 90 20} labelsize 8
+ }
+ }
+ Fl_Group {} {
+ callback propagate_load
+ xywh {100 65 295 20}
+ } {
+ Fl_Choice {} {
+ label {Box:}
+ callback box_cb open
+ tooltip {The "up" box of the widget.} xywh {100 65 205 20} box THIN_UP_BOX down_box BORDER_BOX resizable
+ code0 {extern Fl_Menu_Item boxmenu[];}
+ code1 {o->menu(boxmenu);}
+ } {}
+ Fl_Button {} {
+ label Color
+ callback color_cb
+ tooltip {The background color of the widget.} xywh {305 65 90 20} labelsize 8
+ }
+ }
+ Fl_Group {} {
+ callback propagate_load
+ xywh {100 90 295 20}
+ } {
+ Fl_Choice {} {
+ label {Down Box:}
+ callback down_box_cb open
+ tooltip {The "down" box of the widget.} xywh {100 90 205 20} box THIN_UP_BOX down_box BORDER_BOX resizable
+ code0 {extern Fl_Menu_Item boxmenu[];}
+ code1 {o->menu(boxmenu);}
+ } {}
+ Fl_Button {} {
+ label {Select Color}
+ callback color2_cb
+ tooltip {The selection color of the widget.} xywh {305 90 90 20} labelsize 8
+ }
+ }
+ Fl_Group {} {
+ callback propagate_load
+ xywh {100 115 295 20}
+ } {
+ Fl_Choice {} {
+ label {Text Font:}
+ callback textfont_cb open
+ tooltip {The value text style.} xywh {100 115 155 20} box DOWN_BOX down_box BORDER_BOX resizable
+ code0 {extern Fl_Menu_Item fontmenu[];}
+ code1 {o->menu(fontmenu);}
+ } {}
+ Fl_Value_Input {} {
+ callback textsize_cb
+ tooltip {The value text size.} xywh {255 115 50 20} maximum 100 step 1 value 14
+ }
+ Fl_Button {} {
+ label {Text Color}
+ callback textcolor_cb
+ tooltip {The value text color.} xywh {305 115 90 20} labelsize 8
+ }
+ }
+ }
+ Fl_Box {} {
+ xywh {100 304 295 12} resizable
+ }
+ }
+ }
+ Fl_Group {} {
+ label {C++}
+ callback propagate_load
+ xywh {10 30 395 295} when 0 hide
+ } {
+ Fl_Group {} {
+ callback propagate_load
+ xywh {100 40 295 132}
+ } {
+ Fl_Group {} {
+ callback propagate_load open
+ xywh {100 40 295 20}
+ } {
+ Fl_Input {} {
+ label {Class:}
+ user_data 4
+ callback subclass_cb
+ tooltip {The widget subclass.} xywh {100 40 160 20} textfont 4 resizable
+ }
+ Fl_Choice {} {
+ callback subtype_cb open
+ tooltip {The widget subtype.} xywh {260 40 135 20} box THIN_UP_BOX down_box BORDER_BOX
+ } {}
+ }
+ Fl_Group {} {
+ callback propagate_load open
+ xywh {100 65 295 20}
+ } {
+ Fl_Input {} {
+ label {Name:}
+ callback name_cb
+ tooltip {The name of the widget.} xywh {100 65 230 20} resizable
+ }
+ Fl_Light_Button {} {
+ label public
+ callback name_public_cb
+ tooltip {Make the widget publicly accessible.} xywh {330 65 65 20} selection_color 1 labelsize 10 when 1
+ }
+ }
+ Fl_Input {v_input[0]} {
+ label {Extra Code:}
+ user_data 0
+ callback v_input_cb
+ tooltip {Extra initialization code for the widget.} xywh {100 90 295 20} textfont 4
+ }
+ Fl_Input {v_input[1]} {
+ user_data 1
+ callback v_input_cb
+ tooltip {Extra initialization code for the widget.} xywh {100 110 295 20} textfont 4
+ }
+ Fl_Input {v_input[2]} {
+ user_data 2
+ callback v_input_cb
+ tooltip {Extra initialization code for the widget.} xywh {100 130 295 20} textfont 4
+ }
+ Fl_Input {v_input[3]} {
+ user_data 3
+ callback v_input_cb
+ tooltip {Extra initialization code for the widget.} xywh {100 150 295 20} textfont 4
+ }
+ }
+ Fl_Group {} {
+ callback propagate_load open
+ xywh {100 175 295 90} box DOWN_BOX resizable
+ } {
+ Fl_Text_Editor {} {
+ label {Callback:}
+ callback callback_cb
+ tooltip {The callback function or code for the widget.} xywh {102 177 291 86} box NO_BOX align 4 textfont 4 resizable
+ code0 {o->buffer(new Fl_Text_Buffer());}
+ }
+ }
+ Fl_Box {} {
+ label label
+ xywh {95 325 100 0} hide deactivate
+ }
+ Fl_Group {} {
+ callback propagate_load
+ xywh {100 270 295 45}
+ } {
+ Fl_Group {} {
+ callback propagate_load open
+ xywh {100 270 295 20}
+ } {
+ Fl_Input {} {
+ label {User Data:}
+ callback user_data_cb
+ tooltip {The user data to pass into the callback code.} xywh {100 270 140 20} textfont 4 resizable
+ }
+ Fl_Choice {} {
+ label {When:}
+ callback when_cb open
+ tooltip {When to call the callback function.} xywh {290 270 105 20} box THIN_UP_BOX down_box BORDER_BOX when 1
+ code0 {extern Fl_Menu_Item whenmenu[];}
+ code1 {o->menu(whenmenu);}
+ } {}
+ }
+ Fl_Group {} {
+ callback propagate_load open
+ xywh {100 295 295 20}
+ } {
+ Fl_Input {} {
+ label {Type:}
+ callback user_data_type_cb
+ tooltip {The type of the user data.} xywh {100 295 140 20} textfont 4 resizable
+ }
+ Fl_Light_Button {} {
+ label {No Change}
+ callback when_button_cb
+ tooltip {Call the callback even if the value has not changed.} xywh {290 295 105 20} selection_color 1 labelsize 10
+ }
+ }
+ }
+ }
+ }
+ Fl_Group {} {
+ xywh {10 335 395 25}
+ } {
+ Fl_Button {} {
+ label {No &Overlay}
+ callback overlay_cb
+ tooltip {Hide the widget overlay box.} xywh {50 335 100 25} labelcolor 1
+ }
+ Fl_Button {} {
+ label Revert
+ callback revert_cb
+ xywh {155 335 80 25}
+ }
+ Fl_Button {} {
+ label Cancel
+ callback cancel_cb
+ xywh {325 335 80 25}
+ }
+ Fl_Return_Button {} {
+ label OK
+ callback ok_cb
+ xywh {240 335 80 25}
+ }
+ Fl_Box {} {
+ xywh {12 335 12 25} resizable
+ }
+ }
+ }
+}
diff --git a/fluid/widget_panel.h b/fluid/widget_panel.h index 8451b3c2b..a93f13fac 100644 --- a/fluid/widget_panel.h +++ b/fluid/widget_panel.h @@ -1,9 +1,9 @@ -// generated by Fast Light User Interface Designer (fluid) version 1.0100 +// generated by Fast Light User Interface Designer (fluid) version 1.0102 #ifndef widget_panel_h #define widget_panel_h #include <FL/Fl.H> -#include <FL/Fl_Window.H> +#include <FL/Fl_Double_Window.H> #include <FL/Fl_Tabs.H> #include <FL/Fl_Group.H> extern void propagate_load(Fl_Group*, void*); @@ -35,11 +35,11 @@ extern void shortcut_in_cb(Shortcut_Button*, void*); extern void border_cb(Fl_Light_Button*, void*); extern void modal_cb(Fl_Light_Button*, void*); extern void non_modal_cb(Fl_Light_Button*, void*); +extern void xclass_cb(Fl_Input*, void*); extern void visible_cb(Fl_Light_Button*, void*); extern void active_cb(Fl_Light_Button*, void*); extern void resizable_cb(Fl_Light_Button*, void*); extern void hotspot_cb(Fl_Light_Button*, void*); -extern void xclass_cb(Fl_Input*, void*); extern void tooltip_cb(Fl_Input*, void*); extern Fl_Menu_Item fontmenu[]; extern void labelfont_cb(Fl_Choice*, void*); @@ -53,22 +53,23 @@ extern void color2_cb(Fl_Button*, void*); extern void textfont_cb(Fl_Choice*, void*); extern void textsize_cb(Fl_Value_Input*, void*); extern void textcolor_cb(Fl_Button*, void*); -extern void name_cb(Fl_Input*, void*); -extern void name_public_cb(Fl_Light_Button*, void*); extern void subclass_cb(Fl_Input*, void*); extern void subtype_cb(Fl_Choice*, void*); +extern void name_cb(Fl_Input*, void*); +extern void name_public_cb(Fl_Light_Button*, void*); extern void v_input_cb(Fl_Input*, void*); extern Fl_Input *v_input[4]; -extern void callback_cb(Fl_Input*, void*); +#include <FL/Fl_Text_Editor.H> +extern void callback_cb(Fl_Text_Editor*, void*); extern void user_data_cb(Fl_Input*, void*); -extern void user_data_type_cb(Fl_Input*, void*); extern Fl_Menu_Item whenmenu[]; extern void when_cb(Fl_Choice*, void*); +extern void user_data_type_cb(Fl_Input*, void*); extern void when_button_cb(Fl_Light_Button*, void*); extern void overlay_cb(Fl_Button*, void*); extern void revert_cb(Fl_Button*, void*); extern void cancel_cb(Fl_Button*, void*); #include <FL/Fl_Return_Button.H> extern void ok_cb(Fl_Return_Button*, void*); -Fl_Window* make_widget_panel(); +Fl_Double_Window* make_widget_panel(); #endif |
