summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--CHANGES13
-rw-r--r--FL/Enumerations.H11
-rw-r--r--fluid/about_panel.cxx2
-rw-r--r--fluid/about_panel.fl6
-rw-r--r--fluid/alignment_panel.cxx461
-rw-r--r--fluid/alignment_panel.fl22
-rw-r--r--fluid/alignment_panel.h6
-rw-r--r--fluid/fluid.cxx3
-rw-r--r--fluid/widget_panel.cxx509
-rw-r--r--fluid/widget_panel.fl206
-rw-r--r--fluid/widget_panel.h2
-rw-r--r--src/Fl_Button.cxx10
-rw-r--r--src/Fl_Choice.cxx7
-rw-r--r--src/Fl_Scroll.cxx2
-rw-r--r--src/Fl_Scrollbar.cxx28
-rw-r--r--src/Fl_Slider.cxx42
-rw-r--r--src/Fl_get_system_colors.cxx20
-rw-r--r--src/Makefile3
-rw-r--r--src/fl_boxtype.cxx10
-rw-r--r--src/fl_gtk.cxx134
20 files changed, 864 insertions, 633 deletions
diff --git a/CHANGES b/CHANGES
index dd16b6fb4..f0bec0638 100644
--- a/CHANGES
+++ b/CHANGES
@@ -1,5 +1,6 @@
CHANGES IN FLTK 1.1.8
+ - Added the Bluecurve-inspired scheme "gtk+".
- Implemented alpha blending for WIN32
- Updated documentation (STR #1420, STR #1421)
- Fixed font caching issue (STR #1415)
@@ -9,13 +10,13 @@ CHANGES IN FLTK 1.1.8
- Fixed latin-to-roman text conversion (STR #1411)
- Fixed Cygwin timeout for "select" calls (STR #1151)
- Improved Mac OS X subwindow handling (STR #1402)
- - Fixed more inconsistencies between fl_draw
- and fl_measure (STR #1408)
- - Fixed fl_measure which mistook a trailing '@@'
- for a symbol (STR #1406)
+ - Fixed more inconsistencies between fl_draw and
+ fl_measure (STR #1408)
+ - Fixed fl_measure which mistook a trailing '@@' for a
+ symbol (STR #1406)
- Fixed GLUT behavior on window creation (STR #1403)
- - Fixed OS X bug that would hide tooltips before
- they were shown (STR #1392)
+ - Fixed OS X bug that would hide tooltips before they
+ were shown (STR #1392)
- Fixed Fl_Tabs tooltip reappearing (STR #1324)
- Added a new demo game called "Block Attack!"
- Updated the Sudoku game to show a notice about Hard and
diff --git a/FL/Enumerations.H b/FL/Enumerations.H
index 0ed610131..944efda5c 100644
--- a/FL/Enumerations.H
+++ b/FL/Enumerations.H
@@ -177,6 +177,9 @@ enum Fl_Boxtype { // boxtypes (if you change these you must fix fl_boxtype.C):
_FL_PLASTIC_UP_FRAME, _FL_PLASTIC_DOWN_FRAME,
_FL_PLASTIC_THIN_UP_BOX, _FL_PLASTIC_THIN_DOWN_BOX,
_FL_PLASTIC_ROUND_UP_BOX, _FL_PLASTIC_ROUND_DOWN_BOX,
+ _FL_GTK_UP_BOX, _FL_GTK_DOWN_BOX,
+ _FL_GTK_UP_FRAME, _FL_GTK_DOWN_FRAME,
+ _FL_GTK_ROUND_UP_BOX, _FL_GTK_ROUND_DOWN_BOX,
FL_FREE_BOXTYPE
};
extern FL_EXPORT Fl_Boxtype fl_define_FL_ROUND_UP_BOX();
@@ -211,6 +214,14 @@ extern FL_EXPORT Fl_Boxtype fl_define_FL_PLASTIC_UP_BOX();
#define FL_PLASTIC_ROUND_UP_BOX (Fl_Boxtype)(fl_define_FL_PLASTIC_UP_BOX()+6)
#define FL_PLASTIC_ROUND_DOWN_BOX (Fl_Boxtype)(fl_define_FL_PLASTIC_UP_BOX()+7)
+extern FL_EXPORT Fl_Boxtype fl_define_FL_GTK_UP_BOX();
+#define FL_GTK_UP_BOX fl_define_FL_GTK_UP_BOX()
+#define FL_GTK_DOWN_BOX (Fl_Boxtype)(fl_define_FL_GTK_UP_BOX()+1)
+#define FL_GTK_UP_FRAME (Fl_Boxtype)(fl_define_FL_GTK_UP_BOX()+2)
+#define FL_GTK_DOWN_FRAME (Fl_Boxtype)(fl_define_FL_GTK_UP_BOX()+3)
+#define FL_GTK_ROUND_UP_BOX (Fl_Boxtype)(fl_define_FL_GTK_UP_BOX()+4)
+#define FL_GTK_ROUND_DOWN_BOX (Fl_Boxtype)(fl_define_FL_GTK_UP_BOX()+5)
+
// conversions of box types to other boxtypes:
inline Fl_Boxtype fl_down(Fl_Boxtype b) {return (Fl_Boxtype)(b|1);}
inline Fl_Boxtype fl_frame(Fl_Boxtype b) {return (Fl_Boxtype)(b|2);}
diff --git a/fluid/about_panel.cxx b/fluid/about_panel.cxx
index 1eae20921..41b429629 100644
--- a/fluid/about_panel.cxx
+++ b/fluid/about_panel.cxx
@@ -278,7 +278,7 @@ Fl_Double_Window* make_about_panel() {
{ Fl_Box* o = new Fl_Box(10, 10, 115, 120);
o->image(image_fluid);
} // Fl_Box* o
- { Fl_Box* o = new Fl_Box(135, 10, 170, 69, "FLTK User\nInterface Designer\nVersion 1.1.7");
+ { Fl_Box* o = new Fl_Box(135, 10, 170, 69, "FLTK User\nInterface Designer\nVersion 1.1.8");
o->color((Fl_Color)12);
o->selection_color(FL_DARK1);
o->labelfont(1);
diff --git a/fluid/about_panel.fl b/fluid/about_panel.fl
index af0cfb98e..dab44cc68 100644
--- a/fluid/about_panel.fl
+++ b/fluid/about_panel.fl
@@ -1,5 +1,5 @@
# data file for the Fltk User Interface Designer (fluid)
-version 1.0107
+version 1.0108
header_name {.h}
code_name {.cxx}
comment {//
@@ -28,7 +28,7 @@ comment {//
//
// http://www.fltk.org/str.php
//
-} {selected in_source in_header
+} {in_source in_header
}
decl {void show_help(const char *name);} {public
@@ -46,7 +46,7 @@ Function {make_about_panel()} {open
Fl_Box {} {
label {FLTK User
Interface Designer
-Version 1.1.7}
+Version 1.1.8} selected
xywh {135 10 170 69} color 12 selection_color 47 labelfont 1 labelsize 18 align 21
}
Fl_Box {} {
diff --git a/fluid/alignment_panel.cxx b/fluid/alignment_panel.cxx
index b0e089276..c4e253350 100644
--- a/fluid/alignment_panel.cxx
+++ b/fluid/alignment_panel.cxx
@@ -25,7 +25,7 @@
// http://www.fltk.org/str.php
//
-// generated by Fast Light User Interface Designer (fluid) version 1.0107
+// generated by Fast Light User Interface Designer (fluid) version 1.0108
#include "alignment_panel.h"
@@ -59,112 +59,110 @@ Fl_Input *i18n_set_input=(Fl_Input *)0;
Fl_Input *i18n_function_input=(Fl_Input *)0;
Fl_Double_Window* make_project_window() {
- Fl_Double_Window* w;
- { Fl_Double_Window* o = project_window = new Fl_Double_Window(345, 185, "Project Settings");
- w = o;
- { Fl_Button* o = new Fl_Button(293, 156, 42, 20, "Close");
+ { project_window = new Fl_Double_Window(345, 190, "Project Settings");
+ { Fl_Button* o = new Fl_Button(293, 160, 42, 20, "Close");
o->tooltip("Close this dialog.");
o->labelsize(11);
o->callback((Fl_Callback*)cb_Close);
- }
- { Fl_Tabs* o = new Fl_Tabs(10, 10, 325, 138);
- o->selection_color((Fl_Color)4);
+ } // Fl_Button* o
+ { Fl_Tabs* o = new Fl_Tabs(10, 10, 325, 140);
+ o->selection_color((Fl_Color)12);
o->labelsize(11);
{ Fl_Group* o = new Fl_Group(10, 30, 325, 116, "Output");
o->labelsize(11);
{ Fl_Box* o = new Fl_Box(20, 40, 304, 15, "Use \"name.ext\" to set name or just \".ext\" to set extension.");
o->labelsize(11);
o->align(132|FL_ALIGN_INSIDE);
- }
- { Fl_Input* o = header_file_input = new Fl_Input(96, 60, 228, 20, "Header File:");
- o->tooltip("The name of the generated header file.");
- o->box(FL_THIN_DOWN_BOX);
- o->labelfont(1);
- o->labelsize(11);
- o->textfont(4);
- o->textsize(11);
- o->callback((Fl_Callback*)header_input_cb, (void*)(1));
- o->when(FL_WHEN_CHANGED);
- }
- { Fl_Input* o = code_file_input = new Fl_Input(97, 85, 227, 20, "Code File:");
- o->tooltip("The name of the generated code file.");
- o->box(FL_THIN_DOWN_BOX);
- o->labelfont(1);
- o->labelsize(11);
- o->textfont(4);
- o->textsize(11);
- o->callback((Fl_Callback*)code_input_cb, (void*)(1));
- o->when(FL_WHEN_CHANGED);
- }
- { Fl_Light_Button* o = include_H_from_C_button = new Fl_Light_Button(166, 110, 158, 20, "Include Header from Code");
- o->tooltip("Include the header file from the code file.");
- o->value(1);
- o->labelsize(11);
- o->callback((Fl_Callback*)include_H_from_C_button_cb);
- }
+ } // Fl_Box* o
+ { header_file_input = new Fl_Input(96, 60, 228, 20, "Header File:");
+ header_file_input->tooltip("The name of the generated header file.");
+ header_file_input->box(FL_THIN_DOWN_BOX);
+ header_file_input->labelfont(1);
+ header_file_input->labelsize(11);
+ header_file_input->textfont(4);
+ header_file_input->textsize(11);
+ header_file_input->callback((Fl_Callback*)header_input_cb, (void*)(1));
+ header_file_input->when(FL_WHEN_CHANGED);
+ } // Fl_Input* header_file_input
+ { code_file_input = new Fl_Input(97, 85, 227, 20, "Code File:");
+ code_file_input->tooltip("The name of the generated code file.");
+ code_file_input->box(FL_THIN_DOWN_BOX);
+ code_file_input->labelfont(1);
+ code_file_input->labelsize(11);
+ code_file_input->textfont(4);
+ code_file_input->textsize(11);
+ code_file_input->callback((Fl_Callback*)code_input_cb, (void*)(1));
+ code_file_input->when(FL_WHEN_CHANGED);
+ } // Fl_Input* code_file_input
+ { include_H_from_C_button = new Fl_Light_Button(166, 110, 158, 20, "Include Header from Code");
+ include_H_from_C_button->tooltip("Include the header file from the code file.");
+ include_H_from_C_button->value(1);
+ include_H_from_C_button->labelsize(11);
+ include_H_from_C_button->callback((Fl_Callback*)include_H_from_C_button_cb);
+ } // Fl_Light_Button* include_H_from_C_button
o->end();
- }
+ } // Fl_Group* o
{ Fl_Group* o = new Fl_Group(10, 30, 325, 116, "Internationalization");
o->labelsize(11);
o->hide();
- { Fl_Choice* o = i18n_type_chooser = new Fl_Choice(80, 42, 100, 20, "Use:");
- o->tooltip("Type of internationalization to use.");
- o->box(FL_THIN_UP_BOX);
- o->down_box(FL_BORDER_BOX);
- o->labelfont(1);
- o->labelsize(11);
- o->textsize(11);
- o->callback((Fl_Callback*)i18n_type_cb);
- o->menu(menu_i18n_type_chooser);
- }
- { Fl_Input* o = i18n_include_input = new Fl_Input(80, 67, 245, 20, "#include:");
- o->tooltip("The include file for internationalization.");
- o->box(FL_THIN_DOWN_BOX);
- o->labelfont(1);
- o->labelsize(11);
- o->textfont(4);
- o->textsize(11);
- o->callback((Fl_Callback*)i18n_text_cb);
- }
- { Fl_Input* o = i18n_file_input = new Fl_Input(80, 92, 245, 20, "File:");
- o->tooltip("The name of the message catalog.");
- o->box(FL_THIN_DOWN_BOX);
- o->labelfont(1);
- o->labelsize(11);
- o->textfont(4);
- o->textsize(11);
- o->callback((Fl_Callback*)i18n_text_cb);
- }
- { Fl_Input* o = i18n_set_input = new Fl_Input(80, 117, 245, 20, "Set:");
- o->tooltip("The message set number.");
- o->type(2);
- o->box(FL_THIN_DOWN_BOX);
- o->labelfont(1);
- o->labelsize(11);
- o->textfont(4);
- o->textsize(11);
- o->callback((Fl_Callback*)i18n_text_cb);
- }
- { Fl_Input* o = i18n_function_input = new Fl_Input(80, 92, 245, 20, "Function:");
- o->tooltip("The function to call to internationalize the labels and tooltips.");
- o->box(FL_THIN_DOWN_BOX);
- o->labelfont(1);
- o->labelsize(11);
- o->textfont(4);
- o->textsize(11);
- o->callback((Fl_Callback*)i18n_text_cb);
- }
+ { i18n_type_chooser = new Fl_Choice(80, 42, 100, 20, "Use:");
+ i18n_type_chooser->tooltip("Type of internationalization to use.");
+ i18n_type_chooser->box(FL_THIN_UP_BOX);
+ i18n_type_chooser->down_box(FL_BORDER_BOX);
+ i18n_type_chooser->labelfont(1);
+ i18n_type_chooser->labelsize(11);
+ i18n_type_chooser->textsize(11);
+ i18n_type_chooser->callback((Fl_Callback*)i18n_type_cb);
+ i18n_type_chooser->menu(menu_i18n_type_chooser);
+ } // Fl_Choice* i18n_type_chooser
+ { i18n_include_input = new Fl_Input(80, 67, 245, 20, "#include:");
+ i18n_include_input->tooltip("The include file for internationalization.");
+ i18n_include_input->box(FL_THIN_DOWN_BOX);
+ i18n_include_input->labelfont(1);
+ i18n_include_input->labelsize(11);
+ i18n_include_input->textfont(4);
+ i18n_include_input->textsize(11);
+ i18n_include_input->callback((Fl_Callback*)i18n_text_cb);
+ } // Fl_Input* i18n_include_input
+ { i18n_file_input = new Fl_Input(80, 92, 245, 20, "File:");
+ i18n_file_input->tooltip("The name of the message catalog.");
+ i18n_file_input->box(FL_THIN_DOWN_BOX);
+ i18n_file_input->labelfont(1);
+ i18n_file_input->labelsize(11);
+ i18n_file_input->textfont(4);
+ i18n_file_input->textsize(11);
+ i18n_file_input->callback((Fl_Callback*)i18n_text_cb);
+ } // Fl_Input* i18n_file_input
+ { i18n_set_input = new Fl_Input(80, 117, 245, 20, "Set:");
+ i18n_set_input->tooltip("The message set number.");
+ i18n_set_input->type(2);
+ i18n_set_input->box(FL_THIN_DOWN_BOX);
+ i18n_set_input->labelfont(1);
+ i18n_set_input->labelsize(11);
+ i18n_set_input->textfont(4);
+ i18n_set_input->textsize(11);
+ i18n_set_input->callback((Fl_Callback*)i18n_text_cb);
+ } // Fl_Input* i18n_set_input
+ { i18n_function_input = new Fl_Input(80, 92, 245, 20, "Function:");
+ i18n_function_input->tooltip("The function to call to internationalize the labels and tooltips.");
+ i18n_function_input->box(FL_THIN_DOWN_BOX);
+ i18n_function_input->labelfont(1);
+ i18n_function_input->labelsize(11);
+ i18n_function_input->textfont(4);
+ i18n_function_input->textsize(11);
+ i18n_function_input->callback((Fl_Callback*)i18n_text_cb);
+ } // Fl_Input* i18n_function_input
o->end();
- }
+ } // Fl_Group* o
o->end();
- }
- o->set_modal();
- o->end();
- }
- return w;
+ } // Fl_Tabs* o
+ project_window->set_modal();
+ project_window->end();
+ } // Fl_Double_Window* project_window
+ return project_window;
}
-Fl_Text_Buffer *shell_run_buffer;
-void scheme_cb(Fl_Choice *, void *);
+Fl_Text_Buffer *shell_run_buffer;
+void scheme_cb(Fl_Choice *, void *);
Fl_Double_Window *settings_window=(Fl_Double_Window *)0;
@@ -174,6 +172,7 @@ Fl_Menu_Item menu_scheme_choice[] = {
{"Default", 0, 0, 0, 0, FL_NORMAL_LABEL, 0, 14, 0},
{"None", 0, 0, 0, 0, FL_NORMAL_LABEL, 0, 14, 0},
{"Plastic", 0, 0, 0, 0, FL_NORMAL_LABEL, 0, 14, 0},
+ {"GTK+", 0, 0, 0, 0, FL_NORMAL_LABEL, 0, 14, 0},
{0,0,0,0,0,0,0,0,0}
};
@@ -214,70 +213,69 @@ load_history();
}
Fl_Double_Window* make_settings_window() {
- Fl_Double_Window* w;
- { Fl_Double_Window* o = settings_window = new Fl_Double_Window(340, 225, "GUI Settings");
- w = o;
- { Fl_Choice* o = scheme_choice = new Fl_Choice(116, 10, 115, 25, "Scheme:");
- o->down_box(FL_BORDER_BOX);
- o->labelfont(1);
- o->callback((Fl_Callback*)scheme_cb);
- o->menu(menu_scheme_choice);
+ { settings_window = new Fl_Double_Window(340, 225, "GUI Settings");
+ { scheme_choice = new Fl_Choice(116, 10, 115, 25, "Scheme:");
+ scheme_choice->down_box(FL_BORDER_BOX);
+ scheme_choice->labelfont(1);
+ scheme_choice->callback((Fl_Callback*)scheme_cb);
+ scheme_choice->menu(menu_scheme_choice);
int s;
fluid_prefs.get("scheme", s, 0);
scheme_choice->value(s);
scheme_cb(0, 0);
- }
+ } // Fl_Choice* scheme_choice
{ Fl_Group* o = new Fl_Group(116, 45, 215, 100, "Options:\n\n\n\n\n");
o->labelfont(1);
o->align(FL_ALIGN_LEFT);
- { Fl_Check_Button* o = tooltips_button = new Fl_Check_Button(116, 45, 113, 25, "Show Tooltips");
- o->down_box(FL_DOWN_BOX);
- o->callback((Fl_Callback*)cb_tooltips_button);
+ { tooltips_button = new Fl_Check_Button(116, 45, 113, 25, "Show Tooltips");
+ tooltips_button->down_box(FL_DOWN_BOX);
+ tooltips_button->callback((Fl_Callback*)cb_tooltips_button);
int b;
fluid_prefs.get("show_tooltips", b, 1);
tooltips_button->value(b);
Fl_Tooltip::enable(b);
- }
- { Fl_Check_Button* o = completion_button = new Fl_Check_Button(116, 70, 186, 25, "Show Completion Dialogs");
- o->down_box(FL_DOWN_BOX);
- o->callback((Fl_Callback*)cb_completion_button);
+ } // Fl_Check_Button* tooltips_button
+ { completion_button = new Fl_Check_Button(116, 70, 186, 25, "Show Completion Dialogs");
+ completion_button->down_box(FL_DOWN_BOX);
+ completion_button->callback((Fl_Callback*)cb_completion_button);
int b;
fluid_prefs.get("show_completion_dialogs", b, 1);
completion_button->value(b);
- }
- { Fl_Check_Button* o = openlast_button = new Fl_Check_Button(116, 95, 215, 25, "Open Previous File on Startup");
- o->down_box(FL_DOWN_BOX);
- o->callback((Fl_Callback*)cb_openlast_button);
+ } // Fl_Check_Button* completion_button
+ { openlast_button = new Fl_Check_Button(116, 95, 215, 25, "Open Previous File on Startup");
+ openlast_button->down_box(FL_DOWN_BOX);
+ openlast_button->callback((Fl_Callback*)cb_openlast_button);
int b;
fluid_prefs.get("open_previous_file", b, 0);
openlast_button->value(b);
- }
- { Fl_Check_Button* o = prevpos_button = new Fl_Check_Button(116, 120, 210, 25, "Remember Window Positions");
- o->down_box(FL_DOWN_BOX);
- o->callback((Fl_Callback*)cb_prevpos_button);
+ } // Fl_Check_Button* openlast_button
+ { prevpos_button = new Fl_Check_Button(116, 120, 210, 25, "Remember Window Positions");
+ prevpos_button->down_box(FL_DOWN_BOX);
+ prevpos_button->callback((Fl_Callback*)cb_prevpos_button);
int b;
fluid_prefs.get("prev_window_pos", b, 1);
prevpos_button->value(b);
- }
+ } // Fl_Check_Button* prevpos_button
o->end();
- }
+ } // Fl_Group* o
{ Fl_Button* o = new Fl_Button(266, 190, 64, 25, "Close");
o->tooltip("Close this dialog.");
o->callback((Fl_Callback*)cb_Close1);
- }
- { Fl_Spinner* o = recent_spinner = new Fl_Spinner(116, 155, 40, 25, "# Recent Files:");
- o->labelfont(1);
- o->callback((Fl_Callback*)cb_recent_spinner);
- o->when(FL_WHEN_CHANGED);
+ } // Fl_Button* o
+ { recent_spinner = new Fl_Spinner(116, 155, 40, 25, "# Recent Files:");
+ recent_spinner->labelfont(1);
+ recent_spinner->value(1);
+ recent_spinner->callback((Fl_Callback*)cb_recent_spinner);
+ recent_spinner->when(FL_WHEN_CHANGED);
int c;
fluid_prefs.get("recent_files", c, 5);
recent_spinner->maximum(10);
recent_spinner->value(c);
- }
- o->set_non_modal();
- o->end();
- }
- return w;
+ } // Fl_Spinner* recent_spinner
+ settings_window->set_non_modal();
+ settings_window->end();
+ } // Fl_Double_Window* settings_window
+ return settings_window;
}
Fl_Double_Window *shell_window=(Fl_Double_Window *)0;
@@ -321,61 +319,58 @@ static void cb_shell_run_button(Fl_Return_Button*, void*) {
}
Fl_Double_Window* make_shell_window() {
- Fl_Double_Window* w;
- { Fl_Double_Window* o = shell_window = new Fl_Double_Window(365, 125, "Shell Command");
- w = o;
- { Fl_Input* o = shell_command_input = new Fl_Input(10, 27, 347, 25, "Command:");
- o->labelfont(1);
- o->callback((Fl_Callback*)cb_shell_command_input);
- o->align(FL_ALIGN_TOP_LEFT);
+ { shell_window = new Fl_Double_Window(365, 125, "Shell Command");
+ { shell_command_input = new Fl_Input(10, 27, 347, 25, "Command:");
+ shell_command_input->labelfont(1);
+ shell_command_input->callback((Fl_Callback*)cb_shell_command_input);
+ shell_command_input->align(FL_ALIGN_TOP_LEFT);
char buf[1024];
fluid_prefs.get("shell_command", buf, "", sizeof(buf));
shell_command_input->value(buf);
- }
- { Fl_Check_Button* o = shell_writecode_button = new Fl_Check_Button(128, 61, 93, 19, "Write Code");
- o->down_box(FL_DOWN_BOX);
- o->callback((Fl_Callback*)cb_shell_writecode_button);
+ } // Fl_Input* shell_command_input
+ { shell_writecode_button = new Fl_Check_Button(128, 61, 93, 19, "Write Code");
+ shell_writecode_button->down_box(FL_DOWN_BOX);
+ shell_writecode_button->callback((Fl_Callback*)cb_shell_writecode_button);
int b;
fluid_prefs.get("shell_writecode", b, 1);
shell_writecode_button->value(b);
- }
- { Fl_Check_Button* o = shell_writemsgs_button = new Fl_Check_Button(231, 61, 126, 19, "Write Messages");
- o->down_box(FL_DOWN_BOX);
- o->callback((Fl_Callback*)cb_shell_writemsgs_button);
+ } // Fl_Check_Button* shell_writecode_button
+ { shell_writemsgs_button = new Fl_Check_Button(231, 61, 126, 19, "Write Messages");
+ shell_writemsgs_button->down_box(FL_DOWN_BOX);
+ shell_writemsgs_button->callback((Fl_Callback*)cb_shell_writemsgs_button);
int b;
fluid_prefs.get("shell_writemsgs", b, 0);
shell_writemsgs_button->value(b);
- }
- { Fl_Check_Button* o = shell_savefl_button = new Fl_Check_Button(10, 62, 108, 19, "Save .FL File");
- o->down_box(FL_DOWN_BOX);
- o->callback((Fl_Callback*)cb_shell_savefl_button);
+ } // Fl_Check_Button* shell_writemsgs_button
+ { shell_savefl_button = new Fl_Check_Button(10, 62, 108, 19, "Save .FL File");
+ shell_savefl_button->down_box(FL_DOWN_BOX);
+ shell_savefl_button->callback((Fl_Callback*)cb_shell_savefl_button);
int b;
fluid_prefs.get("shell_savefl", b, 1);
shell_savefl_button->value(b);
- }
+ } // Fl_Check_Button* shell_savefl_button
{ Fl_Return_Button* o = new Fl_Return_Button(132, 90, 143, 25, "Run Command");
o->callback((Fl_Callback*)do_shell_command);
- }
+ } // Fl_Return_Button* o
{ Fl_Button* o = new Fl_Button(285, 90, 72, 25, "Cancel");
o->callback((Fl_Callback*)cb_Cancel);
- }
- o->end();
- }
- { Fl_Double_Window* o = shell_run_window = new Fl_Double_Window(555, 430, "Shell Command Output");
- w = o;
- { Fl_Text_Display* o = shell_run_display = new Fl_Text_Display(10, 10, 535, 375);
- o->box(FL_DOWN_BOX);
- o->textfont(4);
- Fl_Group::current()->resizable(o);
+ } // Fl_Button* o
+ shell_window->end();
+ } // Fl_Double_Window* shell_window
+ { shell_run_window = new Fl_Double_Window(555, 430, "Shell Command Output");
+ { shell_run_display = new Fl_Text_Display(10, 10, 535, 375);
+ shell_run_display->box(FL_DOWN_BOX);
+ shell_run_display->textfont(4);
+ Fl_Group::current()->resizable(shell_run_display);
shell_run_buffer = new Fl_Text_Buffer();
shell_run_display->buffer(shell_run_buffer);
- }
- { Fl_Return_Button* o = shell_run_button = new Fl_Return_Button(468, 395, 77, 25, "Close");
- o->callback((Fl_Callback*)cb_shell_run_button);
- }
- o->end();
- }
- return w;
+ } // Fl_Text_Display* shell_run_display
+ { shell_run_button = new Fl_Return_Button(468, 395, 77, 25, "Close");
+ shell_run_button->callback((Fl_Callback*)cb_shell_run_button);
+ } // Fl_Return_Button* shell_run_button
+ shell_run_window->end();
+ } // Fl_Double_Window* shell_run_window
+ return shell_run_window;
}
Fl_Double_Window *grid_window=(Fl_Double_Window *)0;
@@ -395,110 +390,108 @@ static void cb_Close2(Fl_Button*, void*) {
Fl_Round_Button *def_widget_size[6]={(Fl_Round_Button *)0};
Fl_Double_Window* make_layout_window() {
- Fl_Double_Window* w;
- { Fl_Double_Window* o = grid_window = new Fl_Double_Window(285, 245, "Layout Settings");
- w = o;
+ { grid_window = new Fl_Double_Window(285, 245, "Layout Settings");
{ Fl_Input* o = horizontal_input = new Fl_Input(106, 10, 50, 25, "x");
- o->tooltip("Horizontal grid spacing.");
- o->type(2);
- o->box(FL_THIN_DOWN_BOX);
- o->callback((Fl_Callback*)grid_cb, (void*)(1));
- o->align(FL_ALIGN_RIGHT);
+ horizontal_input->tooltip("Horizontal grid spacing.");
+ horizontal_input->type(2);
+ horizontal_input->box(FL_THIN_DOWN_BOX);
+ horizontal_input->callback((Fl_Callback*)grid_cb, (void*)(1));
+ horizontal_input->align(FL_ALIGN_RIGHT);
o->when(FL_WHEN_RELEASE|FL_WHEN_ENTER_KEY);
- }
+ } // Fl_Input* horizontal_input
{ Fl_Input* o = vertical_input = new Fl_Input(166, 10, 50, 25, "pixels");
- o->tooltip("Vertical grid spacing.");
- o->type(2);
- o->box(FL_THIN_DOWN_BOX);
- o->callback((Fl_Callback*)grid_cb, (void*)(2));
- o->align(FL_ALIGN_RIGHT);
+ vertical_input->tooltip("Vertical grid spacing.");
+ vertical_input->type(2);
+ vertical_input->box(FL_THIN_DOWN_BOX);
+ vertical_input->callback((Fl_Callback*)grid_cb, (void*)(2));
+ vertical_input->align(FL_ALIGN_RIGHT);
o->when(FL_WHEN_RELEASE|FL_WHEN_ENTER_KEY);
- }
+ } // Fl_Input* vertical_input
{ Fl_Input* o = snap_input = new Fl_Input(106, 45, 50, 25, "pixel snap");
- o->tooltip("Snap to grid within this many pixels.");
- o->type(2);
- o->box(FL_THIN_DOWN_BOX);
- o->callback((Fl_Callback*)grid_cb, (void*)(3));
- o->align(FL_ALIGN_RIGHT);
+ snap_input->tooltip("Snap to grid within this many pixels.");
+ snap_input->type(2);
+ snap_input->box(FL_THIN_DOWN_BOX);
+ snap_input->callback((Fl_Callback*)grid_cb, (void*)(3));
+ snap_input->align(FL_ALIGN_RIGHT);
o->when(FL_WHEN_RELEASE|FL_WHEN_ENTER_KEY);
- }
- { Fl_Check_Button* o = guides_toggle = new Fl_Check_Button(106, 80, 110, 25, "Show Guides");
- o->tooltip("Show distance and alignment guides in overlay");
- o->down_box(FL_DOWN_BOX);
- o->callback((Fl_Callback*)guides_cb, (void*)(4));
- }
+ } // Fl_Input* snap_input
+ { guides_toggle = new Fl_Check_Button(106, 80, 110, 25, "Show Guides");
+ guides_toggle->tooltip("Show distance and alignment guides in overlay");
+ guides_toggle->down_box(FL_DOWN_BOX);
+ guides_toggle->callback((Fl_Callback*)guides_cb, (void*)(4));
+ } // Fl_Check_Button* guides_toggle
{ Fl_Button* o = new Fl_Button(215, 210, 60, 25, "Close");
o->tooltip("Close this dialog.");
o->callback((Fl_Callback*)cb_Close2);
- }
+ } // Fl_Button* o
{ Fl_Box* o = new Fl_Box(26, 10, 70, 25, "Grid:");
o->labelfont(1);
o->align(FL_ALIGN_RIGHT|FL_ALIGN_INSIDE);
- }
+ } // Fl_Box* o
{ Fl_Box* o = new Fl_Box(-1, 115, 97, 25, "Widget Size:");
o->labelfont(1);
o->align(FL_ALIGN_RIGHT|FL_ALIGN_INSIDE);
- }
+ } // Fl_Box* o
{ Fl_Group* o = new Fl_Group(105, 115, 170, 75);
- { Fl_Round_Button* o = def_widget_size[0] = new Fl_Round_Button(105, 115, 70, 25);
- o->type(102);
- o->down_box(FL_ROUND_DOWN_BOX);
- o->callback((Fl_Callback*)default_widget_size_cb, (void*)(8));
- }
+ { def_widget_size[0] = new Fl_Round_Button(105, 115, 70, 25);
+ def_widget_size[0]->type(102);
+ def_widget_size[0]->down_box(FL_ROUND_DOWN_BOX);
+ def_widget_size[0]->callback((Fl_Callback*)default_widget_size_cb, (void*)(8));
+ } // Fl_Round_Button* def_widget_size[0]
{ Fl_Box* o = new Fl_Box(120, 115, 50, 25, "tiny");
o->labelsize(8);
o->align(FL_ALIGN_LEFT|FL_ALIGN_INSIDE);
- }
- { Fl_Round_Button* o = def_widget_size[1] = new Fl_Round_Button(180, 115, 70, 25);
- o->type(102);
- o->down_box(FL_ROUND_DOWN_BOX);
- o->callback((Fl_Callback*)default_widget_size_cb, (void*)(11));
- }
+ } // Fl_Box* o
+ { def_widget_size[1] = new Fl_Round_Button(180, 115, 70, 25);
+ def_widget_size[1]->type(102);
+ def_widget_size[1]->down_box(FL_ROUND_DOWN_BOX);
+ def_widget_size[1]->callback((Fl_Callback*)default_widget_size_cb, (void*)(11));
+ } // Fl_Round_Button* def_widget_size[1]
{ Fl_Box* o = new Fl_Box(195, 115, 50, 25, "small");
o->labelsize(11);
o->align(FL_ALIGN_LEFT|FL_ALIGN_INSIDE);
- }
- { Fl_Round_Button* o = def_widget_size[2] = new Fl_Round_Button(105, 140, 70, 25);
- o->type(102);
- o->down_box(FL_ROUND_DOWN_BOX);
- o->callback((Fl_Callback*)default_widget_size_cb, (void*)(14));
- }
+ } // Fl_Box* o
+ { def_widget_size[2] = new Fl_Round_Button(105, 140, 70, 25);
+ def_widget_size[2]->type(102);
+ def_widget_size[2]->down_box(FL_ROUND_DOWN_BOX);
+ def_widget_size[2]->callback((Fl_Callback*)default_widget_size_cb, (void*)(14));
+ } // Fl_Round_Button* def_widget_size[2]
{ Fl_Box* o = new Fl_Box(120, 140, 50, 25, "normal");
o->align(FL_ALIGN_LEFT|FL_ALIGN_INSIDE);
- }
- { Fl_Round_Button* o = def_widget_size[3] = new Fl_Round_Button(180, 140, 90, 25);
- o->type(102);
- o->down_box(FL_ROUND_DOWN_BOX);
- o->callback((Fl_Callback*)default_widget_size_cb, (void*)(18));
- }
+ } // Fl_Box* o
+ { def_widget_size[3] = new Fl_Round_Button(180, 140, 90, 25);
+ def_widget_size[3]->type(102);
+ def_widget_size[3]->down_box(FL_ROUND_DOWN_BOX);
+ def_widget_size[3]->callback((Fl_Callback*)default_widget_size_cb, (void*)(18));
+ } // Fl_Round_Button* def_widget_size[3]
{ Fl_Box* o = new Fl_Box(195, 140, 68, 25, "medium");
o->labelsize(18);
o->align(FL_ALIGN_LEFT|FL_ALIGN_INSIDE);
- }
- { Fl_Round_Button* o = def_widget_size[4] = new Fl_Round_Button(105, 165, 75, 25);
- o->type(102);
- o->down_box(FL_ROUND_DOWN_BOX);
- o->callback((Fl_Callback*)default_widget_size_cb, (void*)(24));
- }
+ } // Fl_Box* o
+ { def_widget_size[4] = new Fl_Round_Button(105, 165, 75, 25);
+ def_widget_size[4]->type(102);
+ def_widget_size[4]->down_box(FL_ROUND_DOWN_BOX);
+ def_widget_size[4]->callback((Fl_Callback*)default_widget_size_cb, (void*)(24));
+ } // Fl_Round_Button* def_widget_size[4]
{ Fl_Box* o = new Fl_Box(120, 165, 64, 25, "large");
o->labelsize(24);
o->align(FL_ALIGN_LEFT|FL_ALIGN_INSIDE);
- }
- { Fl_Round_Button* o = def_widget_size[5] = new Fl_Round_Button(180, 165, 95, 25);
- o->type(102);
- o->down_box(FL_ROUND_DOWN_BOX);
- o->callback((Fl_Callback*)default_widget_size_cb, (void*)(32));
- }
+ } // Fl_Box* o
+ { def_widget_size[5] = new Fl_Round_Button(180, 165, 95, 25);
+ def_widget_size[5]->type(102);
+ def_widget_size[5]->down_box(FL_ROUND_DOWN_BOX);
+ def_widget_size[5]->callback((Fl_Callback*)default_widget_size_cb, (void*)(32));
+ } // Fl_Round_Button* def_widget_size[5]
{ Fl_Box* o = new Fl_Box(195, 165, 76, 25, "huge");
o->labelsize(32);
o->align(FL_ALIGN_LEFT|FL_ALIGN_INSIDE);
- }
+ } // Fl_Box* o
o->end();
- }
- o->set_non_modal();
- o->end();
- }
- return w;
+ } // Fl_Group* o
+ grid_window->set_non_modal();
+ grid_window->end();
+ } // Fl_Double_Window* grid_window
+ return grid_window;
}
//
diff --git a/fluid/alignment_panel.fl b/fluid/alignment_panel.fl
index dc7ad3ee1..d8a38e53f 100644
--- a/fluid/alignment_panel.fl
+++ b/fluid/alignment_panel.fl
@@ -1,5 +1,5 @@
# data file for the Fltk User Interface Designer (fluid)
-version 1.0107
+version 1.0108
header_name {.h}
code_name {.cxx}
comment {//
@@ -44,17 +44,17 @@ Function {make_project_window()} {open
} {
Fl_Window project_window {
label {Project Settings}
- xywh {312 395 345 185} type Double
+ xywh {312 395 345 190} type Double
code0 {\#include <FL/Fl_Preferences.H>}
code1 {\#include <FL/Fl_Tooltip.H>} modal visible
} {
Fl_Button {} {
label Close
callback {project_window->hide();}
- tooltip {Close this dialog.} xywh {293 156 42 20} labelsize 11
+ tooltip {Close this dialog.} xywh {293 160 42 20} labelsize 11
}
Fl_Tabs {} {open
- xywh {10 10 325 138} selection_color 4 labelsize 11
+ xywh {10 10 325 140} selection_color 12 labelsize 11
} {
Fl_Group {} {
label Output open
@@ -144,12 +144,12 @@ decl {void scheme_cb(Fl_Choice *, void *);} {public
Function {make_settings_window()} {open
} {
Fl_Window settings_window {
- label {GUI Settings}
+ label {GUI Settings} open
xywh {326 145 340 225} type Double non_modal visible
} {
Fl_Choice scheme_choice {
label {Scheme:}
- callback scheme_cb
+ callback scheme_cb open
xywh {116 10 115 25} down_box BORDER_BOX labelfont 1
code0 {int s;}
code1 {fluid_prefs.get("scheme", s, 0);}
@@ -168,6 +168,10 @@ Function {make_settings_window()} {open
label Plastic
xywh {0 0 35 25}
}
+ MenuItem {} {
+ label {GTK+}
+ xywh {10 10 35 25}
+ }
}
Fl_Group {} {
label {Options:
@@ -222,7 +226,7 @@ fluid_prefs.set("show_tooltips", tooltips_button->value());}
label {\# Recent Files:}
callback {fluid_prefs.set("recent_files", recent_spinner->value());
load_history();}
- xywh {116 155 40 25} labelfont 1 when 1
+ xywh {116 155 40 25} labelfont 1 when 1 value 1
code0 {int c;}
code1 {fluid_prefs.get("recent_files", c, 5);}
code2 {recent_spinner->maximum(10);}
@@ -276,7 +280,7 @@ Function {make_shell_window()} {open
}
Fl_Button {} {
label Cancel
- callback {shell_window->hide();}
+ callback {shell_window->hide();} selected
xywh {285 90 72 25}
}
}
@@ -300,7 +304,7 @@ Function {make_shell_window()} {open
Function {make_layout_window()} {open
} {
Fl_Window grid_window {
- label {Layout Settings} selected
+ label {Layout Settings}
xywh {676 337 285 245} type Double non_modal visible
} {
Fl_Input horizontal_input {
diff --git a/fluid/alignment_panel.h b/fluid/alignment_panel.h
index a02bd462c..fb2c96ace 100644
--- a/fluid/alignment_panel.h
+++ b/fluid/alignment_panel.h
@@ -25,7 +25,7 @@
// http://www.fltk.org/str.php
//
-// generated by Fast Light User Interface Designer (fluid) version 1.0107
+// generated by Fast Light User Interface Designer (fluid) version 1.0108
#ifndef alignment_panel_h
#define alignment_panel_h
@@ -61,8 +61,8 @@ Fl_Double_Window* make_project_window();
extern Fl_Menu_Item menu_i18n_type_chooser[];
extern void i18n_cb(Fl_Choice *,void *);
extern Fl_Preferences fluid_prefs;
-extern Fl_Text_Buffer *shell_run_buffer;
-extern void scheme_cb(Fl_Choice *, void *);
+extern Fl_Text_Buffer *shell_run_buffer;
+extern void scheme_cb(Fl_Choice *, void *);
extern Fl_Double_Window *settings_window;
extern void scheme_cb(Fl_Choice*, void*);
extern Fl_Choice *scheme_choice;
diff --git a/fluid/fluid.cxx b/fluid/fluid.cxx
index 49e287f5a..ef4182a3d 100644
--- a/fluid/fluid.cxx
+++ b/fluid/fluid.cxx
@@ -1682,6 +1682,9 @@ void scheme_cb(Fl_Choice *, void *) {
case 2 : // Plastic
Fl::scheme("plastic");
break;
+ case 3 : // GTK+
+ Fl::scheme("gtk+");
+ break;
}
fluid_prefs.set("scheme", scheme_choice->value());
diff --git a/fluid/widget_panel.cxx b/fluid/widget_panel.cxx
index 1adf4c436..29d1c2029 100644
--- a/fluid/widget_panel.cxx
+++ b/fluid/widget_panel.cxx
@@ -25,7 +25,7 @@
// http://www.fltk.org/str.php
//
-// generated by Fast Light User Interface Designer (fluid) version 1.0107
+// generated by Fast Light User Interface Designer (fluid) version 1.0108
#include "widget_panel.h"
@@ -47,26 +47,27 @@ Fl_Button *wLiveMode=(Fl_Button *)0;
Fl_Double_Window* make_widget_panel() {
Fl_Double_Window* w;
- { Fl_Double_Window* o = new Fl_Double_Window(410, 355);
+ { Fl_Double_Window* o = new Fl_Double_Window(420, 360);
w = o;
o->labelsize(11);
- w->hotspot(o);
- { Fl_Tabs* o = new Fl_Tabs(5, 5, 400, 310);
- o->selection_color((Fl_Color)4);
+ o->align(FL_ALIGN_CLIP|FL_ALIGN_INSIDE);
+ o->hotspot(o);
+ { Fl_Tabs* o = new Fl_Tabs(10, 10, 400, 310);
+ o->selection_color((Fl_Color)12);
o->labelsize(11);
o->labelcolor(FL_BACKGROUND2_COLOR);
o->callback((Fl_Callback*)cb_);
o->when(FL_WHEN_NEVER);
- { Fl_Group* o = new Fl_Group(5, 25, 400, 290, "GUI");
+ { Fl_Group* o = new Fl_Group(10, 30, 400, 290, "GUI");
o->labelsize(11);
o->callback((Fl_Callback*)propagate_load);
o->when(FL_WHEN_NEVER);
- { Fl_Group* o = new Fl_Group(90, 35, 300, 20, "Label:");
+ { Fl_Group* o = new Fl_Group(95, 40, 309, 20, "Label:");
o->labelfont(1);
o->labelsize(11);
o->callback((Fl_Callback*)propagate_load);
o->align(FL_ALIGN_LEFT);
- { Fl_Input* o = new Fl_Input(90, 35, 180, 20);
+ { Fl_Input* o = new Fl_Input(95, 40, 190, 20);
o->tooltip("The label text for the widget.");
o->labelfont(1);
o->labelsize(11);
@@ -74,8 +75,8 @@ Fl_Double_Window* make_widget_panel() {
o->callback((Fl_Callback*)label_cb);
o->when(FL_WHEN_CHANGED);
Fl_Group::current()->resizable(o);
- }
- { Fl_Choice* o = new Fl_Choice(270, 35, 120, 20);
+ } // Fl_Input* o
+ { Fl_Choice* o = new Fl_Choice(284, 40, 120, 20);
o->tooltip("The label style for the widget.");
o->box(FL_THIN_UP_BOX);
o->down_box(FL_BORDER_BOX);
@@ -84,228 +85,228 @@ Fl_Double_Window* make_widget_panel() {
o->textsize(11);
o->callback((Fl_Callback*)labeltype_cb);
o->menu(labeltypemenu);
- }
+ } // Fl_Choice* o
o->end();
- }
- { Fl_Group* o = new Fl_Group(90, 60, 300, 20, "Image:");
+ } // Fl_Group* o
+ { Fl_Group* o = new Fl_Group(95, 65, 309, 20, "Image:");
o->labelfont(1);
o->labelsize(11);
o->callback((Fl_Callback*)propagate_load);
o->align(FL_ALIGN_LEFT);
- { Fl_Input* o = new Fl_Input(90, 60, 230, 20);
+ { Fl_Input* o = new Fl_Input(95, 65, 240, 20);
o->tooltip("The active image for the widget.");
o->labelfont(1);
o->labelsize(11);
o->textsize(11);
o->callback((Fl_Callback*)image_cb);
Fl_Group::current()->resizable(o);
- }
- { Fl_Button* o = new Fl_Button(320, 60, 70, 20, "Browse...");
+ } // Fl_Input* o
+ { Fl_Button* o = new Fl_Button(334, 65, 70, 20, "Browse...");
o->tooltip("Click to choose the active image.");
o->labelsize(11);
o->callback((Fl_Callback*)image_browse_cb);
- }
+ } // Fl_Button* o
o->end();
- }
- { Fl_Group* o = new Fl_Group(90, 85, 300, 20, "Inactive:");
+ } // Fl_Group* o
+ { Fl_Group* o = new Fl_Group(95, 90, 309, 20, "Inactive:");
o->labelfont(1);
o->labelsize(11);
o->callback((Fl_Callback*)propagate_load);
o->align(FL_ALIGN_LEFT);
- { Fl_Input* o = new Fl_Input(90, 85, 230, 20);
+ { Fl_Input* o = new Fl_Input(95, 90, 240, 20);
o->tooltip("The inactive image for the widget.");
o->labelfont(1);
o->labelsize(11);
o->textsize(11);
o->callback((Fl_Callback*)inactive_cb);
Fl_Group::current()->resizable(o);
- }
- { Fl_Button* o = new Fl_Button(320, 85, 70, 20, "Browse...");
+ } // Fl_Input* o
+ { Fl_Button* o = new Fl_Button(334, 90, 70, 20, "Browse...");
o->tooltip("Click to choose the inactive image.");
o->labelsize(11);
o->callback((Fl_Callback*)inactive_browse_cb);
- }
+ } // Fl_Button* o
o->end();
- }
- { Fl_Group* o = new Fl_Group(90, 110, 300, 20, "Alignment:");
+ } // Fl_Group* o
+ { Fl_Group* o = new Fl_Group(95, 115, 300, 20, "Alignment:");
o->labelfont(1);
o->labelsize(11);
o->callback((Fl_Callback*)propagate_load);
o->align(FL_ALIGN_LEFT);
- { Fl_Button* o = new Fl_Button(90, 110, 45, 20, "Clip");
+ { Fl_Button* o = new Fl_Button(95, 115, 45, 20, "Clip");
o->tooltip("Clip the label to the inside of the widget.");
o->type(1);
o->selection_color(FL_INACTIVE_COLOR);
o->labelsize(11);
o->callback((Fl_Callback*)align_cb, (void*)(FL_ALIGN_CLIP));
o->align(FL_ALIGN_CENTER|FL_ALIGN_INSIDE);
- }
- { Fl_Button* o = new Fl_Button(140, 110, 50, 20, "Wrap");
+ } // Fl_Button* o
+ { Fl_Button* o = new Fl_Button(145, 115, 50, 20, "Wrap");
o->tooltip("Wrap the label text.");
o->type(1);
o->selection_color(FL_INACTIVE_COLOR);
o->labelsize(11);
o->callback((Fl_Callback*)align_cb, (void*)(FL_ALIGN_WRAP));
- }
- { Fl_Button* o = new Fl_Button(195, 110, 65, 20, "Text/Image");
+ } // Fl_Button* o
+ { Fl_Button* o = new Fl_Button(200, 115, 65, 20, "Text/Image");
o->tooltip("Show the label text over the image.");
o->type(1);
o->selection_color(FL_INACTIVE_COLOR);
o->labelsize(11);
o->callback((Fl_Callback*)align_cb, (void*)(FL_ALIGN_TEXT_OVER_IMAGE));
- }
- { Fl_Button* o = new Fl_Button(265, 110, 20, 20, "@-1<-");
+ } // Fl_Button* o
+ { Fl_Button* o = new Fl_Button(270, 115, 20, 20, "@-1<-");
o->tooltip("Left-align the label.");
o->type(1);
o->selection_color(FL_INACTIVE_COLOR);
o->labelsize(11);
o->labelcolor(FL_INACTIVE_COLOR);
o->callback((Fl_Callback*)align_cb, (void*)(FL_ALIGN_LEFT));
- }
- { Fl_Button* o = new Fl_Button(290, 110, 20, 20, "@-1->");
+ } // Fl_Button* o
+ { Fl_Button* o = new Fl_Button(295, 115, 20, 20, "@-1->");
o->tooltip("Right-align the label.");
o->type(1);
o->selection_color(FL_INACTIVE_COLOR);
o->labelsize(11);
o->labelcolor(FL_INACTIVE_COLOR);
o->callback((Fl_Callback*)align_cb, (void*)(FL_ALIGN_RIGHT));
- }
- { Fl_Button* o = new Fl_Button(315, 110, 20, 20, "@-18");
+ } // Fl_Button* o
+ { Fl_Button* o = new Fl_Button(320, 115, 20, 20, "@-18");
o->tooltip("Top-align the label.");
o->type(1);
o->selection_color(FL_INACTIVE_COLOR);
o->labelsize(11);
o->labelcolor(FL_INACTIVE_COLOR);
o->callback((Fl_Callback*)align_cb, (void*)(FL_ALIGN_TOP));
- }
- { Fl_Button* o = new Fl_Button(340, 110, 20, 20, "@-12");
+ } // Fl_Button* o
+ { Fl_Button* o = new Fl_Button(345, 115, 20, 20, "@-12");
o->tooltip("Bottom-align the label.");
o->type(1);
o->selection_color(FL_INACTIVE_COLOR);
o->labelsize(11);
o->labelcolor(FL_INACTIVE_COLOR);
o->callback((Fl_Callback*)align_cb, (void*)(FL_ALIGN_BOTTOM));
- }
- { Fl_Button* o = new Fl_Button(365, 110, 20, 20, "@-3square");
+ } // Fl_Button* o
+ { Fl_Button* o = new Fl_Button(370, 115, 20, 20, "@-3square");
o->tooltip("Show the label inside the widget.");
o->type(1);
o->selection_color(FL_INACTIVE_COLOR);
o->labelsize(11);
o->labelcolor(FL_INACTIVE_COLOR);
o->callback((Fl_Callback*)align_cb, (void*)(FL_ALIGN_INSIDE));
- }
- { Fl_Box* o = new Fl_Box(390, 110, 0, 20);
+ } // Fl_Button* o
+ { Fl_Box* o = new Fl_Box(395, 115, 0, 20);
o->labelsize(11);
Fl_Group::current()->resizable(o);
- }
+ } // Fl_Box* o
o->end();
- }
- { Fl_Group* o = new Fl_Group(90, 145, 300, 20, "Position:");
+ } // Fl_Group* o
+ { Fl_Group* o = new Fl_Group(95, 150, 300, 20, "Position:");
o->labelfont(1);
o->labelsize(11);
o->callback((Fl_Callback*)propagate_load);
o->align(FL_ALIGN_LEFT);
- { Fl_Value_Input* o = widget_x_input = new Fl_Value_Input(90, 145, 55, 20, "X:");
- o->tooltip("The X position of the widget.");
- o->labelsize(11);
- o->maximum(2048);
- o->step(1);
- o->textsize(11);
- o->callback((Fl_Callback*)x_cb);
- o->align(FL_ALIGN_TOP_LEFT);
- }
- { Fl_Value_Input* o = widget_y_input = new Fl_Value_Input(150, 145, 55, 20, "Y:");
- o->tooltip("The Y position of the widget.");
- o->labelsize(11);
- o->maximum(2048);
- o->step(1);
- o->textsize(11);
- o->callback((Fl_Callback*)y_cb);
- o->align(FL_ALIGN_TOP_LEFT);
- }
- { Fl_Value_Input* o = widget_w_input = new Fl_Value_Input(210, 145, 55, 20, "Width:");
- o->tooltip("The width of the widget.");
- o->labelsize(11);
- o->maximum(2048);
- o->step(1);
- o->textsize(11);
- o->callback((Fl_Callback*)w_cb);
- o->align(FL_ALIGN_TOP_LEFT);
- }
- { Fl_Value_Input* o = widget_h_input = new Fl_Value_Input(270, 145, 55, 20, "Height:");
- o->tooltip("The height of the widget.");
- o->labelsize(11);
- o->maximum(2048);
- o->step(1);
- o->textsize(11);
- o->callback((Fl_Callback*)h_cb);
- o->align(FL_ALIGN_TOP_LEFT);
- }
- { Fl_Light_Button* o = new Fl_Light_Button(330, 145, 55, 20, "Relative");
+ { widget_x_input = new Fl_Value_Input(95, 150, 55, 20, "X:");
+ widget_x_input->tooltip("The X position of the widget.");
+ widget_x_input->labelsize(11);
+ widget_x_input->maximum(2048);
+ widget_x_input->step(1);
+ widget_x_input->textsize(11);
+ widget_x_input->callback((Fl_Callback*)x_cb);
+ widget_x_input->align(FL_ALIGN_TOP_LEFT);
+ } // Fl_Value_Input* widget_x_input
+ { widget_y_input = new Fl_Value_Input(155, 150, 55, 20, "Y:");
+ widget_y_input->tooltip("The Y position of the widget.");
+ widget_y_input->labelsize(11);
+ widget_y_input->maximum(2048);
+ widget_y_input->step(1);
+ widget_y_input->textsize(11);
+ widget_y_input->callback((Fl_Callback*)y_cb);
+ widget_y_input->align(FL_ALIGN_TOP_LEFT);
+ } // Fl_Value_Input* widget_y_input
+ { widget_w_input = new Fl_Value_Input(215, 150, 55, 20, "Width:");
+ widget_w_input->tooltip("The width of the widget.");
+ widget_w_input->labelsize(11);
+ widget_w_input->maximum(2048);
+ widget_w_input->step(1);
+ widget_w_input->textsize(11);
+ widget_w_input->callback((Fl_Callback*)w_cb);
+ widget_w_input->align(FL_ALIGN_TOP_LEFT);
+ } // Fl_Value_Input* widget_w_input
+ { widget_h_input = new Fl_Value_Input(275, 150, 55, 20, "Height:");
+ widget_h_input->tooltip("The height of the widget.");
+ widget_h_input->labelsize(11);
+ widget_h_input->maximum(2048);
+ widget_h_input->step(1);
+ widget_h_input->textsize(11);
+ widget_h_input->callback((Fl_Callback*)h_cb);
+ widget_h_input->align(FL_ALIGN_TOP_LEFT);
+ } // Fl_Value_Input* widget_h_input
+ { Fl_Light_Button* o = new Fl_Light_Button(335, 150, 55, 20, "Relative");
o->tooltip("If set, widgets inside a widget class of type Fl_Group are repositioned relat\
ive to the origin at construction time");
o->labelsize(11);
o->callback((Fl_Callback*)wc_relative_cb);
- }
- { Fl_Box* o = new Fl_Box(389, 145, 1, 20);
+ } // Fl_Light_Button* o
+ { Fl_Box* o = new Fl_Box(394, 150, 1, 20);
Fl_Group::current()->resizable(o);
- }
+ } // Fl_Box* o
o->end();
- }
- { Fl_Group* o = new Fl_Group(90, 180, 300, 20, "Values:");
+ } // Fl_Group* o
+ { Fl_Group* o = new Fl_Group(95, 185, 300, 20, "Values:");
o->labelfont(1);
o->labelsize(11);
o->callback((Fl_Callback*)propagate_load);
o->align(FL_ALIGN_LEFT);
- { Fl_Value_Input* o = new Fl_Value_Input(90, 180, 55, 20, "Size:");
+ { Fl_Value_Input* o = new Fl_Value_Input(95, 185, 55, 20, "Size:");
o->tooltip("The size of the slider.");
o->labelsize(11);
o->step(0.010101);
o->textsize(11);
o->callback((Fl_Callback*)slider_size_cb);
o->align(FL_ALIGN_TOP_LEFT);
- }
- { Fl_Value_Input* o = new Fl_Value_Input(150, 180, 55, 20, "Minimum:");
+ } // Fl_Value_Input* o
+ { Fl_Value_Input* o = new Fl_Value_Input(155, 185, 55, 20, "Minimum:");
o->tooltip("The minimum value of the widget.");
o->labelsize(11);
o->textsize(11);
o->callback((Fl_Callback*)min_cb);
o->align(FL_ALIGN_TOP_LEFT);
- }
- { Fl_Value_Input* o = new Fl_Value_Input(210, 180, 55, 20, "Maximum:");
+ } // Fl_Value_Input* o
+ { Fl_Value_Input* o = new Fl_Value_Input(215, 185, 55, 20, "Maximum:");
o->tooltip("The maximum value of the widget.");
o->labelsize(11);
o->value(1);
o->textsize(11);
o->callback((Fl_Callback*)max_cb);
o->align(FL_ALIGN_TOP_LEFT);
- }
- { Fl_Value_Input* o = new Fl_Value_Input(270, 180, 55, 20, "Step:");
+ } // Fl_Value_Input* o
+ { Fl_Value_Input* o = new Fl_Value_Input(275, 185, 55, 20, "Step:");
o->tooltip("The resolution of the widget value.");
o->labelsize(11);
o->textsize(11);
o->callback((Fl_Callback*)step_cb);
o->align(FL_ALIGN_TOP_LEFT);
- }
- { Fl_Value_Input* o = new Fl_Value_Input(330, 180, 55, 20, "Value:");
+ } // Fl_Value_Input* o
+ { Fl_Value_Input* o = new Fl_Value_Input(335, 185, 55, 20, "Value:");
o->tooltip("The current widget value.");
o->labelsize(11);
o->textsize(11);
o->callback((Fl_Callback*)value_cb);
o->align(FL_ALIGN_TOP_LEFT);
- }
- { Fl_Box* o = new Fl_Box(390, 180, 0, 20);
+ } // Fl_Value_Input* o
+ { Fl_Box* o = new Fl_Box(395, 185, 0, 20);
Fl_Group::current()->resizable(o);
- }
+ } // Fl_Box* o
o->end();
- }
- { Fl_Group* o = new Fl_Group(90, 180, 300, 20, "Size Range:");
+ } // Fl_Group* o
+ { Fl_Group* o = new Fl_Group(95, 185, 300, 20, "Size Range:");
o->labelfont(1);
o->labelsize(11);
o->callback((Fl_Callback*)propagate_load);
o->align(FL_ALIGN_LEFT);
o->hide();
- { Fl_Value_Input* o = new Fl_Value_Input(90, 180, 55, 20, "Minimum Size:");
+ { Fl_Value_Input* o = new Fl_Value_Input(95, 185, 55, 20, "Minimum Size:");
o->tooltip("The size of the slider.");
o->labelsize(11);
o->maximum(2048);
@@ -313,8 +314,8 @@ ive to the origin at construction time");
o->textsize(11);
o->callback((Fl_Callback*)min_w_cb);
o->align(FL_ALIGN_TOP_LEFT);
- }
- { Fl_Value_Input* o = new Fl_Value_Input(150, 180, 55, 20);
+ } // Fl_Value_Input* o
+ { Fl_Value_Input* o = new Fl_Value_Input(155, 185, 55, 20);
o->tooltip("The minimum value of the widget.");
o->labelsize(11);
o->maximum(2048);
@@ -322,12 +323,12 @@ ive to the origin at construction time");
o->textsize(11);
o->callback((Fl_Callback*)min_h_cb);
o->align(FL_ALIGN_TOP_LEFT);
- }
- { Fl_Button* o = new Fl_Button(210, 180, 25, 20, "set");
+ } // Fl_Value_Input* o
+ { Fl_Button* o = new Fl_Button(215, 185, 25, 20, "set");
o->labelsize(11);
o->callback((Fl_Callback*)set_min_size_cb);
- }
- { Fl_Value_Input* o = new Fl_Value_Input(240, 180, 55, 20, "Maximum Size:");
+ } // Fl_Button* o
+ { Fl_Value_Input* o = new Fl_Value_Input(245, 185, 55, 20, "Maximum Size:");
o->tooltip("The maximum value of the widget.");
o->labelsize(11);
o->maximum(2048);
@@ -335,8 +336,8 @@ ive to the origin at construction time");
o->textsize(11);
o->callback((Fl_Callback*)max_w_cb);
o->align(FL_ALIGN_TOP_LEFT);
- }
- { Fl_Value_Input* o = new Fl_Value_Input(300, 180, 55, 20);
+ } // Fl_Value_Input* o
+ { Fl_Value_Input* o = new Fl_Value_Input(305, 185, 55, 20);
o->tooltip("The resolution of the widget value.");
o->labelsize(11);
o->maximum(2048);
@@ -344,17 +345,17 @@ ive to the origin at construction time");
o->textsize(11);
o->callback((Fl_Callback*)max_h_cb);
o->align(FL_ALIGN_TOP_LEFT);
- }
- { Fl_Button* o = new Fl_Button(360, 180, 25, 20, "set");
+ } // Fl_Value_Input* o
+ { Fl_Button* o = new Fl_Button(365, 185, 25, 20, "set");
o->labelsize(11);
o->callback((Fl_Callback*)set_max_size_cb);
- }
- { Fl_Box* o = new Fl_Box(390, 180, 0, 20);
+ } // Fl_Button* o
+ { Fl_Box* o = new Fl_Box(395, 185, 0, 20);
Fl_Group::current()->resizable(o);
- }
+ } // Fl_Box* o
o->end();
- }
- { Shortcut_Button* o = new Shortcut_Button(90, 205, 300, 20, "Shortcut:");
+ } // Fl_Group* o
+ { Shortcut_Button* o = new Shortcut_Button(95, 210, 310, 20, "Shortcut:");
o->tooltip("The shortcut key for the widget.");
o->box(FL_DOWN_BOX);
o->color(FL_BACKGROUND2_COLOR);
@@ -366,103 +367,103 @@ ive to the origin at construction time");
o->callback((Fl_Callback*)shortcut_in_cb);
o->align(FL_ALIGN_LEFT);
o->when(FL_WHEN_RELEASE);
- }
- { Fl_Group* o = new Fl_Group(90, 230, 300, 20, "X Class:");
+ } // Shortcut_Button* o
+ { Fl_Group* o = new Fl_Group(95, 235, 300, 20, "X Class:");
o->labelfont(1);
o->labelsize(11);
o->callback((Fl_Callback*)propagate_load);
o->align(FL_ALIGN_LEFT);
- { Fl_Input* o = new Fl_Input(90, 230, 95, 20, ":");
+ { Fl_Input* o = new Fl_Input(95, 235, 95, 20, ":");
o->tooltip("The X resource class.");
o->labelfont(1);
o->labelsize(11);
o->textsize(11);
o->callback((Fl_Callback*)xclass_cb);
Fl_Group::current()->resizable(o);
- }
- { Fl_Light_Button* o = new Fl_Light_Button(190, 230, 60, 20, "Border");
+ } // Fl_Input* o
+ { Fl_Light_Button* o = new Fl_Light_Button(195, 235, 60, 20, "Border");
o->tooltip("Add a border around the window.");
o->selection_color((Fl_Color)1);
o->labelsize(11);
o->callback((Fl_Callback*)border_cb);
- }
- { Fl_Light_Button* o = new Fl_Light_Button(255, 230, 55, 20, "Modal");
+ } // Fl_Light_Button* o
+ { Fl_Light_Button* o = new Fl_Light_Button(260, 235, 55, 20, "Modal");
o->tooltip("Make the window modal.");
o->selection_color((Fl_Color)1);
o->labelsize(11);
o->callback((Fl_Callback*)modal_cb);
- }
- { Fl_Light_Button* o = new Fl_Light_Button(315, 230, 75, 20, "Nonmodal");
+ } // Fl_Light_Button* o
+ { Fl_Light_Button* o = new Fl_Light_Button(320, 235, 75, 20, "Nonmodal");
o->tooltip("Make the window non-modal.");
o->selection_color((Fl_Color)1);
o->labelsize(11);
o->callback((Fl_Callback*)non_modal_cb);
o->align(132|FL_ALIGN_INSIDE);
- }
+ } // Fl_Light_Button* o
o->end();
- }
- { Fl_Group* o = new Fl_Group(90, 255, 305, 20, "Attributes:");
+ } // Fl_Group* o
+ { Fl_Group* o = new Fl_Group(95, 260, 305, 20, "Attributes:");
o->labelfont(1);
o->labelsize(11);
o->callback((Fl_Callback*)propagate_load);
o->align(FL_ALIGN_LEFT);
- { Fl_Light_Button* o = new Fl_Light_Button(90, 255, 60, 20, "Visible");
+ { Fl_Light_Button* o = new Fl_Light_Button(95, 260, 60, 20, "Visible");
o->tooltip("Show the widget.");
o->selection_color((Fl_Color)1);
o->labelsize(11);
o->callback((Fl_Callback*)visible_cb);
- }
- { Fl_Light_Button* o = new Fl_Light_Button(155, 255, 60, 20, "Active");
+ } // Fl_Light_Button* o
+ { Fl_Light_Button* o = new Fl_Light_Button(160, 260, 60, 20, "Active");
o->tooltip("Activate the widget.");
o->selection_color((Fl_Color)1);
o->labelsize(11);
o->callback((Fl_Callback*)active_cb);
- }
- { Fl_Light_Button* o = new Fl_Light_Button(220, 255, 75, 20, "Resizable");
+ } // Fl_Light_Button* o
+ { Fl_Light_Button* o = new Fl_Light_Button(225, 260, 75, 20, "Resizable");
o->tooltip("Make the widget resizable.");
o->selection_color((Fl_Color)1);
o->labelsize(11);
o->callback((Fl_Callback*)resizable_cb);
o->when(FL_WHEN_CHANGED);
- }
- { Fl_Light_Button* o = new Fl_Light_Button(300, 255, 70, 20, "Hotspot");
+ } // Fl_Light_Button* o
+ { Fl_Light_Button* o = new Fl_Light_Button(305, 260, 70, 20, "Hotspot");
o->tooltip("Center the window under this widget.");
o->selection_color((Fl_Color)1);
o->labelsize(11);
o->callback((Fl_Callback*)hotspot_cb);
o->when(FL_WHEN_CHANGED);
- }
- { Fl_Box* o = new Fl_Box(390, 255, 0, 20);
+ } // Fl_Light_Button* o
+ { Fl_Box* o = new Fl_Box(395, 260, 0, 20);
o->labelsize(11);
Fl_Group::current()->resizable(o);
- }
+ } // Fl_Box* o
o->end();
- }
- { Fl_Input* o = new Fl_Input(90, 280, 300, 20, "Tooltip:");
+ } // Fl_Group* o
+ { Fl_Input* o = new Fl_Input(95, 285, 310, 20, "Tooltip:");
o->tooltip("The tooltip text for the widget.");
o->labelfont(1);
o->labelsize(11);
o->textsize(11);
o->callback((Fl_Callback*)tooltip_cb);
- }
- { Fl_Box* o = new Fl_Box(90, 300, 300, 5);
+ } // Fl_Input* o
+ { Fl_Box* o = new Fl_Box(95, 305, 300, 5);
o->labelsize(11);
Fl_Group::current()->resizable(o);
- }
+ } // Fl_Box* o
o->end();
Fl_Group::current()->resizable(o);
- }
- { Fl_Group* o = new Fl_Group(5, 25, 400, 290, "Style");
+ } // Fl_Group* o
+ { Fl_Group* o = new Fl_Group(10, 30, 400, 290, "Style");
o->labelsize(11);
o->callback((Fl_Callback*)propagate_load);
o->when(FL_WHEN_NEVER);
o->hide();
- { Fl_Group* o = new Fl_Group(90, 35, 300, 20, "Label Font:");
+ { Fl_Group* o = new Fl_Group(95, 40, 309, 20, "Label Font:");
o->labelfont(1);
o->labelsize(11);
o->callback((Fl_Callback*)propagate_load);
o->align(FL_ALIGN_LEFT);
- { Fl_Choice* o = new Fl_Choice(90, 35, 160, 20);
+ { Fl_Choice* o = new Fl_Choice(95, 40, 170, 20);
o->tooltip("The style of the label text.");
o->box(FL_THIN_UP_BOX);
o->down_box(FL_BORDER_BOX);
@@ -471,8 +472,8 @@ ive to the origin at construction time");
o->callback((Fl_Callback*)labelfont_cb);
Fl_Group::current()->resizable(o);
o->menu(fontmenu);
- }
- { Fl_Value_Input* o = new Fl_Value_Input(250, 35, 50, 20);
+ } // Fl_Choice* o
+ { Fl_Value_Input* o = new Fl_Value_Input(264, 40, 50, 20);
o->tooltip("The size of the label text.");
o->labelsize(11);
o->maximum(100);
@@ -480,20 +481,20 @@ ive to the origin at construction time");
o->value(14);
o->textsize(11);
o->callback((Fl_Callback*)labelsize_cb);
- }
- { Fl_Button* o = new Fl_Button(300, 35, 90, 20, "Label Color");
+ } // Fl_Value_Input* o
+ { Fl_Button* o = new Fl_Button(314, 40, 90, 20, "Label Color");
o->tooltip("The color of the label text.");
o->labelsize(11);
o->callback((Fl_Callback*)labelcolor_cb);
- }
+ } // Fl_Button* o
o->end();
- }
- { Fl_Group* o = new Fl_Group(90, 60, 300, 20, "Box:");
+ } // Fl_Group* o
+ { Fl_Group* o = new Fl_Group(95, 65, 309, 20, "Box:");
o->labelfont(1);
o->labelsize(11);
o->callback((Fl_Callback*)propagate_load);
o->align(FL_ALIGN_LEFT);
- { Fl_Choice* o = new Fl_Choice(90, 60, 210, 20);
+ { Fl_Choice* o = new Fl_Choice(95, 65, 219, 20);
o->tooltip("The \"up\" box of the widget.");
o->box(FL_THIN_UP_BOX);
o->down_box(FL_BORDER_BOX);
@@ -502,20 +503,20 @@ ive to the origin at construction time");
o->callback((Fl_Callback*)box_cb);
Fl_Group::current()->resizable(o);
o->menu(boxmenu);
- }
- { Fl_Button* o = new Fl_Button(300, 60, 90, 20, "Color");
+ } // Fl_Choice* o
+ { Fl_Button* o = new Fl_Button(314, 65, 90, 20, "Color");
o->tooltip("The background color of the widget.");
o->labelsize(11);
o->callback((Fl_Callback*)color_cb);
- }
+ } // Fl_Button* o
o->end();
- }
- { Fl_Group* o = new Fl_Group(90, 85, 300, 20, "Down Box:");
+ } // Fl_Group* o
+ { Fl_Group* o = new Fl_Group(95, 90, 309, 20, "Down Box:");
o->labelfont(1);
o->labelsize(11);
o->callback((Fl_Callback*)propagate_load);
o->align(FL_ALIGN_LEFT);
- { Fl_Choice* o = new Fl_Choice(90, 85, 210, 20);
+ { Fl_Choice* o = new Fl_Choice(95, 90, 219, 20);
o->tooltip("The \"down\" box of the widget.");
o->box(FL_THIN_UP_BOX);
o->down_box(FL_BORDER_BOX);
@@ -524,20 +525,20 @@ ive to the origin at construction time");
o->callback((Fl_Callback*)down_box_cb);
Fl_Group::current()->resizable(o);
o->menu(boxmenu);
- }
- { Fl_Button* o = new Fl_Button(300, 85, 90, 20, "Select Color");
+ } // Fl_Choice* o
+ { Fl_Button* o = new Fl_Button(314, 90, 90, 20, "Select Color");
o->tooltip("The selection color of the widget.");
o->labelsize(11);
o->callback((Fl_Callback*)color2_cb);
- }
+ } // Fl_Button* o
o->end();
- }
- { Fl_Group* o = new Fl_Group(90, 110, 300, 20, "Text Font:");
+ } // Fl_Group* o
+ { Fl_Group* o = new Fl_Group(95, 115, 309, 20, "Text Font:");
o->labelfont(1);
o->labelsize(11);
o->callback((Fl_Callback*)propagate_load);
o->align(FL_ALIGN_LEFT);
- { Fl_Choice* o = new Fl_Choice(90, 110, 160, 20);
+ { Fl_Choice* o = new Fl_Choice(95, 115, 170, 20);
o->tooltip("The value text style.");
o->box(FL_DOWN_BOX);
o->down_box(FL_BORDER_BOX);
@@ -546,8 +547,8 @@ ive to the origin at construction time");
o->callback((Fl_Callback*)textfont_cb);
Fl_Group::current()->resizable(o);
o->menu(fontmenu);
- }
- { Fl_Value_Input* o = new Fl_Value_Input(250, 110, 50, 20);
+ } // Fl_Choice* o
+ { Fl_Value_Input* o = new Fl_Value_Input(264, 115, 50, 20);
o->tooltip("The value text size.");
o->labelsize(11);
o->maximum(100);
@@ -555,31 +556,31 @@ ive to the origin at construction time");
o->value(14);
o->textsize(11);
o->callback((Fl_Callback*)textsize_cb);
- }
- { Fl_Button* o = new Fl_Button(300, 110, 90, 20, "Text Color");
+ } // Fl_Value_Input* o
+ { Fl_Button* o = new Fl_Button(314, 115, 90, 20, "Text Color");
o->tooltip("The value text color.");
o->labelsize(11);
o->callback((Fl_Callback*)textcolor_cb);
- }
+ } // Fl_Button* o
o->end();
- }
- { Fl_Box* o = new Fl_Box(90, 135, 300, 40);
+ } // Fl_Group* o
+ { Fl_Box* o = new Fl_Box(95, 140, 300, 40);
o->labelsize(11);
Fl_Group::current()->resizable(o);
- }
+ } // Fl_Box* o
o->end();
- }
- { Fl_Group* o = new Fl_Group(5, 25, 400, 290, "C++");
+ } // Fl_Group* o
+ { Fl_Group* o = new Fl_Group(10, 30, 400, 290, "C++");
o->labelsize(11);
o->callback((Fl_Callback*)propagate_load);
o->when(FL_WHEN_NEVER);
o->hide();
- { Fl_Group* o = new Fl_Group(90, 35, 300, 20, "Class:");
+ { Fl_Group* o = new Fl_Group(95, 40, 310, 20, "Class:");
o->labelfont(1);
o->labelsize(11);
o->callback((Fl_Callback*)propagate_load);
o->align(FL_ALIGN_LEFT);
- { Fl_Input* o = new Fl_Input(90, 35, 160, 20);
+ { Fl_Input* o = new Fl_Input(95, 40, 172, 20);
o->tooltip("The widget subclass.");
o->labelfont(1);
o->labelsize(11);
@@ -587,68 +588,68 @@ ive to the origin at construction time");
o->textsize(11);
o->callback((Fl_Callback*)subclass_cb, (void*)(4));
Fl_Group::current()->resizable(o);
- }
- { Fl_Choice* o = new Fl_Choice(250, 35, 140, 20);
+ } // Fl_Input* o
+ { Fl_Choice* o = new Fl_Choice(265, 40, 140, 20);
o->tooltip("The widget subtype.");
o->box(FL_THIN_UP_BOX);
o->down_box(FL_BORDER_BOX);
o->labelsize(11);
o->callback((Fl_Callback*)subtype_cb);
- }
+ } // Fl_Choice* o
o->end();
- }
- { Fl_Group* o = new Fl_Group(90, 60, 300, 20, "Name:");
+ } // Fl_Group* o
+ { Fl_Group* o = new Fl_Group(95, 65, 310, 20, "Name:");
o->labelfont(1);
o->labelsize(11);
o->callback((Fl_Callback*)propagate_load);
o->align(FL_ALIGN_LEFT);
- { Fl_Input* o = new Fl_Input(90, 60, 240, 20);
+ { Fl_Input* o = new Fl_Input(95, 65, 250, 20);
o->tooltip("The name of the widget.");
o->labelfont(1);
o->labelsize(11);
o->textsize(11);
o->callback((Fl_Callback*)name_cb);
Fl_Group::current()->resizable(o);
- }
- { Fl_Light_Button* o = new Fl_Light_Button(330, 60, 60, 20, "public");
+ } // Fl_Input* o
+ { Fl_Light_Button* o = new Fl_Light_Button(345, 65, 60, 20, "public");
o->tooltip("Make the widget publicly accessible.");
o->selection_color((Fl_Color)1);
o->labelsize(11);
o->callback((Fl_Callback*)name_public_cb);
o->when(FL_WHEN_CHANGED);
- }
+ } // Fl_Light_Button* o
o->end();
- }
- { Fl_Input* o = v_input[0] = new Fl_Input(90, 85, 300, 20, "Extra Code:");
- o->tooltip("Extra initialization code for the widget.");
- o->labelfont(1);
- o->labelsize(11);
- o->textfont(4);
- o->textsize(11);
- o->callback((Fl_Callback*)v_input_cb, (void*)(0));
- }
- { Fl_Input* o = v_input[1] = new Fl_Input(90, 105, 300, 20);
- o->tooltip("Extra initialization code for the widget.");
- o->labelsize(11);
- o->textfont(4);
- o->textsize(11);
- o->callback((Fl_Callback*)v_input_cb, (void*)(1));
- }
- { Fl_Input* o = v_input[2] = new Fl_Input(90, 125, 300, 20);
- o->tooltip("Extra initialization code for the widget.");
- o->labelsize(11);
- o->textfont(4);
- o->textsize(11);
- o->callback((Fl_Callback*)v_input_cb, (void*)(2));
- }
- { Fl_Input* o = v_input[3] = new Fl_Input(90, 145, 300, 20);
- o->tooltip("Extra initialization code for the widget.");
- o->labelsize(11);
- o->textfont(4);
- o->textsize(11);
- o->callback((Fl_Callback*)v_input_cb, (void*)(3));
- }
- { CodeEditor* o = new CodeEditor(90, 170, 300, 90, "Callback:");
+ } // Fl_Group* o
+ { v_input[0] = new Fl_Input(95, 90, 310, 20, "Extra Code:");
+ v_input[0]->tooltip("Extra initialization code for the widget.");
+ v_input[0]->labelfont(1);
+ v_input[0]->labelsize(11);
+ v_input[0]->textfont(4);
+ v_input[0]->textsize(11);
+ v_input[0]->callback((Fl_Callback*)v_input_cb, (void*)(0));
+ } // Fl_Input* v_input[0]
+ { v_input[1] = new Fl_Input(95, 110, 310, 20);
+ v_input[1]->tooltip("Extra initialization code for the widget.");
+ v_input[1]->labelsize(11);
+ v_input[1]->textfont(4);
+ v_input[1]->textsize(11);
+ v_input[1]->callback((Fl_Callback*)v_input_cb, (void*)(1));
+ } // Fl_Input* v_input[1]
+ { v_input[2] = new Fl_Input(95, 130, 310, 20);
+ v_input[2]->tooltip("Extra initialization code for the widget.");
+ v_input[2]->labelsize(11);
+ v_input[2]->textfont(4);
+ v_input[2]->textsize(11);
+ v_input[2]->callback((Fl_Callback*)v_input_cb, (void*)(2));
+ } // Fl_Input* v_input[2]
+ { v_input[3] = new Fl_Input(95, 150, 310, 20);
+ v_input[3]->tooltip("Extra initialization code for the widget.");
+ v_input[3]->labelsize(11);
+ v_input[3]->textfont(4);
+ v_input[3]->textsize(11);
+ v_input[3]->callback((Fl_Callback*)v_input_cb, (void*)(3));
+ } // Fl_Input* v_input[3]
+ { CodeEditor* o = new CodeEditor(95, 175, 310, 90, "Callback:");
o->tooltip("The callback function or code for the widget. Use the variable name \'o\' to \
access the Widget pointer and \'v\' to access the user value.");
o->box(FL_DOWN_BOX);
@@ -664,13 +665,13 @@ access the Widget pointer and \'v\' to access the user value.");
o->align(FL_ALIGN_LEFT);
o->when(FL_WHEN_RELEASE);
Fl_Group::current()->resizable(o);
- }
- { Fl_Group* o = new Fl_Group(90, 265, 300, 20, "User Data:");
+ } // CodeEditor* o
+ { Fl_Group* o = new Fl_Group(95, 270, 310, 20, "User Data:");
o->labelfont(1);
o->labelsize(11);
o->callback((Fl_Callback*)propagate_load);
o->align(FL_ALIGN_LEFT);
- { Fl_Input* o = new Fl_Input(90, 265, 140, 20);
+ { Fl_Input* o = new Fl_Input(95, 270, 158, 20);
o->tooltip("The user data to pass into the callback code.");
o->labelfont(1);
o->labelsize(11);
@@ -678,8 +679,8 @@ access the Widget pointer and \'v\' to access the user value.");
o->textsize(11);
o->callback((Fl_Callback*)user_data_cb);
Fl_Group::current()->resizable(o);
- }
- { Fl_Choice* o = new Fl_Choice(285, 265, 105, 20, "When:");
+ } // Fl_Input* o
+ { Fl_Choice* o = new Fl_Choice(300, 270, 105, 20, "When:");
o->tooltip("When to call the callback function.");
o->box(FL_THIN_UP_BOX);
o->down_box(FL_BORDER_BOX);
@@ -688,15 +689,15 @@ access the Widget pointer and \'v\' to access the user value.");
o->callback((Fl_Callback*)when_cb);
o->when(FL_WHEN_CHANGED);
o->menu(whenmenu);
- }
+ } // Fl_Choice* o
o->end();
- }
- { Fl_Group* o = new Fl_Group(90, 290, 300, 20, "Type:");
+ } // Fl_Group* o
+ { Fl_Group* o = new Fl_Group(95, 295, 310, 20, "Type:");
o->labelfont(1);
o->labelsize(11);
o->callback((Fl_Callback*)propagate_load);
o->align(FL_ALIGN_LEFT);
- { Fl_Input* o = new Fl_Input(90, 290, 140, 20);
+ { Fl_Input* o = new Fl_Input(95, 295, 158, 20);
o->tooltip("The type of the user data.");
o->labelfont(1);
o->labelsize(11);
@@ -704,58 +705,58 @@ access the Widget pointer and \'v\' to access the user value.");
o->textsize(11);
o->callback((Fl_Callback*)user_data_type_cb);
Fl_Group::current()->resizable(o);
- }
- { Fl_Light_Button* o = new Fl_Light_Button(285, 290, 105, 20, "No Change");
+ } // Fl_Input* o
+ { Fl_Light_Button* o = new Fl_Light_Button(300, 295, 105, 20, "No Change");
o->tooltip("Call the callback even if the value has not changed.");
o->selection_color((Fl_Color)1);
o->labelsize(11);
o->callback((Fl_Callback*)when_button_cb);
- }
+ } // Fl_Light_Button* o
o->end();
- }
+ } // Fl_Group* o
o->end();
- }
+ } // Fl_Group* o
o->end();
Fl_Group::current()->resizable(o);
- }
- { Fl_Group* o = new Fl_Group(8, 321, 391, 24);
+ } // Fl_Tabs* o
+ { Fl_Group* o = new Fl_Group(9, 330, 400, 20);
o->labelsize(11);
- { Fl_Box* o = new Fl_Box(8, 325, 20, 20);
+ { Fl_Box* o = new Fl_Box(9, 330, 20, 20);
o->labelsize(11);
Fl_Group::current()->resizable(o);
- }
- { Fl_Button* o = new Fl_Button(231, 325, 99, 20, "Hide &Overlays");
+ } // Fl_Box* o
+ { Fl_Button* o = new Fl_Button(240, 330, 99, 20, "Hide &Overlays");
o->tooltip("Hide the widget overlay box.");
o->labelsize(11);
o->labelcolor((Fl_Color)1);
o->callback((Fl_Callback*)overlay_cb);
- }
- { Fl_Button* o = new Fl_Button(80, 325, 80, 20, "Revert");
+ } // Fl_Button* o
+ { Fl_Button* o = new Fl_Button(66, 330, 80, 20, "Revert");
o->labelsize(11);
o->callback((Fl_Callback*)revert_cb);
o->hide();
- }
- { Fl_Return_Button* o = new Fl_Return_Button(335, 325, 64, 20, "Close");
+ } // Fl_Button* o
+ { Fl_Return_Button* o = new Fl_Return_Button(344, 330, 64, 20, "Close");
o->labelsize(11);
o->callback((Fl_Callback*)ok_cb);
- }
- { Fl_Button* o = new Fl_Button(329, 325, 70, 20, "Cancel");
+ } // Fl_Return_Button* o
+ { Fl_Button* o = new Fl_Button(339, 330, 70, 20, "Cancel");
o->labelsize(11);
o->callback((Fl_Callback*)cancel_cb);
o->hide();
- }
- { Fl_Button* o = wLiveMode = new Fl_Button(142, 325, 84, 20, "Live &Mode");
- o->tooltip("Create a live duplicate of the selected widgets to test resizing and menu beh\
+ } // Fl_Button* o
+ { wLiveMode = new Fl_Button(151, 330, 84, 20, "Live &Mode");
+ wLiveMode->tooltip("Create a live duplicate of the selected widgets to test resizing and menu beh\
avior.");
- o->type(1);
- o->labelsize(11);
- o->callback((Fl_Callback*)live_mode_cb);
- }
+ wLiveMode->type(1);
+ wLiveMode->labelsize(11);
+ wLiveMode->callback((Fl_Callback*)live_mode_cb);
+ } // Fl_Button* wLiveMode
o->end();
- }
+ } // Fl_Group* o
o->size_range(o->w(), o->h());
o->end();
- }
+ } // Fl_Double_Window* o
return w;
}
diff --git a/fluid/widget_panel.fl b/fluid/widget_panel.fl
index 534e6f841..f76bf2673 100644
--- a/fluid/widget_panel.fl
+++ b/fluid/widget_panel.fl
@@ -1,5 +1,5 @@
# data file for the Fltk User Interface Designer (fluid)
-version 1.0107
+version 1.0108
header_name {.h}
code_name {.cxx}
comment {//
@@ -33,31 +33,31 @@ comment {//
Function {make_widget_panel()} {open
} {
- Fl_Window {} {open
- xywh {353 184 410 355} type Double labelsize 11 resizable hotspot
+ Fl_Window {} {open selected
+ xywh {711 172 420 360} type Double labelsize 11 align 80 resizable hotspot
code0 {o->size_range(o->w(), o->h());} visible
} {
Fl_Tabs {} {
callback {propagate_load((Fl_Group *)o,v);} open
- xywh {5 5 400 310} selection_color 4 labelsize 11 labelcolor 7 when 0 resizable
+ xywh {10 10 400 310} selection_color 12 labelsize 11 labelcolor 7 when 0 resizable
} {
Fl_Group {} {
label GUI
callback propagate_load
- xywh {5 25 400 290} labelsize 11 when 0 resizable
+ xywh {10 30 400 290} labelsize 11 when 0 resizable
} {
Fl_Group {} {
label {Label:}
callback propagate_load
- xywh {90 35 300 20} labelfont 1 labelsize 11 align 4
+ xywh {95 40 309 20} labelfont 1 labelsize 11 align 4
} {
Fl_Input {} {
callback label_cb
- tooltip {The label text for the widget.} xywh {90 35 180 20} labelfont 1 labelsize 11 when 1 textsize 11 resizable
+ tooltip {The label text for the widget.} xywh {95 40 190 20} labelfont 1 labelsize 11 when 1 textsize 11 resizable
}
Fl_Choice {} {
callback labeltype_cb open
- tooltip {The label style for the widget.} xywh {270 35 120 20} box THIN_UP_BOX down_box BORDER_BOX labelfont 1 labelsize 11 textsize 11
+ tooltip {The label style for the widget.} xywh {284 40 120 20} box THIN_UP_BOX down_box BORDER_BOX labelfont 1 labelsize 11 textsize 11
code0 {extern Fl_Menu_Item labeltypemenu[];}
code1 {o->menu(labeltypemenu);}
} {}
@@ -65,427 +65,427 @@ Function {make_widget_panel()} {open
Fl_Group {} {
label {Image:}
callback propagate_load
- xywh {90 60 300 20} labelfont 1 labelsize 11 align 4
+ xywh {95 65 309 20} labelfont 1 labelsize 11 align 4
} {
Fl_Input {} {
callback image_cb
- tooltip {The active image for the widget.} xywh {90 60 230 20} labelfont 1 labelsize 11 textsize 11 resizable
+ tooltip {The active image for the widget.} xywh {95 65 240 20} labelfont 1 labelsize 11 textsize 11 resizable
}
Fl_Button {} {
label {Browse...}
callback image_browse_cb
- tooltip {Click to choose the active image.} xywh {320 60 70 20} labelsize 11
+ tooltip {Click to choose the active image.} xywh {334 65 70 20} labelsize 11
}
}
Fl_Group {} {
label {Inactive:}
callback propagate_load
- xywh {90 85 300 20} labelfont 1 labelsize 11 align 4
+ xywh {95 90 309 20} labelfont 1 labelsize 11 align 4
} {
Fl_Input {} {
callback inactive_cb
- tooltip {The inactive image for the widget.} xywh {90 85 230 20} labelfont 1 labelsize 11 textsize 11 resizable
+ tooltip {The inactive image for the widget.} xywh {95 90 240 20} labelfont 1 labelsize 11 textsize 11 resizable
}
Fl_Button {} {
label {Browse...}
callback inactive_browse_cb
- tooltip {Click to choose the inactive image.} xywh {320 85 70 20} labelsize 11
+ tooltip {Click to choose the inactive image.} xywh {334 90 70 20} labelsize 11
}
}
Fl_Group {} {
label {Alignment:}
callback propagate_load
- xywh {90 110 300 20} labelfont 1 labelsize 11 align 4
+ xywh {95 115 300 20} labelfont 1 labelsize 11 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 {90 110 45 20} type Toggle selection_color 8 labelsize 11 align 16
+ tooltip {Clip the label to the inside of the widget.} xywh {95 115 45 20} type Toggle selection_color 8 labelsize 11 align 16
}
Fl_Button {} {
label Wrap
user_data FL_ALIGN_WRAP
- callback align_cb selected
- tooltip {Wrap the label text.} xywh {140 110 50 20} type Toggle selection_color 8 labelsize 11
+ callback align_cb
+ tooltip {Wrap the label text.} xywh {145 115 50 20} type Toggle selection_color 8 labelsize 11
}
Fl_Button {} {
label {Text/Image}
user_data FL_ALIGN_TEXT_OVER_IMAGE
callback align_cb
- tooltip {Show the label text over the image.} xywh {195 110 65 20} type Toggle selection_color 8 labelsize 11
+ tooltip {Show the label text over the image.} xywh {200 115 65 20} type Toggle selection_color 8 labelsize 11
}
Fl_Button {} {
label {@-1<-}
user_data FL_ALIGN_LEFT
callback align_cb
- tooltip {Left-align the label.} xywh {265 110 20 20} type Toggle selection_color 8 labelsize 11 labelcolor 8
+ tooltip {Left-align the label.} xywh {270 115 20 20} type Toggle selection_color 8 labelsize 11 labelcolor 8
}
Fl_Button {} {
label {@-1->}
user_data FL_ALIGN_RIGHT
callback align_cb
- tooltip {Right-align the label.} xywh {290 110 20 20} type Toggle selection_color 8 labelsize 11 labelcolor 8
+ tooltip {Right-align the label.} xywh {295 115 20 20} type Toggle selection_color 8 labelsize 11 labelcolor 8
}
Fl_Button {} {
label {@-18}
user_data FL_ALIGN_TOP
callback align_cb
- tooltip {Top-align the label.} xywh {315 110 20 20} type Toggle selection_color 8 labelsize 11 labelcolor 8
+ tooltip {Top-align the label.} xywh {320 115 20 20} type Toggle selection_color 8 labelsize 11 labelcolor 8
}
Fl_Button {} {
label {@-12}
user_data FL_ALIGN_BOTTOM
callback align_cb
- tooltip {Bottom-align the label.} xywh {340 110 20 20} type Toggle selection_color 8 labelsize 11 labelcolor 8
+ tooltip {Bottom-align the label.} xywh {345 115 20 20} type Toggle selection_color 8 labelsize 11 labelcolor 8
}
Fl_Button {} {
label {@-3square}
user_data FL_ALIGN_INSIDE
callback align_cb
- tooltip {Show the label inside the widget.} xywh {365 110 20 20} type Toggle selection_color 8 labelsize 11 labelcolor 8
+ tooltip {Show the label inside the widget.} xywh {370 115 20 20} type Toggle selection_color 8 labelsize 11 labelcolor 8
}
Fl_Box {} {
- xywh {390 110 0 20} labelsize 11 resizable
+ xywh {395 115 0 20} labelsize 11 resizable
}
}
Fl_Group {} {
label {Position:}
callback propagate_load open
- xywh {90 145 300 20} labelfont 1 labelsize 11 align 4
+ xywh {95 150 300 20} labelfont 1 labelsize 11 align 4
} {
Fl_Value_Input widget_x_input {
label {X:}
callback x_cb
- tooltip {The X position of the widget.} xywh {90 145 55 20} labelsize 11 align 5 maximum 2048 step 1 textsize 11
+ tooltip {The X position of the widget.} xywh {95 150 55 20} labelsize 11 align 5 maximum 2048 step 1 textsize 11
}
Fl_Value_Input widget_y_input {
label {Y:}
callback y_cb
- tooltip {The Y position of the widget.} xywh {150 145 55 20} labelsize 11 align 5 maximum 2048 step 1 textsize 11
+ tooltip {The Y position of the widget.} xywh {155 150 55 20} labelsize 11 align 5 maximum 2048 step 1 textsize 11
}
Fl_Value_Input widget_w_input {
label {Width:}
callback w_cb
- tooltip {The width of the widget.} xywh {210 145 55 20} labelsize 11 align 5 maximum 2048 step 1 textsize 11
+ tooltip {The width of the widget.} xywh {215 150 55 20} labelsize 11 align 5 maximum 2048 step 1 textsize 11
}
Fl_Value_Input widget_h_input {
label {Height:}
callback h_cb
- tooltip {The height of the widget.} xywh {270 145 55 20} labelsize 11 align 5 maximum 2048 step 1 textsize 11
+ tooltip {The height of the widget.} xywh {275 150 55 20} labelsize 11 align 5 maximum 2048 step 1 textsize 11
}
Fl_Light_Button {} {
label Relative
callback wc_relative_cb
- tooltip {If set, widgets inside a widget class of type Fl_Group are repositioned relative to the origin at construction time} xywh {330 145 55 20} labelsize 11
+ tooltip {If set, widgets inside a widget class of type Fl_Group are repositioned relative to the origin at construction time} xywh {335 150 55 20} labelsize 11
}
Fl_Box {} {
- xywh {389 145 1 20} resizable
+ xywh {394 150 1 20} resizable
}
}
Fl_Group {} {
label {Values:}
callback propagate_load
- xywh {90 180 300 20} labelfont 1 labelsize 11 align 4
+ xywh {95 185 300 20} labelfont 1 labelsize 11 align 4
} {
Fl_Value_Input {} {
label {Size:}
callback slider_size_cb
- tooltip {The size of the slider.} xywh {90 180 55 20} labelsize 11 align 5 step 0.010101 textsize 11
+ tooltip {The size of the slider.} xywh {95 185 55 20} labelsize 11 align 5 step 0.010101 textsize 11
}
Fl_Value_Input {} {
label {Minimum:}
callback min_cb
- tooltip {The minimum value of the widget.} xywh {150 180 55 20} labelsize 11 align 5 textsize 11
+ tooltip {The minimum value of the widget.} xywh {155 185 55 20} labelsize 11 align 5 textsize 11
}
Fl_Value_Input {} {
label {Maximum:}
callback max_cb
- tooltip {The maximum value of the widget.} xywh {210 180 55 20} labelsize 11 align 5 value 1 textsize 11
+ tooltip {The maximum value of the widget.} xywh {215 185 55 20} labelsize 11 align 5 value 1 textsize 11
}
Fl_Value_Input {} {
label {Step:}
callback step_cb
- tooltip {The resolution of the widget value.} xywh {270 180 55 20} labelsize 11 align 5 textsize 11
+ tooltip {The resolution of the widget value.} xywh {275 185 55 20} labelsize 11 align 5 textsize 11
}
Fl_Value_Input {} {
label {Value:}
callback value_cb
- tooltip {The current widget value.} xywh {330 180 55 20} labelsize 11 align 5 textsize 11
+ tooltip {The current widget value.} xywh {335 185 55 20} labelsize 11 align 5 textsize 11
}
Fl_Box {} {
- xywh {390 180 0 20} resizable
+ xywh {395 185 0 20} resizable
}
}
Fl_Group {} {
label {Size Range:}
callback propagate_load
- xywh {90 180 300 20} labelfont 1 labelsize 11 align 4 hide
+ xywh {95 185 300 20} labelfont 1 labelsize 11 align 4 hide
} {
Fl_Value_Input {} {
label {Minimum Size:}
callback min_w_cb
- tooltip {The size of the slider.} xywh {90 180 55 20} labelsize 11 align 5 maximum 2048 step 1 textsize 11
+ tooltip {The size of the slider.} xywh {95 185 55 20} labelsize 11 align 5 maximum 2048 step 1 textsize 11
}
Fl_Value_Input {} {
callback min_h_cb
- tooltip {The minimum value of the widget.} xywh {150 180 55 20} labelsize 11 align 5 maximum 2048 step 1 textsize 11
+ tooltip {The minimum value of the widget.} xywh {155 185 55 20} labelsize 11 align 5 maximum 2048 step 1 textsize 11
}
Fl_Button {} {
label set
callback set_min_size_cb
- xywh {210 180 25 20} labelsize 11
+ xywh {215 185 25 20} labelsize 11
}
Fl_Value_Input {} {
label {Maximum Size:}
callback max_w_cb
- tooltip {The maximum value of the widget.} xywh {240 180 55 20} labelsize 11 align 5 maximum 2048 step 1 textsize 11
+ tooltip {The maximum value of the widget.} xywh {245 185 55 20} labelsize 11 align 5 maximum 2048 step 1 textsize 11
}
Fl_Value_Input {} {
callback max_h_cb
- tooltip {The resolution of the widget value.} xywh {300 180 55 20} labelsize 11 align 5 maximum 2048 step 1 textsize 11
+ tooltip {The resolution of the widget value.} xywh {305 185 55 20} labelsize 11 align 5 maximum 2048 step 1 textsize 11
}
Fl_Button {} {
label set
callback set_max_size_cb
- xywh {360 180 25 20} labelsize 11
+ xywh {365 185 25 20} labelsize 11
}
Fl_Box {} {
- xywh {390 180 0 20} resizable
+ xywh {395 185 0 20} resizable
}
}
Fl_Button {} {
label {Shortcut:}
callback shortcut_in_cb
- tooltip {The shortcut key for the widget.} xywh {90 205 300 20} box DOWN_BOX color 7 selection_color 7 labelfont 1 labelsize 11 align 4
+ tooltip {The shortcut key for the widget.} xywh {95 210 310 20} box DOWN_BOX color 7 selection_color 7 labelfont 1 labelsize 11 align 4
code0 {\#include "Shortcut_Button.h"}
class Shortcut_Button
}
Fl_Group {} {
label {X Class:}
callback propagate_load
- xywh {90 230 300 20} labelfont 1 labelsize 11 align 4
+ xywh {95 235 300 20} labelfont 1 labelsize 11 align 4
} {
Fl_Input {} {
label {:}
callback xclass_cb
- tooltip {The X resource class.} xywh {90 230 95 20} labelfont 1 labelsize 11 textsize 11 resizable
+ tooltip {The X resource class.} xywh {95 235 95 20} labelfont 1 labelsize 11 textsize 11 resizable
}
Fl_Light_Button {} {
label Border
callback border_cb
- tooltip {Add a border around the window.} xywh {190 230 60 20} selection_color 1 labelsize 11
+ tooltip {Add a border around the window.} xywh {195 235 60 20} selection_color 1 labelsize 11
}
Fl_Light_Button {} {
label Modal
callback modal_cb
- tooltip {Make the window modal.} xywh {255 230 55 20} selection_color 1 labelsize 11
+ tooltip {Make the window modal.} xywh {260 235 55 20} selection_color 1 labelsize 11
}
Fl_Light_Button {} {
label Nonmodal
callback non_modal_cb
- tooltip {Make the window non-modal.} xywh {315 230 75 20} selection_color 1 labelsize 11 align 148
+ tooltip {Make the window non-modal.} xywh {320 235 75 20} selection_color 1 labelsize 11 align 148
}
}
Fl_Group {} {
label {Attributes:}
callback propagate_load
- xywh {90 255 305 20} labelfont 1 labelsize 11 align 4
+ xywh {95 260 305 20} labelfont 1 labelsize 11 align 4
} {
Fl_Light_Button {} {
label Visible
callback visible_cb
- tooltip {Show the widget.} xywh {90 255 60 20} selection_color 1 labelsize 11
+ tooltip {Show the widget.} xywh {95 260 60 20} selection_color 1 labelsize 11
}
Fl_Light_Button {} {
label Active
callback active_cb
- tooltip {Activate the widget.} xywh {155 255 60 20} selection_color 1 labelsize 11
+ tooltip {Activate the widget.} xywh {160 260 60 20} selection_color 1 labelsize 11
}
Fl_Light_Button {} {
label Resizable
callback resizable_cb
- tooltip {Make the widget resizable.} xywh {220 255 75 20} selection_color 1 labelsize 11 when 1
+ tooltip {Make the widget resizable.} xywh {225 260 75 20} selection_color 1 labelsize 11 when 1
}
Fl_Light_Button {} {
label Hotspot
callback hotspot_cb
- tooltip {Center the window under this widget.} xywh {300 255 70 20} selection_color 1 labelsize 11 when 1
+ tooltip {Center the window under this widget.} xywh {305 260 70 20} selection_color 1 labelsize 11 when 1
}
Fl_Box {} {
- xywh {390 255 0 20} labelsize 11 resizable
+ xywh {395 260 0 20} labelsize 11 resizable
}
}
Fl_Input {} {
label {Tooltip:}
callback tooltip_cb
- tooltip {The tooltip text for the widget.} xywh {90 280 300 20} labelfont 1 labelsize 11 textsize 11
+ tooltip {The tooltip text for the widget.} xywh {95 285 310 20} labelfont 1 labelsize 11 textsize 11
}
Fl_Box {} {
- xywh {90 300 300 5} labelsize 11 resizable
+ xywh {95 305 300 5} labelsize 11 resizable
}
}
Fl_Group {} {
label Style
callback propagate_load
- xywh {5 25 400 290} labelsize 11 when 0 hide
+ xywh {10 30 400 290} labelsize 11 when 0 hide
} {
Fl_Group {} {
label {Label Font:}
callback propagate_load open
- xywh {90 35 300 20} labelfont 1 labelsize 11 align 4
+ xywh {95 40 309 20} labelfont 1 labelsize 11 align 4
} {
Fl_Choice {} {
callback labelfont_cb open
- tooltip {The style of the label text.} xywh {90 35 160 20} box THIN_UP_BOX down_box BORDER_BOX labelfont 1 labelsize 11 resizable
+ tooltip {The style of the label text.} xywh {95 40 170 20} box THIN_UP_BOX down_box BORDER_BOX labelfont 1 labelsize 11 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 {250 35 50 20} labelsize 11 maximum 100 step 1 value 14 textsize 11
+ tooltip {The size of the label text.} xywh {264 40 50 20} labelsize 11 maximum 100 step 1 value 14 textsize 11
}
Fl_Button {} {
label {Label Color}
callback labelcolor_cb
- tooltip {The color of the label text.} xywh {300 35 90 20} labelsize 11
+ tooltip {The color of the label text.} xywh {314 40 90 20} labelsize 11
}
}
Fl_Group {} {
label {Box:}
callback propagate_load open
- xywh {90 60 300 20} labelfont 1 labelsize 11 align 4
+ xywh {95 65 309 20} labelfont 1 labelsize 11 align 4
} {
Fl_Choice {} {
callback box_cb open
- tooltip {The "up" box of the widget.} xywh {90 60 210 20} box THIN_UP_BOX down_box BORDER_BOX labelfont 1 labelsize 11 resizable
+ tooltip {The "up" box of the widget.} xywh {95 65 219 20} box THIN_UP_BOX down_box BORDER_BOX labelfont 1 labelsize 11 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 {300 60 90 20} labelsize 11
+ tooltip {The background color of the widget.} xywh {314 65 90 20} labelsize 11
}
}
Fl_Group {} {
label {Down Box:}
callback propagate_load open
- xywh {90 85 300 20} labelfont 1 labelsize 11 align 4
+ xywh {95 90 309 20} labelfont 1 labelsize 11 align 4
} {
Fl_Choice {} {
callback down_box_cb open
- tooltip {The "down" box of the widget.} xywh {90 85 210 20} box THIN_UP_BOX down_box BORDER_BOX labelfont 1 labelsize 11 resizable
+ tooltip {The "down" box of the widget.} xywh {95 90 219 20} box THIN_UP_BOX down_box BORDER_BOX labelfont 1 labelsize 11 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 {300 85 90 20} labelsize 11
+ tooltip {The selection color of the widget.} xywh {314 90 90 20} labelsize 11
}
}
Fl_Group {} {
label {Text Font:}
callback propagate_load open
- xywh {90 110 300 20} labelfont 1 labelsize 11 align 4
+ xywh {95 115 309 20} labelfont 1 labelsize 11 align 4
} {
Fl_Choice {} {
callback textfont_cb open
- tooltip {The value text style.} xywh {90 110 160 20} box DOWN_BOX down_box BORDER_BOX labelfont 1 labelsize 11 resizable
+ tooltip {The value text style.} xywh {95 115 170 20} box DOWN_BOX down_box BORDER_BOX labelfont 1 labelsize 11 resizable
code0 {extern Fl_Menu_Item fontmenu[];}
code1 {o->menu(fontmenu);}
} {}
Fl_Value_Input {} {
callback textsize_cb
- tooltip {The value text size.} xywh {250 110 50 20} labelsize 11 maximum 100 step 1 value 14 textsize 11
+ tooltip {The value text size.} xywh {264 115 50 20} labelsize 11 maximum 100 step 1 value 14 textsize 11
}
Fl_Button {} {
label {Text Color}
callback textcolor_cb
- tooltip {The value text color.} xywh {300 110 90 20} labelsize 11
+ tooltip {The value text color.} xywh {314 115 90 20} labelsize 11
}
}
Fl_Box {} {
- xywh {90 135 300 40} labelsize 11 resizable
+ xywh {95 140 300 40} labelsize 11 resizable
}
}
Fl_Group {} {
label {C++}
callback propagate_load
- xywh {5 25 400 290} labelsize 11 when 0 hide
+ xywh {10 30 400 290} labelsize 11 when 0 hide
} {
Fl_Group {} {
label {Class:}
callback propagate_load
- xywh {90 35 300 20} labelfont 1 labelsize 11 align 4
+ xywh {95 40 310 20} labelfont 1 labelsize 11 align 4
} {
Fl_Input {} {
user_data 4
callback subclass_cb
- tooltip {The widget subclass.} xywh {90 35 160 20} labelfont 1 labelsize 11 textfont 4 textsize 11 resizable
+ tooltip {The widget subclass.} xywh {95 40 172 20} labelfont 1 labelsize 11 textfont 4 textsize 11 resizable
}
Fl_Choice {} {
callback subtype_cb open
- tooltip {The widget subtype.} xywh {250 35 140 20} box THIN_UP_BOX down_box BORDER_BOX labelsize 11
+ tooltip {The widget subtype.} xywh {265 40 140 20} box THIN_UP_BOX down_box BORDER_BOX labelsize 11
} {}
}
Fl_Group {} {
label {Name:}
callback propagate_load
- xywh {90 60 300 20} labelfont 1 labelsize 11 align 4
+ xywh {95 65 310 20} labelfont 1 labelsize 11 align 4
} {
Fl_Input {} {
callback name_cb
- tooltip {The name of the widget.} xywh {90 60 240 20} labelfont 1 labelsize 11 textsize 11 resizable
+ tooltip {The name of the widget.} xywh {95 65 250 20} labelfont 1 labelsize 11 textsize 11 resizable
}
Fl_Light_Button {} {
label public
callback name_public_cb
- tooltip {Make the widget publicly accessible.} xywh {330 60 60 20} selection_color 1 labelsize 11 when 1
+ tooltip {Make the widget publicly accessible.} xywh {345 65 60 20} selection_color 1 labelsize 11 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 {90 85 300 20} labelfont 1 labelsize 11 textfont 4 textsize 11
+ tooltip {Extra initialization code for the widget.} xywh {95 90 310 20} labelfont 1 labelsize 11 textfont 4 textsize 11
}
Fl_Input {v_input[1]} {
user_data 1
callback v_input_cb
- tooltip {Extra initialization code for the widget.} xywh {90 105 300 20} labelsize 11 textfont 4 textsize 11
+ tooltip {Extra initialization code for the widget.} xywh {95 110 310 20} labelsize 11 textfont 4 textsize 11
}
Fl_Input {v_input[2]} {
user_data 2
callback v_input_cb
- tooltip {Extra initialization code for the widget.} xywh {90 125 300 20} labelsize 11 textfont 4 textsize 11
+ tooltip {Extra initialization code for the widget.} xywh {95 130 310 20} labelsize 11 textfont 4 textsize 11
}
Fl_Input {v_input[3]} {
user_data 3
callback v_input_cb
- tooltip {Extra initialization code for the widget.} xywh {90 145 300 20} labelsize 11 textfont 4 textsize 11
+ tooltip {Extra initialization code for the widget.} xywh {95 150 310 20} labelsize 11 textfont 4 textsize 11
}
Fl_Text_Editor {} {
label {Callback:}
callback callback_cb
- tooltip {The callback function or code for the widget. Use the variable name 'o' to access the Widget pointer and 'v' to access the user value.} xywh {90 170 300 90} box DOWN_BOX labelfont 1 labelsize 11 align 4 textfont 4 textsize 11 resizable
+ tooltip {The callback function or code for the widget. Use the variable name 'o' to access the Widget pointer and 'v' to access the user value.} xywh {95 175 310 90} box DOWN_BOX labelfont 1 labelsize 11 align 4 textfont 4 textsize 11 resizable
code0 {\#include "CodeEditor.h"}
class CodeEditor
}
Fl_Group {} {
label {User Data:}
callback propagate_load
- xywh {90 265 300 20} labelfont 1 labelsize 11 align 4
+ xywh {95 270 310 20} labelfont 1 labelsize 11 align 4
} {
Fl_Input {} {
callback user_data_cb
- tooltip {The user data to pass into the callback code.} xywh {90 265 140 20} labelfont 1 labelsize 11 textfont 4 textsize 11 resizable
+ tooltip {The user data to pass into the callback code.} xywh {95 270 158 20} labelfont 1 labelsize 11 textfont 4 textsize 11 resizable
}
Fl_Choice {} {
label {When:}
callback when_cb open
- tooltip {When to call the callback function.} xywh {285 265 105 20} box THIN_UP_BOX down_box BORDER_BOX labelfont 1 labelsize 11 when 1
+ tooltip {When to call the callback function.} xywh {300 270 105 20} box THIN_UP_BOX down_box BORDER_BOX labelfont 1 labelsize 11 when 1
code0 {extern Fl_Menu_Item whenmenu[];}
code1 {o->menu(whenmenu);}
} {}
@@ -493,50 +493,50 @@ Function {make_widget_panel()} {open
Fl_Group {} {
label {Type:}
callback propagate_load
- xywh {90 290 300 20} labelfont 1 labelsize 11 align 4
+ xywh {95 295 310 20} labelfont 1 labelsize 11 align 4
} {
Fl_Input {} {
callback user_data_type_cb
- tooltip {The type of the user data.} xywh {90 290 140 20} labelfont 1 labelsize 11 textfont 4 textsize 11 resizable
+ tooltip {The type of the user data.} xywh {95 295 158 20} labelfont 1 labelsize 11 textfont 4 textsize 11 resizable
}
Fl_Light_Button {} {
label {No Change}
callback when_button_cb
- tooltip {Call the callback even if the value has not changed.} xywh {285 290 105 20} selection_color 1 labelsize 11
+ tooltip {Call the callback even if the value has not changed.} xywh {300 295 105 20} selection_color 1 labelsize 11
}
}
}
}
- Fl_Group {} {
- xywh {8 321 391 24} labelsize 11
+ Fl_Group {} {open
+ xywh {9 330 400 20} labelsize 11
} {
Fl_Box {} {
- xywh {8 325 20 20} labelsize 11 resizable
+ xywh {9 330 20 20} labelsize 11 resizable
}
Fl_Button {} {
label {Hide &Overlays}
callback overlay_cb
- tooltip {Hide the widget overlay box.} xywh {231 325 99 20} labelsize 11 labelcolor 1
+ tooltip {Hide the widget overlay box.} xywh {240 330 99 20} labelsize 11 labelcolor 1
}
Fl_Button {} {
label Revert
callback revert_cb
- xywh {80 325 80 20} labelsize 11 hide
+ xywh {66 330 80 20} labelsize 11 hide
}
Fl_Return_Button {} {
label Close
callback ok_cb
- xywh {335 325 64 20} labelsize 11
+ xywh {344 330 64 20} labelsize 11
}
Fl_Button {} {
label Cancel
callback cancel_cb
- xywh {329 325 70 20} labelsize 11 hide
+ xywh {339 330 70 20} labelsize 11 hide
}
Fl_Button wLiveMode {
label {Live &Mode}
callback live_mode_cb
- tooltip {Create a live duplicate of the selected widgets to test resizing and menu behavior.} xywh {142 325 84 20} type Toggle labelsize 11
+ tooltip {Create a live duplicate of the selected widgets to test resizing and menu behavior.} xywh {151 330 84 20} type Toggle labelsize 11
}
}
}
diff --git a/fluid/widget_panel.h b/fluid/widget_panel.h
index bdb7468c2..e4e0c5aaa 100644
--- a/fluid/widget_panel.h
+++ b/fluid/widget_panel.h
@@ -25,7 +25,7 @@
// http://www.fltk.org/str.php
//
-// generated by Fast Light User Interface Designer (fluid) version 1.0107
+// generated by Fast Light User Interface Designer (fluid) version 1.0108
#ifndef widget_panel_h
#define widget_panel_h
diff --git a/src/Fl_Button.cxx b/src/Fl_Button.cxx
index 8a4536de0..7ba692162 100644
--- a/src/Fl_Button.cxx
+++ b/src/Fl_Button.cxx
@@ -3,7 +3,7 @@
//
// Button widget for the Fast Light Tool Kit (FLTK).
//
-// Copyright 1998-2005 by Bill Spitzak and others.
+// Copyright 1998-2006 by Bill Spitzak and others.
//
// This library is free software; you can redistribute it and/or
// modify it under the terms of the GNU Library General Public
@@ -60,9 +60,13 @@ void Fl_Button::setonly() { // set this radio button on, turn others off
void Fl_Button::draw() {
if (type() == FL_HIDDEN_BUTTON) return;
Fl_Color col = value() ? selection_color() : color();
-//if (col == FL_GRAY && Fl::belowmouse()==this) col = FL_LIGHT1;
draw_box(value() ? (down_box()?down_box():fl_down(box())) : box(), col);
- draw_label();
+ if (labeltype() == FL_NORMAL_LABEL) {
+ Fl_Color c = labelcolor();
+ labelcolor(fl_contrast(c, col));
+ draw_label();
+ labelcolor(c);
+ } else draw_label();
if (Fl::focus() == this) draw_focus();
}
diff --git a/src/Fl_Choice.cxx b/src/Fl_Choice.cxx
index 6361e03a4..338390a15 100644
--- a/src/Fl_Choice.cxx
+++ b/src/Fl_Choice.cxx
@@ -3,7 +3,7 @@
//
// Choice widget for the Fast Light Tool Kit (FLTK).
//
-// Copyright 1998-2005 by Bill Spitzak and others.
+// Copyright 1998-2006 by Bill Spitzak and others.
//
// This library is free software; you can redistribute it and/or
// modify it under the terms of the GNU Library General Public
@@ -51,8 +51,8 @@ void Fl_Choice::draw() {
fl_polygon(x1, y1 + 3, x1 + w1, y1 + w1 + 3, x1 + 2 * w1, y1 + 3);
fl_polygon(x1, y1 + 1, x1 + w1, y1 - w1 + 1, x1 + 2 * w1, y1 + 1);
} else {
- draw_box(FL_DOWN_BOX, color());
- draw_box(FL_UP_BOX,X,Y,W,H,FL_GRAY);
+ draw_box(FL_DOWN_BOX, fl_lighter(color()));
+ draw_box(FL_UP_BOX,X,Y,W,H,color());
fl_color(active_r() ? labelcolor() : fl_inactive(labelcolor()));
fl_polygon(x1, y1, x1 + w1, y1 + w1, x1 + 2 * w1, y1);
@@ -103,7 +103,6 @@ Fl_Choice::Fl_Choice(int X, int Y, int W, int H, const char *l)
textfont(FL_HELVETICA);
box(FL_FLAT_BOX);
down_box(FL_BORDER_BOX);
- color(FL_BACKGROUND2_COLOR);
}
int Fl_Choice::value(const Fl_Menu_Item *v) {
diff --git a/src/Fl_Scroll.cxx b/src/Fl_Scroll.cxx
index 09bf543bf..0053385cc 100644
--- a/src/Fl_Scroll.cxx
+++ b/src/Fl_Scroll.cxx
@@ -3,7 +3,7 @@
//
// Scroll widget for the Fast Light Tool Kit (FLTK).
//
-// Copyright 1998-2005 by Bill Spitzak and others.
+// Copyright 1998-2006 by Bill Spitzak and others.
//
// This library is free software; you can redistribute it and/or
// modify it under the terms of the GNU Library General Public
diff --git a/src/Fl_Scrollbar.cxx b/src/Fl_Scrollbar.cxx
index 66547b469..4ee2dc786 100644
--- a/src/Fl_Scrollbar.cxx
+++ b/src/Fl_Scrollbar.cxx
@@ -3,7 +3,7 @@
//
// Scroll bar widget for the Fast Light Tool Kit (FLTK).
//
-// Copyright 1998-2005 by Bill Spitzak and others.
+// Copyright 1998-2006 by Bill Spitzak and others.
//
// This library is free software; you can redistribute it and/or
// modify it under the terms of the GNU Library General Public
@@ -29,6 +29,7 @@
#include <FL/Fl_Scrollbar.H>
#include <FL/fl_draw.H>
#include <math.h>
+#include "flstring.h"
#define INITIALREPEAT .5
#define REPEAT .05
@@ -215,9 +216,15 @@ void Fl_Scrollbar::draw() {
int w1 = (H-4)/3; if (w1 < 1) w1 = 1;
int x1 = X+(H-w1-1)/2;
int yy1 = Y+(H-2*w1-1)/2;
- fl_polygon(x1, yy1+w1, x1+w1, yy1+2*w1, x1+w1, yy1);
- x1 += (W-H);
- fl_polygon(x1, yy1, x1, yy1+2*w1, x1+w1, yy1+w1);
+ if (Fl::scheme_ && !strcmp(Fl::scheme_, "gtk+")) {
+ fl_polygon(x1, yy1+w1, x1+w1, yy1+2*w1, x1+w1-1, yy1+w1, x1+w1, yy1);
+ x1 += (W-H);
+ fl_polygon(x1, yy1, x1+1, yy1+w1, x1, yy1+2*w1, x1+w1, yy1+w1);
+ } else {
+ fl_polygon(x1, yy1+w1, x1+w1, yy1+2*w1, x1+w1, yy1);
+ x1 += (W-H);
+ fl_polygon(x1, yy1, x1, yy1+2*w1, x1+w1, yy1+w1);
+ }
}
} else { // vertical
if (H < 3*W) {Fl_Slider::draw(X,Y,W,H); return;}
@@ -234,9 +241,16 @@ void Fl_Scrollbar::draw() {
int w1 = (W-4)/3; if (w1 < 1) w1 = 1;
int x1 = X+(W-2*w1-1)/2;
int yy1 = Y+(W-w1-1)/2;
- fl_polygon(x1, yy1+w1, x1+2*w1, yy1+w1, x1+w1, yy1);
- yy1 += H-W;
- fl_polygon(x1, yy1, x1+w1, yy1+w1, x1+2*w1, yy1);
+ if (Fl::scheme_ && !strcmp(Fl::scheme_, "gtk+")) {
+ fl_polygon(x1, yy1+w1, x1+w1, yy1+w1-1, x1+2*w1, yy1+w1, x1+w1, yy1);
+ yy1 += H-W;
+ fl_polygon(x1, yy1, x1+w1, yy1+1, x1+w1, yy1+w1);
+ fl_polygon(x1+w1, yy1+1, x1+2*w1, yy1, x1+w1, yy1+w1);
+ } else {
+ fl_polygon(x1, yy1+w1, x1+2*w1, yy1+w1, x1+w1, yy1);
+ yy1 += H-W;
+ fl_polygon(x1, yy1, x1+w1, yy1+w1, x1+2*w1, yy1);
+ }
}
}
}
diff --git a/src/Fl_Slider.cxx b/src/Fl_Slider.cxx
index 874ffa102..be39e9ce8 100644
--- a/src/Fl_Slider.cxx
+++ b/src/Fl_Slider.cxx
@@ -3,7 +3,7 @@
//
// Slider widget for the Fast Light Tool Kit (FLTK).
//
-// Copyright 1998-2005 by Bill Spitzak and others.
+// Copyright 1998-2006 by Bill Spitzak and others.
//
// This library is free software; you can redistribute it and/or
// modify it under the terms of the GNU Library General Public
@@ -29,6 +29,7 @@
#include <FL/Fl_Slider.H>
#include <FL/fl_draw.H>
#include <math.h>
+#include "flstring.h"
void Fl_Slider::_Fl_Slider() {
slider_size_ = 0;
@@ -148,6 +149,45 @@ void Fl_Slider::draw(int X, int Y, int W, int H) {
draw_box(FL_THIN_DOWN_BOX, xsl+d, ysl+2, wsl-2*d, hsl-4,selection_color());
} else {
if (wsl>0 && hsl>0) draw_box(box1, xsl, ysl, wsl, hsl, selection_color());
+
+ if (type()!=FL_HOR_FILL_SLIDER && type() != FL_VERT_FILL_SLIDER &&
+ Fl::scheme_ && !strcmp(Fl::scheme_, "gtk+")) {
+ if (W>H && wsl>(hsl+8)) {
+ // Draw horizontal grippers
+ int yy, hh;
+ hh = hsl-8;
+ xx = xsl+(wsl-hsl-4)/2;
+ yy = ysl+3;
+
+ fl_color(fl_darker(selection_color()));
+ fl_line(xx, yy+hh, xx+hh, yy);
+ fl_line(xx+6, yy+hh, xx+hh+6, yy);
+ fl_line(xx+12, yy+hh, xx+hh+12, yy);
+
+ xx++;
+ fl_color(fl_lighter(selection_color()));
+ fl_line(xx, yy+hh, xx+hh, yy);
+ fl_line(xx+6, yy+hh, xx+hh+6, yy);
+ fl_line(xx+12, yy+hh, xx+hh+12, yy);
+ } else if (H>W && hsl>(wsl+8)) {
+ // Draw vertical grippers
+ int yy;
+ xx = xsl+4;
+ ww = wsl-8;
+ yy = ysl+(hsl-wsl-4)/2;
+
+ fl_color(fl_darker(selection_color()));
+ fl_line(xx, yy+ww, xx+ww, yy);
+ fl_line(xx, yy+ww+6, xx+ww, yy+6);
+ fl_line(xx, yy+ww+12, xx+ww, yy+12);
+
+ yy++;
+ fl_color(fl_lighter(selection_color()));
+ fl_line(xx, yy+ww, xx+ww, yy);
+ fl_line(xx, yy+ww+6, xx+ww, yy+6);
+ fl_line(xx, yy+ww+12, xx+ww, yy+12);
+ }
+ }
}
draw_label(xsl, ysl, wsl, hsl);
diff --git a/src/Fl_get_system_colors.cxx b/src/Fl_get_system_colors.cxx
index 0b630703c..bce9e2cbe 100644
--- a/src/Fl_get_system_colors.cxx
+++ b/src/Fl_get_system_colors.cxx
@@ -3,7 +3,7 @@
//
// System color support for the Fast Light Tool Kit (FLTK).
//
-// Copyright 1998-2005 by Bill Spitzak and others.
+// Copyright 1998-2006 by Bill Spitzak and others.
//
// This library is free software; you can redistribute it and/or
// modify it under the terms of the GNU Library General Public
@@ -322,6 +322,24 @@ int Fl::reload_scheme() {
set_boxtype(FL_THIN_DOWN_BOX, FL_PLASTIC_THIN_DOWN_BOX);
set_boxtype(_FL_ROUND_UP_BOX, FL_PLASTIC_ROUND_UP_BOX);
set_boxtype(_FL_ROUND_DOWN_BOX, FL_PLASTIC_ROUND_DOWN_BOX);
+ } else if (scheme_ && !strcasecmp(scheme_, "gtk+")) {
+ // Use a GTK+ inspired look-n-feel...
+ if (scheme_bg_) {
+ delete scheme_bg_;
+ scheme_bg_ = (Fl_Image *)0;
+ }
+
+ set_boxtype(FL_UP_FRAME, FL_GTK_UP_FRAME);
+ set_boxtype(FL_DOWN_FRAME, FL_GTK_DOWN_FRAME);
+ set_boxtype(FL_THIN_UP_FRAME, FL_GTK_UP_FRAME);
+ set_boxtype(FL_THIN_DOWN_FRAME, FL_GTK_DOWN_FRAME);
+
+ set_boxtype(FL_UP_BOX, FL_GTK_UP_BOX);
+ set_boxtype(FL_DOWN_BOX, FL_GTK_DOWN_BOX);
+ set_boxtype(FL_THIN_UP_BOX, FL_GTK_UP_BOX);
+ set_boxtype(FL_THIN_DOWN_BOX, FL_GTK_DOWN_BOX);
+ set_boxtype(_FL_ROUND_UP_BOX, FL_GTK_ROUND_UP_BOX);
+ set_boxtype(_FL_ROUND_DOWN_BOX, FL_GTK_ROUND_DOWN_BOX);
} else {
// Use the standard FLTK look-n-feel...
if (scheme_bg_) {
diff --git a/src/Makefile b/src/Makefile
index 0df493d80..4397eb5f5 100644
--- a/src/Makefile
+++ b/src/Makefile
@@ -3,7 +3,7 @@
#
# Library makefile for the Fast Light Tool Kit (FLTK).
#
-# Copyright 1998-2005 by Bill Spitzak and others.
+# Copyright 1998-2006 by Bill Spitzak and others.
#
# This library is free software; you can redistribute it and/or
# modify it under the terms of the GNU Library General Public
@@ -133,6 +133,7 @@ CPPFILES = \
fl_engraved_label.cxx \
fl_file_dir.cxx \
fl_font.cxx \
+ fl_gtk.cxx \
fl_labeltype.cxx \
fl_line_style.cxx \
fl_oval_box.cxx \
diff --git a/src/fl_boxtype.cxx b/src/fl_boxtype.cxx
index cb6aa0a7a..5e8f5e45c 100644
--- a/src/fl_boxtype.cxx
+++ b/src/fl_boxtype.cxx
@@ -3,7 +3,7 @@
//
// Box drawing code for the Fast Light Tool Kit (FLTK).
//
-// Copyright 1998-2005 by Bill Spitzak and others.
+// Copyright 1998-2006 by Bill Spitzak and others.
//
// This library is free software; you can redistribute it and/or
// modify it under the terms of the GNU Library General Public
@@ -237,6 +237,14 @@ static struct {
{fl_down_frame, 2,2,4,4,0}, // _FL_PLASTIC_DOWN_FRAME,
{fl_up_box, 2,2,4,4,0}, // _FL_PLASTIC_THIN_UP_BOX,
{fl_down_box, 2,2,4,4,0}, // _FL_PLASTIC_THIN_DOWN_BOX,
+ {fl_up_box, 2,2,4,4,0}, // _FL_PLASTIC_ROUND_UP_BOX,
+ {fl_down_box, 2,2,4,4,0}, // _FL_PLASTIC_ROUND_DOWN_BOX,
+ {fl_up_box, 2,2,4,4,0}, // _FL_GTK_UP_BOX,
+ {fl_down_box, 2,2,4,4,0}, // _FL_GTK_DOWN_BOX,
+ {fl_up_frame, 2,2,4,4,0}, // _FL_GTK_UP_FRAME,
+ {fl_down_frame, 2,2,4,4,0}, // _FL_GTK_DOWN_FRAME,
+ {fl_up_box, 2,2,4,4,0}, // _FL_GTK_ROUND_UP_BOX,
+ {fl_down_box, 2,2,4,4,0}, // _FL_GTK_ROUND_DOWN_BOX,
{fl_up_box, 3,3,6,6,0}, // FL_FREE_BOX+0
{fl_down_box, 3,3,6,6,0}, // FL_FREE_BOX+1
{fl_up_box, 3,3,6,6,0}, // FL_FREE_BOX+2
diff --git a/src/fl_gtk.cxx b/src/fl_gtk.cxx
new file mode 100644
index 000000000..cae03585f
--- /dev/null
+++ b/src/fl_gtk.cxx
@@ -0,0 +1,134 @@
+//
+// "$Id$"
+//
+// "GTK" drawing routines for the Fast Light Tool Kit (FLTK).
+//
+// These box types provide a GTK+ look, based on Red Hat's Bluecurve
+// theme...
+//
+// Copyright 2006 by Michael Sweet.
+//
+// This library is free software; you can redistribute it and/or
+// modify it under the terms of the GNU Library General Public
+// License as published by the Free Software Foundation; either
+// version 2 of the License, or (at your option) any later version.
+//
+// This library is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+// Library General Public License for more details.
+//
+// You should have received a copy of the GNU Library General Public
+// License along with this library; if not, write to the Free Software
+// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
+// USA.
+//
+// Please report all bugs and problems on the following page:
+//
+// http://www.fltk.org/str.php
+//
+
+// Box drawing code for an obscure box type.
+// These box types are in seperate files so they are not linked
+// in if not used.
+
+#include <FL/Fl.H>
+#include <FL/fl_draw.H>
+
+extern void fl_internal_boxtype(Fl_Boxtype, Fl_Box_Draw_F*);
+
+
+static void gtk_up_frame(int x, int y, int w, int h, Fl_Color c) {
+ fl_color(fl_color_average(FL_WHITE, c, 0.5));
+ fl_xyline(x + 2, y + 1, x + w - 3);
+ fl_yxline(x + 1, y + 2, y + h - 4);
+
+ fl_color(fl_color_average(FL_BLACK, c, 0.5));
+ fl_begin_loop();
+ fl_vertex(x, y + 2);
+ fl_vertex(x + 2, y);
+ fl_vertex(x + w - 3, y);
+ fl_vertex(x + w - 1, y + 2);
+ fl_vertex(x + w - 1, y + h - 3);
+ fl_vertex(x + w - 3, y + h - 1);
+ fl_vertex(x + 2, y + h - 1);
+ fl_vertex(x, y + h - 3);
+ fl_end_loop();
+}
+
+
+static void gtk_up_box(int x, int y, int w, int h, Fl_Color c) {
+ gtk_up_frame(x, y, w, h, c);
+
+ fl_color(fl_color_average(FL_WHITE, c, 0.4));
+ fl_xyline(x + 2, y + 2, x + w - 3);
+ fl_color(fl_color_average(FL_WHITE, c, 0.2));
+ fl_xyline(x + 2, y + 3, x + w - 3);
+ fl_color(fl_color_average(FL_WHITE, c, 0.1));
+ fl_xyline(x + 2, y + 4, x + w - 3);
+ fl_color(c);
+ fl_rectf(x + 2, y + 5, w - 4, h - 7);
+ fl_color(fl_color_average(FL_BLACK, c, 0.025));
+ fl_xyline(x + 2, y + h - 4, x + w - 3);
+ fl_color(fl_color_average(FL_BLACK, c, 0.05));
+ fl_xyline(x + 2, y + h - 3, x + w - 3);
+ fl_color(fl_color_average(FL_BLACK, c, 0.1));
+ fl_xyline(x + 2, y + h - 2, x + w - 3);
+ fl_yxline(x + w - 2, y + 2, y + h - 3);
+}
+
+
+void gtk_down_frame(int x, int y, int w, int h, Fl_Color c) {
+ fl_color(fl_color_average(FL_BLACK, c, 0.5));
+ fl_begin_loop();
+ fl_vertex(x, y + 2);
+ fl_vertex(x + 2, y);
+ fl_vertex(x + w - 3, y);
+ fl_vertex(x + w - 1, y + 2);
+ fl_vertex(x + w - 1, y + h - 3);
+ fl_vertex(x + w - 3, y + h - 1);
+ fl_vertex(x + 2, y + h - 1);
+ fl_vertex(x, y + h - 3);
+ fl_end_loop();
+
+ fl_color(fl_color_average(FL_BLACK, c, 0.1));
+ fl_xyline(x + 2, y + 1, x + w - 3);
+ fl_yxline(x + 1, y + 2, y + h - 3);
+
+ fl_color(fl_color_average(FL_BLACK, c, 0.05));
+ fl_yxline(x + 2, y + h - 2, y + 2, x + w - 2);
+}
+
+
+void gtk_down_box(int x, int y, int w, int h, Fl_Color c) {
+ gtk_down_frame(x, y, w, h, c);
+
+ fl_color(c);
+ fl_rectf(x + 3, y + 3, w - 5, h - 4);
+ fl_yxline(x + w - 2, y + 3, y + h - 3);
+}
+
+
+void gtk_round_box(int x, int y, int w, int h, Fl_Color c) {
+ fl_color(c);
+ fl_pie(x, y, w, h, 0.0, 360.0);
+ fl_color(fl_color_average(FL_BLACK, c, 0.5));
+ fl_arc(x, y, w, h, 0.0, 360.0);
+}
+
+
+Fl_Boxtype fl_define_FL_GTK_UP_BOX() {
+ fl_internal_boxtype(_FL_GTK_UP_BOX, gtk_up_box);
+ fl_internal_boxtype(_FL_GTK_DOWN_BOX, gtk_down_box);
+ fl_internal_boxtype(_FL_GTK_UP_FRAME, gtk_up_frame);
+ fl_internal_boxtype(_FL_GTK_DOWN_FRAME, gtk_down_frame);
+ fl_internal_boxtype(_FL_GTK_ROUND_UP_BOX, gtk_round_box);
+ fl_internal_boxtype(_FL_GTK_ROUND_DOWN_BOX, gtk_round_box);
+
+ return _FL_GTK_UP_BOX;
+}
+
+
+//
+// End of "$Id$".
+//