summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMatthias Melcher <fltk@matthiasm.com>2002-10-31 18:49:05 +0000
committerMatthias Melcher <fltk@matthiasm.com>2002-10-31 18:49:05 +0000
commitf4a60090ba4f4256eeb03d5378d301fd3df40e5c (patch)
treedf62156629861157da8d612f72bf93a6570de8ee
parent270c364bb35f116443ba78f5cff1f51efc3beebc (diff)
Added WidgetBin/ToolBox to fluid. Made fluid remember window
positions (only main and toolbox yet). Toolbox can be switched off. Position remeber function can be switched off. git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@2767 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
-rw-r--r--fluid/Fl_Type.cxx6
-rw-r--r--fluid/alignment_panel.cxx36
-rw-r--r--fluid/alignment_panel.fl28
-rw-r--r--fluid/alignment_panel.h4
-rw-r--r--fluid/fluid.cxx48
-rw-r--r--fluid/function_panel.cxx327
-rw-r--r--fluid/function_panel.fl339
-rw-r--r--fluid/function_panel.h8
8 files changed, 770 insertions, 26 deletions
diff --git a/fluid/Fl_Type.cxx b/fluid/Fl_Type.cxx
index 91e5b9bcc..ddbebfa48 100644
--- a/fluid/Fl_Type.cxx
+++ b/fluid/Fl_Type.cxx
@@ -1,5 +1,5 @@
//
-// "$Id: Fl_Type.cxx,v 1.6.2.6.2.10 2002/10/30 21:06:11 matthiaswm Exp $"
+// "$Id: Fl_Type.cxx,v 1.6.2.6.2.11 2002/10/31 18:48:54 matthiaswm Exp $"
//
// Widget type code for the Fast Light Tool Kit (FLTK).
//
@@ -358,7 +358,7 @@ int Widget_Browser::handle(int e) {
if (!Fl::event_inside(X,Y,W,H)) break;
l = (Fl_Type*)find_item(Fl::event_y());
if (l) {
- X += 10*l->level + 16;
+ X += 12*l->level + 18;
if (l->is_parent() && Fl::event_x()>X && Fl::event_x()<X+13) {
title = pushedtitle = l;
redraw_line(l);
@@ -784,5 +784,5 @@ void Fl_Type::read_property(const char *c) {
int Fl_Type::read_fdesign(const char*, const char*) {return 0;}
//
-// End of "$Id: Fl_Type.cxx,v 1.6.2.6.2.10 2002/10/30 21:06:11 matthiaswm Exp $".
+// End of "$Id: Fl_Type.cxx,v 1.6.2.6.2.11 2002/10/31 18:48:54 matthiaswm Exp $".
//
diff --git a/fluid/alignment_panel.cxx b/fluid/alignment_panel.cxx
index d735808d5..3fb81e28b 100644
--- a/fluid/alignment_panel.cxx
+++ b/fluid/alignment_panel.cxx
@@ -1,4 +1,4 @@
-// generated by Fast Light User Interface Designer (fluid) version 1.0100
+// generated by Fast Light User Interface Designer (fluid) version 1.0102
#include "alignment_panel.h"
@@ -136,16 +136,28 @@ static void cb_openlast_button(Fl_Check_Button*, void*) {
fluid_prefs.set("open_previous_file", openlast_button->value());
}
+Fl_Check_Button *openbin_button=(Fl_Check_Button *)0;
+
+static void cb_openbin_button(Fl_Check_Button*, void*) {
+ fluid_prefs.set("open_widget_bin", openbin_button->value());
+}
+
+Fl_Check_Button *prevpos_button=(Fl_Check_Button *)0;
+
+static void cb_prevpos_button(Fl_Check_Button*, void*) {
+ fluid_prefs.set("prev_window_pos", prevpos_button->value());
+}
+
Fl_Window* make_settings_window() {
Fl_Window* w;
- { Fl_Window* o = settings_window = new Fl_Window(255, 175, "GUI Settings");
+ { Fl_Window* o = settings_window = new Fl_Window(255, 253, "GUI Settings");
w = o;
- { Fl_Button* o = new Fl_Button(185, 145, 60, 25, "Close");
+ { Fl_Button* o = new Fl_Button(185, 215, 60, 25, "Close");
o->tooltip("Close this dialog.");
o->callback((Fl_Callback*)cb_Close1);
}
- { Fl_Tabs* o = new Fl_Tabs(10, 10, 235, 125);
- { Fl_Group* o = new Fl_Group(10, 35, 235, 100, "GUI:");
+ { Fl_Tabs* o = new Fl_Tabs(10, 10, 235, 190);
+ { Fl_Group* o = new Fl_Group(10, 35, 235, 165, "GUI:");
o->align(FL_ALIGN_TOP_LEFT);
{ Fl_Check_Button* o = tooltips_button = new Fl_Check_Button(20, 45, 215, 20, "Show Tooltips");
o->down_box(FL_DOWN_BOX);
@@ -169,6 +181,20 @@ Fl_Window* make_settings_window() {
fluid_prefs.get("open_previous_file", b, 0);
openlast_button->value(b);
}
+ { Fl_Check_Button* o = openbin_button = new Fl_Check_Button(20, 135, 215, 20, "Open Widget Bin on Startup");
+ o->down_box(FL_DOWN_BOX);
+ o->callback((Fl_Callback*)cb_openbin_button);
+ int b;
+ fluid_prefs.get("open_widget_bin", b, 1);
+ openbin_button->value(b);
+ }
+ { Fl_Check_Button* o = prevpos_button = new Fl_Check_Button(20, 165, 215, 20, "Remember Window Positions");
+ o->down_box(FL_DOWN_BOX);
+ o->callback((Fl_Callback*)cb_prevpos_button);
+ int b;
+ fluid_prefs.get("prev_window_pos", b, 1);
+ prevpos_button->value(b);
+ }
o->end();
}
o->end();
diff --git a/fluid/alignment_panel.fl b/fluid/alignment_panel.fl
index ed348e72c..6c267433d 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.0100
+version 1.0102
header_name {.h}
code_name {.cxx}
Function {make_project_window()} {open
@@ -101,19 +101,19 @@ Function {make_settings_window()} {open
} {
Fl_Window settings_window {
label {GUI Settings} open
- xywh {397 774 255 175} visible
+ xywh {462 92 255 253} visible
} {
Fl_Button {} {
label Close
callback {settings_window->hide();}
- tooltip {Close this dialog.} xywh {185 145 60 25}
+ tooltip {Close this dialog.} xywh {185 215 60 25}
}
Fl_Tabs {} {
- xywh {10 10 235 125}
+ xywh {10 10 235 190}
} {
Fl_Group {} {
label {GUI:}
- xywh {10 35 235 100} align 5
+ xywh {10 35 235 165} align 5
} {
Fl_Check_Button tooltips_button {
label {Show Tooltips}
@@ -135,12 +135,28 @@ fluid_prefs.set("show_tooltips", tooltips_button->value());}
}
Fl_Check_Button openlast_button {
label {Open Previous File on Startup}
- callback {fluid_prefs.set("open_previous_file", openlast_button->value());} selected
+ callback {fluid_prefs.set("open_previous_file", openlast_button->value());}
xywh {20 105 215 20} down_box DOWN_BOX
code0 {int b;}
code1 {fluid_prefs.get("open_previous_file", b, 0);}
code2 {openlast_button->value(b);}
}
+ Fl_Check_Button openbin_button {
+ label {Open Widget Bin on Startup}
+ callback {fluid_prefs.set("open_widget_bin", openbin_button->value());}
+ xywh {20 135 215 20} down_box DOWN_BOX
+ code0 {int b;}
+ code1 {fluid_prefs.get("open_widget_bin", b, 1);}
+ code2 {openbin_button->value(b);}
+ }
+ Fl_Check_Button prevpos_button {
+ label {Remember Window Positions}
+ callback {fluid_prefs.set("prev_window_pos", prevpos_button->value());} selected
+ xywh {20 165 215 20} down_box DOWN_BOX
+ code0 {int b;}
+ code1 {fluid_prefs.get("prev_window_pos", b, 1);}
+ code2 {prevpos_button->value(b);}
+ }
}
}
}
diff --git a/fluid/alignment_panel.h b/fluid/alignment_panel.h
index f2ae1e847..0c610627a 100644
--- a/fluid/alignment_panel.h
+++ b/fluid/alignment_panel.h
@@ -1,4 +1,4 @@
-// generated by Fast Light User Interface Designer (fluid) version 1.0100
+// generated by Fast Light User Interface Designer (fluid) version 1.0102
#ifndef alignment_panel_h
#define alignment_panel_h
@@ -36,6 +36,8 @@ extern Fl_Window *settings_window;
extern Fl_Check_Button *tooltips_button;
extern Fl_Check_Button *completion_button;
extern Fl_Check_Button *openlast_button;
+extern Fl_Check_Button *openbin_button;
+extern Fl_Check_Button *prevpos_button;
Fl_Window* make_settings_window();
extern Fl_Window *shell_window;
extern Fl_Input *shell_command_input;
diff --git a/fluid/fluid.cxx b/fluid/fluid.cxx
index 5790f61ae..580d091e2 100644
--- a/fluid/fluid.cxx
+++ b/fluid/fluid.cxx
@@ -1,5 +1,5 @@
//
-// "$Id: fluid.cxx,v 1.15.2.13.2.33 2002/09/02 10:41:51 easysw Exp $"
+// "$Id: fluid.cxx,v 1.15.2.13.2.34 2002/10/31 18:48:58 matthiaswm Exp $"
//
// FLUID main entry for the Fast Light Tool Kit (FLTK).
//
@@ -43,6 +43,7 @@
#include "../src/flstring.h"
#include "alignment_panel.h"
+#include "function_panel.h"
#if defined(WIN32) && !defined(__CYGWIN__)
# include <direct.h>
@@ -111,6 +112,27 @@ void leave_source_dir() {
in_source_dir = 0;
}
+void position_window(Fl_Window *w, const char *prefsName, int X, int Y, int W=0, int H=0 ) {
+ Fl_Preferences pos(fluid_prefs, prefsName);
+ pos.get("x", X, X);
+ pos.get("y", Y, Y);
+ if ( W!=0 ) {
+ pos.get("w", W, W);
+ pos.get("h", H, H);
+ w->resize( X, Y, W, H );
+ }
+ else
+ w->position( X, Y );
+}
+
+void save_position(Fl_Window *w, const char *prefsName) {
+ Fl_Preferences pos(fluid_prefs, prefsName);
+ pos.set("x", w->x());
+ pos.set("y", w->y());
+ pos.set("w", w->w());
+ pos.set("h", w->h());
+}
+
Fl_Window *main_window;
void save_cb(Fl_Widget *, void *v) {
@@ -137,6 +159,12 @@ void exit_cb(Fl_Widget *,void *) {
if (modflag) return; // Didn't save!
}
+ save_position(main_window,"main_window_pos");
+
+ if (widgetbin_panel) {
+ save_position(widgetbin_panel,"widgetbin_pos");
+ delete widgetbin_panel;
+ }
if (about_panel)
delete about_panel;
if (help_dialog)
@@ -397,6 +425,17 @@ void manual_cb(Fl_Widget *, void *) {
show_help("index.html");
}
+void toggle_widgetbin_cb(Fl_Widget *, void *) {
+ if ( !widgetbin_panel ) {
+ make_widgetbin();
+ position_window(widgetbin_panel,"widgetbin_pos", 320, 30);
+ }
+ if ( widgetbin_panel->visible() )
+ widgetbin_panel->hide();
+ else
+ widgetbin_panel->show();
+}
+
////////////////////////////////////////////////////////////////
extern Fl_Menu_Item New_Menu[];
@@ -441,6 +480,7 @@ Fl_Menu_Item Main_Menu[] = {
//{"Deactivate", 0, nyi},
//{"Activate", 0, nyi, 0, FL_MENU_DIVIDER},
{"O&verlays on/off",FL_CTRL+FL_SHIFT+'o',toggle_overlays},
+ {"Widget &Bin on/off",FL_ALT+'b',toggle_widgetbin_cb},
{"Pro&ject Settings...",FL_CTRL+'p',show_project_cb},
{"&GUI Settings...",FL_CTRL+FL_SHIFT+'p',show_settings_cb},
{0},
@@ -772,7 +812,11 @@ int main(int argc,char **argv) {
Fl::visual((Fl_Mode)(FL_DOUBLE|FL_INDEX));
Fl_File_Icon::load_system_icons();
main_window->callback(exit_cb);
+ if (prevpos_button->value())
+ position_window(main_window,"main_window_pos", 10, 30, WINWIDTH, WINHEIGHT );
main_window->show(argc,argv);
+ if (openbin_button->value())
+ toggle_widgetbin_cb(0,0);
if (!c && openlast_button->value() && absolute_history[0][0]) {
// Open previous file when no file specified...
open_history_cb(0, absolute_history[0]);
@@ -801,5 +845,5 @@ int main(int argc,char **argv) {
}
//
-// End of "$Id: fluid.cxx,v 1.15.2.13.2.33 2002/09/02 10:41:51 easysw Exp $".
+// End of "$Id: fluid.cxx,v 1.15.2.13.2.34 2002/10/31 18:48:58 matthiaswm Exp $".
//
diff --git a/fluid/function_panel.cxx b/fluid/function_panel.cxx
index 1e6a4d6b0..deed876aa 100644
--- a/fluid/function_panel.cxx
+++ b/fluid/function_panel.cxx
@@ -1,6 +1,11 @@
-// generated by Fast Light User Interface Designer (fluid) version 1.0100
+// generated by Fast Light User Interface Designer (fluid) version 1.0102
#include "function_panel.h"
+#include <FL/Fl_Pixmap.H>
+#include "Fl_Type.h"
+extern class Fl_Pixmap *pixmap[];
+extern class Fl_Type *Fl_Type_make(const char*);
+extern void select_only(Fl_Type*);
Fl_Window *function_panel=(Fl_Window *)0;
@@ -266,3 +271,323 @@ Fl_Window* make_class_panel() {
}
return w;
}
+
+void type_make_cb(Fl_Widget*w,void*d) {
+ Fl_Type *t = Fl_Type_make((char*)d);
+if (t) {select_only(t); modflag = 1; t->open();}
+}
+
+Fl_Double_Window *widgetbin_panel=(Fl_Double_Window *)0;
+
+Fl_Double_Window* make_widgetbin() {
+ Fl_Double_Window* w;
+ { Fl_Double_Window* o = widgetbin_panel = new Fl_Double_Window(443, 100, "Bin");
+ w = o;
+ { Fl_Group* o = new Fl_Group(3, 3, 50, 74);
+ o->box(FL_THIN_DOWN_BOX);
+ { Fl_Button* o = new Fl_Button(4, 4, 24, 24);
+ o->tooltip("Function");
+ o->box(FL_THIN_UP_BOX);
+ o->callback((Fl_Callback*)type_make_cb, (void*)("Function"));
+ o->image(pixmap[7]);
+ }
+ { Fl_Button* o = new Fl_Button(28, 4, 24, 24);
+ o->tooltip("Class");
+ o->box(FL_THIN_UP_BOX);
+ o->callback((Fl_Callback*)type_make_cb, (void*)("Class"));
+ o->image(pixmap[12]);
+ }
+ { Fl_Button* o = new Fl_Button(4, 28, 24, 24);
+ o->tooltip("Code");
+ o->box(FL_THIN_UP_BOX);
+ o->callback((Fl_Callback*)type_make_cb, (void*)("Code"));
+ o->image(pixmap[8]);
+ }
+ { Fl_Button* o = new Fl_Button(28, 28, 24, 24);
+ o->tooltip("Code Block");
+ o->box(FL_THIN_UP_BOX);
+ o->callback((Fl_Callback*)type_make_cb, (void*)("CodeBlock"));
+ o->image(pixmap[9]);
+ }
+ { Fl_Button* o = new Fl_Button(4, 52, 24, 24);
+ o->tooltip("Declaration");
+ o->box(FL_THIN_UP_BOX);
+ o->callback((Fl_Callback*)type_make_cb, (void*)("decl"));
+ o->image(pixmap[10]);
+ }
+ { Fl_Button* o = new Fl_Button(28, 52, 24, 24);
+ o->tooltip("Declaration Block");
+ o->box(FL_THIN_UP_BOX);
+ o->callback((Fl_Callback*)type_make_cb, (void*)("declblock"));
+ o->image(pixmap[11]);
+ }
+ o->end();
+ }
+ { Fl_Group* o = new Fl_Group(55, 3, 74, 74);
+ o->box(FL_THIN_DOWN_BOX);
+ { Fl_Button* o = new Fl_Button(56, 4, 24, 24);
+ o->tooltip("Window");
+ o->box(FL_THIN_UP_BOX);
+ o->callback((Fl_Callback*)type_make_cb, (void*)("Fl_Window"));
+ o->image(pixmap[1]);
+ }
+ { Fl_Button* o = new Fl_Button(56, 28, 24, 24);
+ o->tooltip("Tabs");
+ o->box(FL_THIN_UP_BOX);
+ o->callback((Fl_Callback*)type_make_cb, (void*)("Fl_Tabs"));
+ o->image(pixmap[13]);
+ }
+ { Fl_Button* o = new Fl_Button(56, 52, 24, 24);
+ o->tooltip("Tile");
+ o->box(FL_THIN_UP_BOX);
+ o->callback((Fl_Callback*)type_make_cb, (void*)("Fl_Tile"));
+ o->image(pixmap[20]);
+ }
+ { Fl_Button* o = new Fl_Button(80, 4, 24, 24);
+ o->tooltip("Group");
+ o->box(FL_THIN_UP_BOX);
+ o->callback((Fl_Callback*)type_make_cb, (void*)("Fl_Group"));
+ o->image(pixmap[6]);
+ }
+ { Fl_Button* o = new Fl_Button(80, 28, 24, 24);
+ o->tooltip("Scroll");
+ o->box(FL_THIN_UP_BOX);
+ o->callback((Fl_Callback*)type_make_cb, (void*)("Fl_Scroll"));
+ o->image(pixmap[19]);
+ }
+ { Fl_Button* o = new Fl_Button(80, 52, 24, 24);
+ o->tooltip("Wizard");
+ o->box(FL_THIN_UP_BOX);
+ o->callback((Fl_Callback*)type_make_cb, (void*)("Fl_Wizard"));
+ o->image(pixmap[21]);
+ }
+ { Fl_Button* o = new Fl_Button(104, 4, 24, 24);
+ o->tooltip("Pack");
+ o->box(FL_THIN_UP_BOX);
+ o->callback((Fl_Callback*)type_make_cb, (void*)("Fl_Pack"));
+ o->image(pixmap[22]);
+ }
+ o->end();
+ }
+ { Fl_Group* o = new Fl_Group(131, 3, 50, 74);
+ o->box(FL_THIN_DOWN_BOX);
+ { Fl_Button* o = new Fl_Button(132, 4, 24, 24);
+ o->tooltip("Button");
+ o->box(FL_THIN_UP_BOX);
+ o->callback((Fl_Callback*)type_make_cb, (void*)("Fl_Button"));
+ o->image(pixmap[2]);
+ }
+ { Fl_Button* o = new Fl_Button(156, 4, 24, 24);
+ o->tooltip("Return Button");
+ o->box(FL_THIN_UP_BOX);
+ o->callback((Fl_Callback*)type_make_cb, (void*)("Fl_Return_Button"));
+ o->image(pixmap[23]);
+ }
+ { Fl_Button* o = new Fl_Button(132, 28, 24, 24);
+ o->tooltip("Light Button");
+ o->box(FL_THIN_UP_BOX);
+ o->callback((Fl_Callback*)type_make_cb, (void*)("Fl_Light_Button"));
+ o->image(pixmap[24]);
+ }
+ { Fl_Button* o = new Fl_Button(156, 28, 24, 24);
+ o->tooltip("Repeat Button");
+ o->box(FL_THIN_UP_BOX);
+ o->callback((Fl_Callback*)type_make_cb, (void*)("Fl_Repeat_Button"));
+ o->image(pixmap[25]);
+ }
+ { Fl_Button* o = new Fl_Button(132, 52, 24, 24);
+ o->tooltip("Check Button");
+ o->box(FL_THIN_UP_BOX);
+ o->callback((Fl_Callback*)type_make_cb, (void*)("Fl_Check_Button"));
+ o->image(pixmap[3]);
+ }
+ { Fl_Button* o = new Fl_Button(156, 52, 24, 24);
+ o->tooltip("Round Button");
+ o->box(FL_THIN_UP_BOX);
+ o->callback((Fl_Callback*)type_make_cb, (void*)("Fl_Round_Button"));
+ o->image(pixmap[4]);
+ }
+ o->end();
+ }
+ { Fl_Group* o = new Fl_Group(183, 3, 74, 74);
+ o->box(FL_THIN_DOWN_BOX);
+ { Fl_Button* o = new Fl_Button(184, 4, 24, 24);
+ o->tooltip("Slider");
+ o->box(FL_THIN_UP_BOX);
+ o->callback((Fl_Callback*)type_make_cb, (void*)("Fl_Slider"));
+ o->image(pixmap[37]);
+ }
+ { Fl_Button* o = new Fl_Button(208, 4, 24, 24);
+ o->tooltip("Scroll Bar");
+ o->box(FL_THIN_UP_BOX);
+ o->callback((Fl_Callback*)type_make_cb, (void*)("Fl_Scrollbar"));
+ o->image(pixmap[38]);
+ }
+ { Fl_Button* o = new Fl_Button(184, 28, 24, 24);
+ o->tooltip("Adjuster");
+ o->box(FL_THIN_UP_BOX);
+ o->callback((Fl_Callback*)type_make_cb, (void*)("Fl_Adjuster"));
+ o->image(pixmap[40]);
+ }
+ { Fl_Button* o = new Fl_Button(208, 28, 24, 24);
+ o->tooltip("Counter");
+ o->box(FL_THIN_UP_BOX);
+ o->callback((Fl_Callback*)type_make_cb, (void*)("Fl_Counter"));
+ o->image(pixmap[41]);
+ }
+ { Fl_Button* o = new Fl_Button(184, 52, 24, 24);
+ o->tooltip("Roller");
+ o->box(FL_THIN_UP_BOX);
+ o->callback((Fl_Callback*)type_make_cb, (void*)("Fl_Roller"));
+ o->image(pixmap[43]);
+ }
+ { Fl_Button* o = new Fl_Button(208, 52, 24, 24);
+ o->tooltip("Value Input");
+ o->box(FL_THIN_UP_BOX);
+ o->callback((Fl_Callback*)type_make_cb, (void*)("Fl_Value_Input"));
+ o->image(pixmap[44]);
+ }
+ { Fl_Button* o = new Fl_Button(232, 4, 24, 24);
+ o->tooltip("Value Slider");
+ o->box(FL_THIN_UP_BOX);
+ o->callback((Fl_Callback*)type_make_cb, (void*)("Fl_Value_Slider"));
+ o->image(pixmap[39]);
+ }
+ { Fl_Button* o = new Fl_Button(232, 28, 24, 24);
+ o->tooltip("Dial");
+ o->box(FL_THIN_UP_BOX);
+ o->callback((Fl_Callback*)type_make_cb, (void*)("Fl_Dial"));
+ o->image(pixmap[42]);
+ }
+ { Fl_Button* o = new Fl_Button(232, 52, 24, 24);
+ o->tooltip("Value Output");
+ o->box(FL_THIN_UP_BOX);
+ o->callback((Fl_Callback*)type_make_cb, (void*)("Fl_Value_Output"));
+ o->image(pixmap[45]);
+ }
+ o->end();
+ }
+ { Fl_Group* o = new Fl_Group(259, 3, 50, 74);
+ o->box(FL_THIN_DOWN_BOX);
+ { Fl_Button* o = new Fl_Button(260, 4, 24, 24);
+ o->tooltip("Input");
+ o->box(FL_THIN_UP_BOX);
+ o->callback((Fl_Callback*)type_make_cb, (void*)("Fl_Input"));
+ o->image(pixmap[14]);
+ }
+ { Fl_Button* o = new Fl_Button(260, 28, 24, 24);
+ o->tooltip("Text Edit");
+ o->box(FL_THIN_UP_BOX);
+ o->callback((Fl_Callback*)type_make_cb, (void*)("Fl_Text_Editor"));
+ o->image(pixmap[29]);
+ }
+ { Fl_Button* o = new Fl_Button(260, 52, 24, 24);
+ o->tooltip("File Input");
+ o->box(FL_THIN_UP_BOX);
+ o->callback((Fl_Callback*)type_make_cb, (void*)("Fl_File_Input"));
+ o->image(pixmap[30]);
+ }
+ { Fl_Button* o = new Fl_Button(284, 4, 24, 24);
+ o->tooltip("Output");
+ o->box(FL_THIN_UP_BOX);
+ o->callback((Fl_Callback*)type_make_cb, (void*)("Fl_Output"));
+ o->image(pixmap[27]);
+ }
+ { Fl_Button* o = new Fl_Button(284, 28, 24, 24);
+ o->tooltip("Text Display");
+ o->box(FL_THIN_UP_BOX);
+ o->callback((Fl_Callback*)type_make_cb, (void*)("Fl_Text_Display"));
+ o->image(pixmap[28]);
+ }
+ o->end();
+ }
+ { Fl_Group* o = new Fl_Group(311, 3, 50, 74);
+ o->box(FL_THIN_DOWN_BOX);
+ { Fl_Button* o = new Fl_Button(312, 4, 24, 24);
+ o->tooltip("Menu Bar");
+ o->box(FL_THIN_UP_BOX);
+ o->callback((Fl_Callback*)type_make_cb, (void*)("Fl_Menu_Bar"));
+ o->image(pixmap[17]);
+ }
+ { Fl_Button* o = new Fl_Button(312, 28, 24, 24);
+ o->tooltip("Menu Button");
+ o->box(FL_THIN_UP_BOX);
+ o->callback((Fl_Callback*)type_make_cb, (void*)("Fl_Menu_Button"));
+ o->image(pixmap[26]);
+ }
+ { Fl_Button* o = new Fl_Button(312, 52, 24, 24);
+ o->tooltip("Choice");
+ o->box(FL_THIN_UP_BOX);
+ o->callback((Fl_Callback*)type_make_cb, (void*)("Fl_Choice"));
+ o->image(pixmap[15]);
+ }
+ { Fl_Button* o = new Fl_Button(336, 4, 24, 24);
+ o->tooltip("Menu Item");
+ o->box(FL_THIN_UP_BOX);
+ o->callback((Fl_Callback*)type_make_cb, (void*)("menuitem"));
+ o->image(pixmap[16]);
+ }
+ { Fl_Button* o = new Fl_Button(336, 28, 24, 24);
+ o->tooltip("Sub Menu");
+ o->box(FL_THIN_UP_BOX);
+ o->callback((Fl_Callback*)type_make_cb, (void*)("submenu"));
+ o->image(pixmap[18]);
+ }
+ o->end();
+ }
+ { Fl_Group* o = new Fl_Group(363, 3, 26, 74);
+ o->box(FL_THIN_DOWN_BOX);
+ { Fl_Button* o = new Fl_Button(364, 4, 24, 24);
+ o->tooltip("Browser");
+ o->box(FL_THIN_UP_BOX);
+ o->callback((Fl_Callback*)type_make_cb, (void*)("Fl_Browser"));
+ o->image(pixmap[31]);
+ }
+ { Fl_Button* o = new Fl_Button(364, 28, 24, 24);
+ o->tooltip("Check Browser");
+ o->box(FL_THIN_UP_BOX);
+ o->callback((Fl_Callback*)type_make_cb, (void*)("Fl_Check_Browser"));
+ o->image(pixmap[32]);
+ }
+ { Fl_Button* o = new Fl_Button(364, 52, 24, 24);
+ o->tooltip("File Browser");
+ o->box(FL_THIN_UP_BOX);
+ o->callback((Fl_Callback*)type_make_cb, (void*)("Fl_File_Browser"));
+ o->image(pixmap[33]);
+ }
+ o->end();
+ }
+ { Fl_Group* o = new Fl_Group(391, 3, 50, 74);
+ o->box(FL_THIN_DOWN_BOX);
+ { Fl_Button* o = new Fl_Button(392, 4, 24, 24);
+ o->tooltip("Box");
+ o->box(FL_THIN_UP_BOX);
+ o->callback((Fl_Callback*)type_make_cb, (void*)("Fl_Box"));
+ o->image(pixmap[5]);
+ }
+ { Fl_Button* o = new Fl_Button(392, 28, 24, 24);
+ o->tooltip("Help Browser");
+ o->box(FL_THIN_UP_BOX);
+ o->callback((Fl_Callback*)type_make_cb, (void*)("Fl_Help_View"));
+ o->image(pixmap[35]);
+ }
+ { Fl_Button* o = new Fl_Button(392, 52, 24, 24);
+ o->tooltip("Progress");
+ o->box(FL_THIN_UP_BOX);
+ o->callback((Fl_Callback*)type_make_cb, (void*)("Fl_Progress"));
+ o->image(pixmap[36]);
+ }
+ { Fl_Button* o = new Fl_Button(416, 4, 24, 24);
+ o->tooltip("Clock");
+ o->box(FL_THIN_UP_BOX);
+ o->callback((Fl_Callback*)type_make_cb, (void*)("Fl_Clock"));
+ o->image(pixmap[34]);
+ }
+ o->end();
+ }
+ o->size(o->w(),80);
+ o->set_non_modal();
+ o->end();
+ }
+ return w;
+}
diff --git a/fluid/function_panel.fl b/fluid/function_panel.fl
index 1a2d1722a..5374fc585 100644
--- a/fluid/function_panel.fl
+++ b/fluid/function_panel.fl
@@ -1,10 +1,17 @@
# data file for the Fltk User Interface Designer (fluid)
-version 1.0100
+version 1.0102
header_name {.h}
-code_name {.cxx}
-gridx 5
-gridy 5
-snap 3
+code_name {.cxx}
+decl {\#include <FL/Fl_Pixmap.H>} {}
+
+decl {\#include "Fl_Type.h"} {}
+
+decl {extern class Fl_Pixmap *pixmap[];} {}
+
+decl {extern class Fl_Type *Fl_Type_make(const char*);} {}
+
+decl {extern void select_only(Fl_Type*);} {}
+
Function {make_function_panel()} {open
} {
Fl_Window function_panel {
@@ -123,7 +130,7 @@ Function {make_decl_panel()} {open
tooltip {Make the declaration publicly accessible.} xywh {10 10 65 25} labelsize 10 when 0
}
Fl_Input decl_input {
- label {Can be any declaration, like "int x;", an external symbol like "extern int foo();", a \#directive like "\#include <foo.h>", a comment like "//foo" or "/*foo*/", or typedef like "typedef char byte;" or "using std::list;".} selected
+ label {Can be any declaration, like "int x;", an external symbol like "extern int foo();", a \#directive like "\#include <foo.h>", a comment like "//foo" or "/*foo*/", or typedef like "typedef char byte;" or "using std::list;".}
tooltip {Declaration text.} xywh {10 40 270 25} labelsize 12 align 134 when 0 textfont 4 resizable
}
Fl_Return_Button decl_panel_ok {
@@ -141,7 +148,7 @@ Function {make_class_panel()} {open
} {
Fl_Window class_panel {
label class open
- xywh {517 813 285 170} resizable modal visible
+ xywh {517 797 285 170} resizable modal visible
} {
Fl_Light_Button c_public_button {
label public
@@ -165,3 +172,321 @@ Function {make_class_panel()} {open
}
}
}
+
+Function {type_make_cb(Fl_Widget*w,void*d)} {open return_type void
+} {
+ code {Fl_Type *t = Fl_Type_make((char*)d);
+if (t) {select_only(t); modflag = 1; t->open();}} {}
+}
+
+Function {make_widgetbin()} {open
+} {
+ Fl_Window widgetbin_panel {
+ label Bin open
+ xywh {325 137 443 100} type Double
+ code0 {o->size(o->w(),80);} non_modal visible
+ } {
+ Fl_Group {} {open
+ xywh {3 3 50 74} box THIN_DOWN_BOX
+ } {
+ Fl_Button {} {
+ user_data {"Function"}
+ callback type_make_cb
+ tooltip Function xywh {4 4 24 24} box THIN_UP_BOX
+ code0 {o->image(pixmap[7]);}
+ }
+ Fl_Button {} {
+ user_data {"Class"}
+ callback type_make_cb
+ tooltip Class xywh {28 4 24 24} box THIN_UP_BOX
+ code0 {o->image(pixmap[12]);}
+ }
+ Fl_Button {} {
+ user_data {"Code"}
+ callback type_make_cb
+ tooltip Code xywh {4 28 24 24} box THIN_UP_BOX
+ code0 {o->image(pixmap[8]);}
+ }
+ Fl_Button {} {
+ user_data {"CodeBlock"}
+ callback type_make_cb
+ tooltip {Code Block} xywh {28 28 24 24} box THIN_UP_BOX
+ code0 {o->image(pixmap[9]);}
+ }
+ Fl_Button {} {
+ user_data {"decl"}
+ callback type_make_cb
+ tooltip Declaration xywh {4 52 24 24} box THIN_UP_BOX
+ code0 {o->image(pixmap[10]);}
+ }
+ Fl_Button {} {
+ user_data {"declblock"}
+ callback type_make_cb
+ tooltip {Declaration Block} xywh {28 52 24 24} box THIN_UP_BOX
+ code0 {o->image(pixmap[11]);}
+ }
+ }
+ Fl_Group {} {open
+ xywh {55 3 74 74} box THIN_DOWN_BOX
+ } {
+ Fl_Button {} {
+ user_data {"Fl_Window"}
+ callback type_make_cb
+ tooltip Window xywh {56 4 24 24} box THIN_UP_BOX
+ code0 {o->image(pixmap[1]);}
+ }
+ Fl_Button {} {
+ user_data {"Fl_Tabs"}
+ callback type_make_cb
+ tooltip Tabs xywh {56 28 24 24} box THIN_UP_BOX
+ code0 {o->image(pixmap[13]);}
+ }
+ Fl_Button {} {
+ user_data {"Fl_Tile"}
+ callback type_make_cb
+ tooltip Tile xywh {56 52 24 24} box THIN_UP_BOX
+ code0 {o->image(pixmap[20]);}
+ }
+ Fl_Button {} {
+ user_data {"Fl_Group"}
+ callback type_make_cb
+ tooltip Group xywh {80 4 24 24} box THIN_UP_BOX
+ code0 {o->image(pixmap[6]);}
+ }
+ Fl_Button {} {
+ user_data {"Fl_Scroll"}
+ callback type_make_cb
+ tooltip Scroll xywh {80 28 24 24} box THIN_UP_BOX
+ code0 {o->image(pixmap[19]);}
+ }
+ Fl_Button {} {
+ user_data {"Fl_Wizard"}
+ callback type_make_cb
+ tooltip Wizard xywh {80 52 24 24} box THIN_UP_BOX
+ code0 {o->image(pixmap[21]);}
+ }
+ Fl_Button {} {
+ user_data {"Fl_Pack"}
+ callback type_make_cb
+ tooltip Pack xywh {104 4 24 24} box THIN_UP_BOX
+ code0 {o->image(pixmap[22]);}
+ }
+ }
+ Fl_Group {} {open
+ xywh {131 3 50 74} box THIN_DOWN_BOX
+ } {
+ Fl_Button {} {
+ user_data {"Fl_Button"}
+ callback type_make_cb
+ tooltip Button xywh {132 4 24 24} box THIN_UP_BOX
+ code0 {o->image(pixmap[2]);}
+ }
+ Fl_Button {} {
+ user_data {"Fl_Return_Button"}
+ callback type_make_cb
+ tooltip {Return Button} xywh {156 4 24 24} box THIN_UP_BOX
+ code0 {o->image(pixmap[23]);}
+ }
+ Fl_Button {} {
+ user_data {"Fl_Light_Button"}
+ callback type_make_cb
+ tooltip {Light Button} xywh {132 28 24 24} box THIN_UP_BOX
+ code0 {o->image(pixmap[24]);}
+ }
+ Fl_Button {} {
+ user_data {"Fl_Repeat_Button"}
+ callback type_make_cb
+ tooltip {Repeat Button} xywh {156 28 24 24} box THIN_UP_BOX
+ code0 {o->image(pixmap[25]);}
+ }
+ Fl_Button {} {
+ user_data {"Fl_Check_Button"}
+ callback type_make_cb
+ tooltip {Check Button} xywh {132 52 24 24} box THIN_UP_BOX
+ code0 {o->image(pixmap[3]);}
+ }
+ Fl_Button {} {
+ user_data {"Fl_Round_Button"}
+ callback type_make_cb
+ tooltip {Round Button} xywh {156 52 24 24} box THIN_UP_BOX
+ code0 {o->image(pixmap[4]);}
+ }
+ }
+ Fl_Group {} {open
+ xywh {183 3 74 74} box THIN_DOWN_BOX
+ } {
+ Fl_Button {} {
+ user_data {"Fl_Slider"}
+ callback type_make_cb
+ tooltip Slider xywh {184 4 24 24} box THIN_UP_BOX
+ code0 {o->image(pixmap[37]);}
+ }
+ Fl_Button {} {
+ user_data {"Fl_Scrollbar"}
+ callback type_make_cb
+ tooltip {Scroll Bar} xywh {208 4 24 24} box THIN_UP_BOX
+ code0 {o->image(pixmap[38]);}
+ }
+ Fl_Button {} {
+ user_data {"Fl_Adjuster"}
+ callback type_make_cb
+ tooltip Adjuster xywh {184 28 24 24} box THIN_UP_BOX
+ code0 {o->image(pixmap[40]);}
+ }
+ Fl_Button {} {
+ user_data {"Fl_Counter"}
+ callback type_make_cb
+ tooltip Counter xywh {208 28 24 24} box THIN_UP_BOX
+ code0 {o->image(pixmap[41]);}
+ }
+ Fl_Button {} {
+ user_data {"Fl_Roller"}
+ callback type_make_cb
+ tooltip Roller xywh {184 52 24 24} box THIN_UP_BOX
+ code0 {o->image(pixmap[43]);}
+ }
+ Fl_Button {} {
+ user_data {"Fl_Value_Input"}
+ callback type_make_cb
+ tooltip {Value Input} xywh {208 52 24 24} box THIN_UP_BOX
+ code0 {o->image(pixmap[44]);}
+ }
+ Fl_Button {} {
+ user_data {"Fl_Value_Slider"}
+ callback type_make_cb
+ tooltip {Value Slider} xywh {232 4 24 24} box THIN_UP_BOX
+ code0 {o->image(pixmap[39]);}
+ }
+ Fl_Button {} {
+ user_data {"Fl_Dial"}
+ callback type_make_cb
+ tooltip Dial xywh {232 28 24 24} box THIN_UP_BOX
+ code0 {o->image(pixmap[42]);}
+ }
+ Fl_Button {} {
+ user_data {"Fl_Value_Output"}
+ callback type_make_cb
+ tooltip {Value Output} xywh {232 52 24 24} box THIN_UP_BOX
+ code0 {o->image(pixmap[45]);}
+ }
+ }
+ Fl_Group {} {open
+ xywh {259 3 50 74} box THIN_DOWN_BOX
+ } {
+ Fl_Button {} {
+ user_data {"Fl_Input"}
+ callback type_make_cb
+ tooltip Input xywh {260 4 24 24} box THIN_UP_BOX
+ code0 {o->image(pixmap[14]);}
+ }
+ Fl_Button {} {
+ user_data {"Fl_Text_Editor"}
+ callback type_make_cb
+ tooltip {Text Edit} xywh {260 28 24 24} box THIN_UP_BOX
+ code0 {o->image(pixmap[29]);}
+ }
+ Fl_Button {} {
+ user_data {"Fl_File_Input"}
+ callback type_make_cb
+ tooltip {File Input} xywh {260 52 24 24} box THIN_UP_BOX
+ code0 {o->image(pixmap[30]);}
+ }
+ Fl_Button {} {
+ user_data {"Fl_Output"}
+ callback type_make_cb
+ tooltip Output xywh {284 4 24 24} box THIN_UP_BOX
+ code0 {o->image(pixmap[27]);}
+ }
+ Fl_Button {} {
+ user_data {"Fl_Text_Display"}
+ callback type_make_cb
+ tooltip {Text Display} xywh {284 28 24 24} box THIN_UP_BOX
+ code0 {o->image(pixmap[28]);}
+ }
+ }
+ Fl_Group {} {open
+ xywh {311 3 50 74} box THIN_DOWN_BOX
+ } {
+ Fl_Button {} {
+ user_data {"Fl_Menu_Bar"}
+ callback type_make_cb
+ tooltip {Menu Bar} xywh {312 4 24 24} box THIN_UP_BOX
+ code0 {o->image(pixmap[17]);}
+ }
+ Fl_Button {} {
+ user_data {"Fl_Menu_Button"}
+ callback type_make_cb
+ tooltip {Menu Button} xywh {312 28 24 24} box THIN_UP_BOX
+ code0 {o->image(pixmap[26]);}
+ }
+ Fl_Button {} {
+ user_data {"Fl_Choice"}
+ callback type_make_cb
+ tooltip Choice xywh {312 52 24 24} box THIN_UP_BOX
+ code0 {o->image(pixmap[15]);}
+ }
+ Fl_Button {} {
+ user_data {"menuitem"}
+ callback type_make_cb
+ tooltip {Menu Item} xywh {336 4 24 24} box THIN_UP_BOX
+ code0 {o->image(pixmap[16]);}
+ }
+ Fl_Button {} {
+ user_data {"submenu"}
+ callback type_make_cb
+ tooltip {Sub Menu} xywh {336 28 24 24} box THIN_UP_BOX
+ code0 {o->image(pixmap[18]);}
+ }
+ }
+ Fl_Group {} {open
+ xywh {363 3 26 74} box THIN_DOWN_BOX
+ } {
+ Fl_Button {} {
+ user_data {"Fl_Browser"}
+ callback type_make_cb
+ tooltip Browser xywh {364 4 24 24} box THIN_UP_BOX
+ code0 {o->image(pixmap[31]);}
+ }
+ Fl_Button {} {
+ user_data {"Fl_Check_Browser"}
+ callback type_make_cb
+ tooltip {Check Browser} xywh {364 28 24 24} box THIN_UP_BOX
+ code0 {o->image(pixmap[32]);}
+ }
+ Fl_Button {} {
+ user_data {"Fl_File_Browser"}
+ callback type_make_cb
+ tooltip {File Browser} xywh {364 52 24 24} box THIN_UP_BOX
+ code0 {o->image(pixmap[33]);}
+ }
+ }
+ Fl_Group {} {open
+ xywh {391 3 50 74} box THIN_DOWN_BOX
+ } {
+ Fl_Button {} {
+ user_data {"Fl_Box"}
+ callback type_make_cb
+ tooltip Box xywh {392 4 24 24} box THIN_UP_BOX
+ code0 {o->image(pixmap[5]);}
+ }
+ Fl_Button {} {
+ user_data {"Fl_Help_View"}
+ callback type_make_cb selected
+ tooltip {Help Browser} xywh {392 28 24 24} box THIN_UP_BOX
+ code0 {o->image(pixmap[35]);}
+ }
+ Fl_Button {} {
+ user_data {"Fl_Progress"}
+ callback type_make_cb
+ tooltip Progress xywh {392 52 24 24} box THIN_UP_BOX
+ code0 {o->image(pixmap[36]);}
+ }
+ Fl_Button {} {
+ user_data {"Fl_Clock"}
+ callback type_make_cb
+ tooltip Clock xywh {416 4 24 24} box THIN_UP_BOX
+ code0 {o->image(pixmap[34]);}
+ }
+ }
+ }
+}
diff --git a/fluid/function_panel.h b/fluid/function_panel.h
index 239a8b0b4..8758d4626 100644
--- a/fluid/function_panel.h
+++ b/fluid/function_panel.h
@@ -1,4 +1,4 @@
-// generated by Fast Light User Interface Designer (fluid) version 1.0100
+// generated by Fast Light User Interface Designer (fluid) version 1.0102
#ifndef function_panel_h
#define function_panel_h
@@ -47,4 +47,10 @@ extern Fl_Input *c_subclass_input;
extern Fl_Return_Button *c_panel_ok;
extern Fl_Button *c_panel_cancel;
Fl_Window* make_class_panel();
+void type_make_cb(Fl_Widget*w,void*d);
+#include <FL/Fl_Double_Window.H>
+extern Fl_Double_Window *widgetbin_panel;
+#include <FL/Fl_Group.H>
+extern void type_make_cb(Fl_Button*, void*);
+Fl_Double_Window* make_widgetbin();
#endif