Add shell command support to FLUID.

git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@2155 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
This commit is contained in:
Michael R Sweet 2002-05-01 10:36:08 +00:00
parent b338c743b4
commit 39a823b5e6
6 changed files with 341 additions and 55 deletions

View File

@ -1,8 +1,6 @@
CHANGES IN FLTK 1.1.0rc1
- Fixed VisualC projects for Fl_File_Input.
- Added binary support and procedural names to
Fl_Preferences, updated FLUID
- FLUID now supports running shell commands.
- New Fl_File_Input widget that shows directory
separators with filename in input field.
- The Fl_File_Chooser dialog now shows the absolute path
@ -15,7 +13,8 @@ CHANGES IN FLTK 1.1.0rc1
in WIN32 version of scandir(). This takes care of a
file chooser performance problem with large
directories.
- Added Fl_Preferences class from Matthias Melcher.
- Added Fl_Preferences class from Matthias Melcher,
including binary data support.
- FLUID now recognizes the "using" keyword in
declarations.
- fl_file_chooser() didn't highlight the requested file

View File

@ -114,8 +114,6 @@ Fl_Window* make_alignment_window() {
}
return w;
}
extern void i18n_cb(Fl_Choice *,void *);
extern Fl_Preferences fluid_prefs;
Fl_Window *settings_window=(Fl_Window *)0;
@ -213,3 +211,101 @@ Fl_Window* make_settings_window() {
}
return w;
}
Fl_Window *shell_window=(Fl_Window *)0;
Fl_Input *shell_command_input=(Fl_Input *)0;
static void cb_shell_command_input(Fl_Input*, void*) {
fluid_prefs.set("shell_command", shell_command_input->value());
}
Fl_Check_Button *shell_savefl_button=(Fl_Check_Button *)0;
static void cb_shell_savefl_button(Fl_Check_Button*, void*) {
fluid_prefs.set("shell_savefl", shell_savefl_button->value());
}
Fl_Check_Button *shell_writecode_button=(Fl_Check_Button *)0;
static void cb_shell_writecode_button(Fl_Check_Button*, void*) {
fluid_prefs.set("shell_writecode", shell_writecode_button->value());
}
Fl_Check_Button *shell_writemsgs_button=(Fl_Check_Button *)0;
static void cb_shell_writemsgs_button(Fl_Check_Button*, void*) {
fluid_prefs.set("shell_writemsgs", shell_writemsgs_button->value());
}
static void cb_Cancel(Fl_Button*, void*) {
shell_window->hide();
}
Fl_Window *shell_run_window=(Fl_Window *)0;
Fl_Browser *shell_run_list=(Fl_Browser *)0;
Fl_Return_Button *shell_run_button=(Fl_Return_Button *)0;
static void cb_shell_run_button(Fl_Return_Button*, void*) {
shell_run_window->hide();
}
Fl_Window* make_shell_window() {
Fl_Window* w;
{ Fl_Window* o = shell_window = new Fl_Window(445, 104, "Shell Command");
w = o;
{ Fl_Input* o = shell_command_input = new Fl_Input(85, 10, 350, 20, "Command:");
o->callback((Fl_Callback*)cb_shell_command_input);
char buf[1024];
fluid_prefs.get("shell_command", buf, "", sizeof(buf));
shell_command_input->value(buf);
}
{ Fl_Group* o = new Fl_Group(85, 40, 350, 20, "Options:");
o->align(FL_ALIGN_LEFT);
{ Fl_Check_Button* o = shell_savefl_button = new Fl_Check_Button(85, 40, 110, 20, "Save .FL File");
o->down_box(FL_DOWN_BOX);
o->callback((Fl_Callback*)cb_shell_savefl_button);
char b;
fluid_prefs.get("shell_savefl", b, 1);
shell_savefl_button->value(b);
}
{ Fl_Check_Button* o = shell_writecode_button = new Fl_Check_Button(200, 40, 95, 20, "Write Code");
o->down_box(FL_DOWN_BOX);
o->callback((Fl_Callback*)cb_shell_writecode_button);
char b;
fluid_prefs.get("shell_writecode", b, 1);
shell_writecode_button->value(b);
}
{ Fl_Check_Button* o = shell_writemsgs_button = new Fl_Check_Button(300, 40, 125, 20, "Write Messages");
o->down_box(FL_DOWN_BOX);
o->callback((Fl_Callback*)cb_shell_writemsgs_button);
char b;
fluid_prefs.get("shell_writemsgs", b, 0);
shell_writemsgs_button->value(b);
}
o->end();
}
{ Fl_Button* o = new Fl_Button(370, 70, 65, 25, "Cancel");
o->callback((Fl_Callback*)cb_Cancel);
}
{ Fl_Return_Button* o = new Fl_Return_Button(220, 70, 140, 25, "Run Command");
o->callback((Fl_Callback*)do_shell_command);
}
o->end();
}
{ Fl_Window* o = shell_run_window = new Fl_Window(553, 435, "Shell Command Output");
w = o;
{ Fl_Browser* o = shell_run_list = new Fl_Browser(10, 10, 535, 380);
o->textfont(4);
o->textsize(12);
Fl_Group::current()->resizable(o);
}
{ Fl_Return_Button* o = shell_run_button = new Fl_Return_Button(465, 400, 80, 25, "Close");
o->callback((Fl_Callback*)cb_shell_run_button);
}
o->end();
}
return w;
}

View File

@ -6,7 +6,9 @@ Function {make_alignment_window()} {open
} {
Fl_Window alignment_window {
label Preferences open
xywh {469 112 365 340} modal visible
xywh {469 112 365 340}
code0 {\#include <FL/Fl_Preferences.H>}
code1 {\#include <FL/Fl_Tooltip.H>} modal visible
} {
Fl_Button {} {
label Close
@ -83,17 +85,17 @@ Function {make_alignment_window()} {open
}
}
decl {extern void i18n_cb(Fl_Choice *,void *);} {}
decl {extern void i18n_cb(Fl_Choice *,void *);} {public
}
decl {extern Fl_Preferences fluid_prefs;} {}
decl {extern Fl_Preferences fluid_prefs;} {public
}
Function {make_settings_window()} {open
} {
Fl_Window settings_window {
label Settings open
xywh {376 480 400 175}
code0 {\#include <FL/Fl_Preferences.H>}
code1 {\#include <FL/Fl_Tooltip.H>} visible
xywh {376 480 400 175} visible
} {
Fl_Button {} {
label Close
@ -132,7 +134,7 @@ Function {make_settings_window()} {open
Fl_Check_Button tooltips_button {
label {Show Tooltips}
callback {Fl_Tooltip::enable(tooltips_button->value());
fluid_prefs.set("show_tooltips", tooltips_button->value());} selected
fluid_prefs.set("show_tooltips", tooltips_button->value());}
xywh {165 40 215 20} down_box DOWN_BOX
code0 {char b;}
code1 {fluid_prefs.get("show_tooltips", b, 1);}
@ -157,3 +159,72 @@ fluid_prefs.set("show_tooltips", tooltips_button->value());} selected
}
}
}
Function {make_shell_window()} {open
} {
Fl_Window shell_window {
label {Shell Command} open
xywh {630 219 445 104} visible
} {
Fl_Input shell_command_input {
label {Command:}
callback {fluid_prefs.set("shell_command", shell_command_input->value());}
xywh {85 10 350 20}
code0 {char buf[1024];}
code1 {fluid_prefs.get("shell_command", buf, "", sizeof(buf));}
code2 {shell_command_input->value(buf);}
}
Fl_Group {} {
label {Options:} open
xywh {85 40 350 20} align 4
} {
Fl_Check_Button shell_savefl_button {
label {Save .FL File}
callback {fluid_prefs.set("shell_savefl", shell_savefl_button->value());}
xywh {85 40 110 20} down_box DOWN_BOX
code0 {char b;}
code1 {fluid_prefs.get("shell_savefl", b, 1);}
code2 {shell_savefl_button->value(b);}
}
Fl_Check_Button shell_writecode_button {
label {Write Code}
callback {fluid_prefs.set("shell_writecode", shell_writecode_button->value());}
xywh {200 40 95 20} down_box DOWN_BOX
code0 {char b;}
code1 {fluid_prefs.get("shell_writecode", b, 1);}
code2 {shell_writecode_button->value(b);}
}
Fl_Check_Button shell_writemsgs_button {
label {Write Messages}
callback {fluid_prefs.set("shell_writemsgs", shell_writemsgs_button->value());}
xywh {300 40 125 20} down_box DOWN_BOX
code0 {char b;}
code1 {fluid_prefs.get("shell_writemsgs", b, 0);}
code2 {shell_writemsgs_button->value(b);}
}
}
Fl_Button {} {
label Cancel
callback {shell_window->hide();}
xywh {370 70 65 25}
}
Fl_Return_Button {} {
label {Run Command}
callback do_shell_command
xywh {220 70 140 25}
}
}
Fl_Window shell_run_window {
label {Shell Command Output} open
xywh {693 386 553 435} resizable visible
} {
Fl_Browser shell_run_list {selected
xywh {10 10 535 380} textfont 4 textsize 12 resizable
}
Fl_Return_Button shell_run_button {
label Close
callback {shell_run_window->hide();}
xywh {465 400 80 25}
}
}
}

View File

@ -4,6 +4,8 @@
#define alignment_panel_h
#include <FL/Fl.H>
#include <FL/Fl_Window.H>
#include <FL/Fl_Preferences.H>
#include <FL/Fl_Tooltip.H>
extern Fl_Window *alignment_window;
#include <FL/Fl_Button.H>
#include <FL/Fl_Box.H>
@ -25,8 +27,8 @@ extern Fl_Input *i18n_set_input;
extern Fl_Input *i18n_function_input;
Fl_Window* make_alignment_window();
extern Fl_Menu_Item menu_i18n_type_chooser[];
#include <FL/Fl_Preferences.H>
#include <FL/Fl_Tooltip.H>
extern void i18n_cb(Fl_Choice *,void *);
extern Fl_Preferences fluid_prefs;
extern Fl_Window *settings_window;
extern void grid_cb(Fl_Input*, long);
extern Fl_Input *horizontal_input;
@ -37,4 +39,17 @@ extern Fl_Check_Button *tooltips_button;
extern Fl_Check_Button *completion_button;
extern Fl_Check_Button *openlast_button;
Fl_Window* make_settings_window();
extern Fl_Window *shell_window;
extern Fl_Input *shell_command_input;
#include <FL/Fl_Group.H>
extern Fl_Check_Button *shell_savefl_button;
extern Fl_Check_Button *shell_writecode_button;
extern Fl_Check_Button *shell_writemsgs_button;
#include <FL/Fl_Return_Button.H>
extern void do_shell_command(Fl_Return_Button*, void*);
extern Fl_Window *shell_run_window;
#include <FL/Fl_Browser.H>
extern Fl_Browser *shell_run_list;
extern Fl_Return_Button *shell_run_button;
Fl_Window* make_shell_window();
#endif

View File

@ -1,5 +1,5 @@
//
// "$Id: fluid.cxx,v 1.15.2.13.2.17 2002/05/01 08:51:59 easysw Exp $"
// "$Id: fluid.cxx,v 1.15.2.13.2.18 2002/05/01 10:36:08 easysw Exp $"
//
// FLUID main entry for the Fast Light Tool Kit (FLTK).
//
@ -71,9 +71,11 @@ int snap;
char absolute_history[10][1024];
char relative_history[10][1024];
void load_history();
void update_history(const char *);
void load_history();
void update_history(const char *);
// Shell command support...
void show_shell_window();
////////////////////////////////////////////////////////////////
@ -419,6 +421,10 @@ Fl_Menu_Item Main_Menu[] = {
{"Settings",FL_CTRL+FL_SHIFT+'p',show_settings_cb},
{0},
{"&New", 0, 0, (void *)New_Menu, FL_SUBMENU_POINTER},
{"&Shell",0,0,0,FL_SUBMENU},
{"Execute Command...",FL_ALT+'x',(Fl_Callback *)show_shell_window},
{"Execute Again",FL_ALT+'g',(Fl_Callback *)do_shell_command},
{0},
{"&Help",0,0,0,FL_SUBMENU},
{"About FLUID...",0,about_cb},
{"On FLUID...",0,help_cb},
@ -449,6 +455,7 @@ void make_main_window() {
load_history();
make_settings_window();
make_shell_window();
if (!main_window) {
Fl_Widget *o;
@ -525,6 +532,86 @@ void update_history(const char *filename) {
Main_Menu[3].flags &= ~FL_MENU_INACTIVE;
}
// Shell command support...
static FILE *shell_pipe;
void
shell_pipe_cb(int, void*) {
char line[1024]; // Line from command output...
if (fgets(line, sizeof(line), shell_pipe) != NULL) {
// Add the line to the output list...
shell_run_list->add(line);
shell_run_list->make_visible(shell_run_list->size());
} else {
// End of file; tell the parent...
Fl::remove_fd(fileno(shell_pipe));
pclose(shell_pipe);
shell_pipe = NULL;
shell_run_list->add("COMPLETE");
}
}
void
do_shell_command(Fl_Return_Button*, void*) {
const char *command; // Command to run
shell_window->hide();
if ((command = shell_command_input->value()) == NULL || !*command) {
fl_alert("No shell command entered!");
return;
}
if (shell_savefl_button->value()) {
save_cb(0, 0);
}
if (shell_writecode_button->value()) {
compile_only = 1;
write_cb(0, 0);
compile_only = 0;
}
if (shell_writemsgs_button->value()) {
compile_only = 1;
write_strings_cb(0, 0);
compile_only = 0;
}
// Show the output window and clear things...
shell_run_list->clear();
shell_run_list->add(command);
shell_run_window->label("Shell Command Running...");
if ((shell_pipe = popen(command, "r")) == NULL) {
fl_alert("Unable to run shell command: %s", strerror(errno));
return;
}
shell_run_button->deactivate();
shell_run_window->hotspot(shell_run_list);
shell_run_window->show();
Fl::add_fd(fileno(shell_pipe), shell_pipe_cb);
while (shell_pipe) Fl::wait();
shell_run_button->activate();
shell_run_window->label("Shell Command Complete");
fl_beep();
while (shell_run_window->shown()) Fl::wait();
}
void
show_shell_window() {
shell_window->hotspot(shell_command_input);
shell_window->show();
}
void set_filename(const char *c) {
if (filename) free((void *)filename);
filename = strdup(c);
@ -615,5 +702,5 @@ int main(int argc,char **argv) {
}
//
// End of "$Id: fluid.cxx,v 1.15.2.13.2.17 2002/05/01 08:51:59 easysw Exp $".
// End of "$Id: fluid.cxx,v 1.15.2.13.2.18 2002/05/01 10:36:08 easysw Exp $".
//

View File

@ -20,11 +20,14 @@ Fl_Menu_Type.o: ../FL/Fl_Image.H ../FL/x.H ../FL/Fl_Window.H ../FL/Fl_Group.H
Fl_Menu_Type.o: ../FL/Fl_Tabs.H ../FL/Fl_Pack.H ../FL/Fl_Group.H
Fl_Menu_Type.o: ../FL/Fl_Wizard.H ../FL/Fl_Menu_.H ../FL/Fl_Menu_Button.H
Fl_Menu_Type.o: ../FL/Fl_Menu_.H ../FL/Fl_Choice.H ../FL/Fl_Menu_Bar.H
Fl_Menu_Type.o: alignment_panel.h ../FL/Fl_Window.H ../FL/Fl_Box.H
Fl_Menu_Type.o: ../FL/Fl_Input.H ../FL/Fl_Input_.H ../FL/Fl_Button.H
Fl_Menu_Type.o: ../FL/Fl_Light_Button.H ../FL/Fl_Button.H ../FL/fl_message.H
Fl_Menu_Type.o: ../FL/fl_ask.H ../FL/Fl_Output.H ../FL/Fl_Input.H
Fl_Menu_Type.o: Shortcut_Button.h ../FL/fl_draw.H
Fl_Menu_Type.o: alignment_panel.h ../FL/Fl_Window.H ../FL/Fl_Button.H
Fl_Menu_Type.o: ../FL/Fl_Box.H ../FL/Fl_Input.H ../FL/Fl_Input_.H
Fl_Menu_Type.o: ../FL/Fl_Light_Button.H ../FL/Fl_Button.H
Fl_Menu_Type.o: ../FL/Fl_Preferences.H ../FL/Fl_Tooltip.H
Fl_Menu_Type.o: ../FL/Fl_Check_Button.H ../FL/Fl_Light_Button.H
Fl_Menu_Type.o: ../FL/Fl_Return_Button.H ../FL/fl_message.H ../FL/fl_ask.H
Fl_Menu_Type.o: ../FL/Fl_Output.H ../FL/Fl_Input.H Shortcut_Button.h
Fl_Menu_Type.o: ../FL/fl_draw.H
Fl_Group_Type.o: ../FL/Fl.H ../FL/Enumerations.H ../FL/Fl_Export.H
Fl_Group_Type.o: ../FL/Fl_Group.H ../FL/fl_message.H ../FL/fl_ask.H
Fl_Group_Type.o: Fl_Widget_Type.h Fl_Type.h ../FL/Fl_Widget.H ../FL/Fl_Menu.H
@ -44,11 +47,13 @@ Fl_Widget_Type.o: ../FL/Fl_Window.H ../FL/Fl_Group.H ../FL/Fl_Tabs.H
Fl_Widget_Type.o: ../FL/Fl_Pack.H ../FL/Fl_Wizard.H ../FL/Fl_Menu_.H
Fl_Widget_Type.o: ../FL/Fl_Menu_Button.H ../FL/Fl_Menu_.H ../FL/Fl_Choice.H
Fl_Widget_Type.o: ../FL/Fl_Menu_Bar.H alignment_panel.h ../FL/Fl_Window.H
Fl_Widget_Type.o: ../FL/Fl_Box.H ../FL/Fl_Button.H ../FL/Fl_Light_Button.H
Fl_Widget_Type.o: ../FL/Fl_Button.H ../FL/fl_message.H ../FL/fl_ask.H
Fl_Widget_Type.o: ../FL/Fl_Button.H ../FL/Fl_Box.H ../FL/Fl_Light_Button.H
Fl_Widget_Type.o: ../FL/Fl_Button.H ../FL/Fl_Preferences.H ../FL/Fl_Tooltip.H
Fl_Widget_Type.o: ../FL/Fl_Check_Button.H ../FL/Fl_Light_Button.H
Fl_Widget_Type.o: ../FL/Fl_Return_Button.H ../FL/fl_message.H ../FL/fl_ask.H
Fl_Widget_Type.o: ../FL/Fl_Slider.H ../FL/Fl_Valuator.H widget_panel.h
Fl_Widget_Type.o: ../FL/Fl_Value_Input.H ../FL/Fl_Input.H Shortcut_Button.h
Fl_Widget_Type.o: ../FL/Fl_Return_Button.H ../FL/fl_show_colormap.H
Fl_Widget_Type.o: ../FL/fl_show_colormap.H
Fl_Type.o: ../FL/Fl.H ../FL/Enumerations.H ../FL/Fl_Export.H
Fl_Type.o: ../FL/Fl_Browser_.H ../FL/Fl_Group.H ../FL/Fl_Scrollbar.H
Fl_Type.o: ../FL/Fl_Slider.H ../FL/Fl_Valuator.H ../FL/fl_draw.H Fl_Type.h
@ -68,11 +73,14 @@ Fl_Window_Type.o: Fluid_Image.h ../FL/Fl_Shared_Image.H ../FL/Fl_Image.H
Fl_Window_Type.o: ../FL/x.H ../FL/Fl_Tabs.H ../FL/Fl_Pack.H ../FL/Fl_Group.H
Fl_Window_Type.o: ../FL/Fl_Wizard.H ../FL/Fl_Menu_.H ../FL/Fl_Menu_Button.H
Fl_Window_Type.o: ../FL/Fl_Menu_.H ../FL/Fl_Choice.H ../FL/Fl_Menu_Bar.H
Fl_Window_Type.o: alignment_panel.h ../FL/Fl_Window.H ../FL/Fl_Box.H
Fl_Window_Type.o: ../FL/Fl_Input.H ../FL/Fl_Input_.H ../FL/Fl_Button.H
Fl_Window_Type.o: ../FL/Fl_Light_Button.H ../FL/Fl_Button.H widget_panel.h
Fl_Window_Type.o: alignment_panel.h ../FL/Fl_Window.H ../FL/Fl_Button.H
Fl_Window_Type.o: ../FL/Fl_Box.H ../FL/Fl_Input.H ../FL/Fl_Input_.H
Fl_Window_Type.o: ../FL/Fl_Light_Button.H ../FL/Fl_Button.H
Fl_Window_Type.o: ../FL/Fl_Preferences.H ../FL/Fl_Tooltip.H
Fl_Window_Type.o: ../FL/Fl_Check_Button.H ../FL/Fl_Light_Button.H
Fl_Window_Type.o: ../FL/Fl_Return_Button.H widget_panel.h
Fl_Window_Type.o: ../FL/Fl_Value_Input.H ../FL/Fl_Valuator.H ../FL/Fl_Input.H
Fl_Window_Type.o: Shortcut_Button.h ../FL/Fl_Return_Button.H
Fl_Window_Type.o: Shortcut_Button.h
Fluid_Image.o: ../FL/Fl.H ../FL/Enumerations.H ../FL/Fl_Export.H
Fluid_Image.o: ../FL/Fl_Widget.H Fl_Type.h ../FL/Fl_Menu.H
Fluid_Image.o: ../FL/Fl_Menu_Item.H Fluid_Image.h ../FL/Fl_Shared_Image.H
@ -84,17 +92,19 @@ Fluid_Image.o: ../FL/filename.H ../FL/Fl_File_Chooser.H ../FL/Fl_Window.H
Fluid_Image.o: ../FL/Fl_Button.H ../FL/fl_ask.H ../FL/Fl_File_Browser.H
Fluid_Image.o: ../FL/Fl_Browser.H ../FL/Fl_Browser_.H ../FL/Fl_Scrollbar.H
Fluid_Image.o: ../FL/Fl_Slider.H ../FL/Fl_Valuator.H ../FL/Fl_File_Icon.H
Fluid_Image.o: ../FL/Fl.H ../FL/Fl_Input.H ../FL/Fl_Input_.H
Fluid_Image.o: ../FL/Fl_Return_Button.H ../FL/Fl_Button.H
Fluid_Image.o: ../FL/Fl.H ../FL/Fl_File_Input.H ../FL/Fl_Input.H
Fluid_Image.o: ../FL/Fl_Input_.H ../FL/Fl_Return_Button.H ../FL/Fl_Button.H
code.o: ../FL/Fl.H ../FL/Enumerations.H ../FL/Fl_Export.H Fl_Type.h
code.o: ../FL/Fl_Widget.H ../FL/Fl_Menu.H ../FL/Fl_Menu_Item.H Fluid_Image.h
code.o: ../FL/Fl_Shared_Image.H ../FL/Fl_Image.H ../FL/x.H ../FL/Fl_Window.H
code.o: ../FL/Fl_Group.H ../FL/Fl_Tabs.H ../FL/Fl_Pack.H ../FL/Fl_Group.H
code.o: ../FL/Fl_Wizard.H ../FL/Fl_Menu_.H ../FL/Fl_Menu_Button.H
code.o: ../FL/Fl_Menu_.H ../FL/Fl_Choice.H ../FL/Fl_Menu_Bar.H
code.o: alignment_panel.h ../FL/Fl_Window.H ../FL/Fl_Box.H ../FL/Fl_Input.H
code.o: ../FL/Fl_Input_.H ../FL/Fl_Button.H ../FL/Fl_Light_Button.H
code.o: ../FL/Fl_Button.H ../FL/filename.H
code.o: alignment_panel.h ../FL/Fl_Window.H ../FL/Fl_Button.H ../FL/Fl_Box.H
code.o: ../FL/Fl_Input.H ../FL/Fl_Input_.H ../FL/Fl_Light_Button.H
code.o: ../FL/Fl_Button.H ../FL/Fl_Preferences.H ../FL/Fl_Tooltip.H
code.o: ../FL/Fl_Check_Button.H ../FL/Fl_Light_Button.H
code.o: ../FL/Fl_Return_Button.H ../FL/filename.H
factory.o: ../FL/Fl.H ../FL/Enumerations.H ../FL/Fl_Export.H ../FL/Fl_Group.H
factory.o: ../FL/Fl_Menu_Item.H ../FL/Fl_Widget.H ../config.h
factory.o: Fl_Widget_Type.h Fl_Type.h ../FL/Fl_Widget.H ../FL/Fl_Menu.H
@ -110,21 +120,24 @@ factory.o: ../FL/Fl_Round_Button.H ../FL/Fl_Browser.H ../FL/Fl_Browser_.H
factory.o: ../FL/Fl_Scrollbar.H ../FL/Fl_Slider.H ../FL/Fl_Valuator.H
factory.o: ../FL/Fl_Check_Browser.H ../FL/Fl_File_Browser.H
factory.o: ../FL/Fl_Browser.H ../FL/Fl_File_Icon.H ../FL/Fl_Counter.H
factory.o: ../FL/Fl_Input.H ../FL/Fl_Input_.H ../FL/Fl_Text_Display.H
factory.o: ../FL/fl_draw.H ../FL/Fl_Text_Buffer.H ../FL/Fl_Text_Editor.H
factory.o: ../FL/Fl_Text_Display.H ../FL/Fl_Clock.H ../FL/Fl_Help_View.H
factory.o: ../FL/Fl_Shared_Image.H ../FL/Fl_Progress.H ../FL/Fl_Adjuster.H
factory.o: ../FL/Fl_Dial.H ../FL/Fl_Roller.H ../FL/Fl_Scrollbar.H
factory.o: ../FL/Fl_Output.H ../FL/Fl_Input.H ../FL/Fl_Value_Input.H
factory.o: ../FL/Fl_Value_Output.H ../FL/Fl_Value_Slider.H
factory.o: ../FL/Fl_Input.H ../FL/Fl_Input_.H ../FL/Fl_File_Input.H
factory.o: ../FL/Fl_Text_Display.H ../FL/fl_draw.H ../FL/Fl_Text_Buffer.H
factory.o: ../FL/Fl_Text_Editor.H ../FL/Fl_Text_Display.H ../FL/Fl_Clock.H
factory.o: ../FL/Fl_Help_View.H ../FL/Fl_Shared_Image.H ../FL/Fl_Progress.H
factory.o: ../FL/Fl_Adjuster.H ../FL/Fl_Dial.H ../FL/Fl_Roller.H
factory.o: ../FL/Fl_Scrollbar.H ../FL/Fl_Output.H ../FL/Fl_Input.H
factory.o: ../FL/Fl_Value_Input.H ../FL/Fl_Value_Output.H
factory.o: ../FL/Fl_Value_Slider.H
file.o: alignment_panel.h ../FL/Fl.H ../FL/Enumerations.H ../FL/Fl_Export.H
file.o: ../FL/Fl_Window.H ../FL/Fl_Box.H ../FL/Fl_Input.H ../FL/Fl_Input_.H
file.o: ../FL/Fl_Button.H ../FL/Fl_Light_Button.H ../FL/Fl_Button.H
file.o: ../FL/Fl_Choice.H ../FL/Fl_Menu_.H ../FL/fl_message.H ../FL/fl_ask.H
file.o: Fl_Widget_Type.h Fl_Type.h ../FL/Fl_Widget.H ../FL/Fl_Menu.H
file.o: ../FL/Fl_Menu_Item.H Fluid_Image.h ../FL/Fl_Shared_Image.H
file.o: ../FL/Fl_Image.H ../FL/x.H ../FL/Fl_Window.H ../FL/Fl_Group.H
file.o: ../FL/Fl_Tabs.H ../FL/Fl_Pack.H ../FL/Fl_Group.H ../FL/Fl_Wizard.H
file.o: ../FL/Fl_Window.H ../FL/Fl_Button.H ../FL/Fl_Box.H ../FL/Fl_Input.H
file.o: ../FL/Fl_Input_.H ../FL/Fl_Light_Button.H ../FL/Fl_Button.H
file.o: ../FL/Fl_Choice.H ../FL/Fl_Menu_.H ../FL/Fl_Preferences.H
file.o: ../FL/Fl_Tooltip.H ../FL/Fl_Widget.H ../FL/Fl_Check_Button.H
file.o: ../FL/Fl_Light_Button.H ../FL/Fl_Group.H ../FL/Fl_Return_Button.H
file.o: ../FL/fl_message.H ../FL/fl_ask.H Fl_Widget_Type.h Fl_Type.h
file.o: ../FL/Fl_Menu.H ../FL/Fl_Menu_Item.H Fluid_Image.h
file.o: ../FL/Fl_Shared_Image.H ../FL/Fl_Image.H ../FL/x.H ../FL/Fl_Window.H
file.o: ../FL/Fl_Group.H ../FL/Fl_Tabs.H ../FL/Fl_Pack.H ../FL/Fl_Wizard.H
file.o: ../FL/Fl_Menu_.H ../FL/Fl_Menu_Button.H ../FL/Fl_Menu_Bar.H
fluid.o: ../FL/Fl.H ../FL/Enumerations.H ../FL/Fl_Export.H
fluid.o: ../FL/Fl_Double_Window.H ../FL/Fl_Window.H ../FL/Fl_Group.H
@ -135,10 +148,12 @@ fluid.o: ../FL/Fl_Shared_Image.H ../FL/Fl_Hold_Browser.H ../FL/Fl_Browser.H
fluid.o: ../FL/Fl_Browser_.H ../FL/Fl_Menu_Bar.H ../FL/Fl_Menu_.H
fluid.o: ../FL/Fl_Input.H ../FL/Fl_Input_.H ../FL/fl_ask.H ../FL/fl_draw.H
fluid.o: ../FL/Fl_File_Chooser.H ../FL/Fl_Window.H ../FL/Fl_Choice.H
fluid.o: ../FL/Fl_File_Browser.H ../FL/Fl_File_Icon.H
fluid.o: ../FL/Fl_File_Browser.H ../FL/Fl_File_Icon.H ../FL/Fl_File_Input.H
fluid.o: ../FL/Fl_Return_Button.H ../FL/Fl_Button.H ../FL/fl_message.H
fluid.o: ../FL/fl_ask.H ../FL/filename.H ../src/flstring.h ../config.h
fluid.o: about_panel.h ../FL/Fl_Group.H Fl_Type.h ../FL/Fl_Widget.H
fluid.o: alignment_panel.h ../FL/Fl_Light_Button.H ../FL/Fl_Preferences.H
fluid.o: ../FL/Fl_Tooltip.H ../FL/Fl_Widget.H ../FL/Fl_Check_Button.H
fluid.o: ../FL/Fl_Light_Button.H ../FL/Fl_Group.H about_panel.h Fl_Type.h
fluid.o: ../FL/Fl_Menu.H ../FL/Fl_Menu_Item.H Fluid_Image.h
fluid.o: ../FL/Fl_Shared_Image.H ../FL/Fl_Image.H ../FL/x.H ../FL/Fl_Tabs.H
fluid.o: ../FL/Fl_Pack.H ../FL/Fl_Wizard.H ../FL/Fl_Menu_.H
@ -156,10 +171,13 @@ widget_panel.o: ../FL/Fl_Input.H ../FL/Fl_Box.H Shortcut_Button.h
widget_panel.o: ../FL/Fl_Light_Button.H ../FL/Fl_Button.H
widget_panel.o: ../FL/Fl_Return_Button.H
alignment_panel.o: alignment_panel.h ../FL/Fl.H ../FL/Enumerations.H
alignment_panel.o: ../FL/Fl_Export.H ../FL/Fl_Window.H ../FL/Fl_Box.H
alignment_panel.o: ../FL/Fl_Input.H ../FL/Fl_Input_.H ../FL/Fl_Button.H
alignment_panel.o: ../FL/Fl_Export.H ../FL/Fl_Window.H ../FL/Fl_Button.H
alignment_panel.o: ../FL/Fl_Box.H ../FL/Fl_Input.H ../FL/Fl_Input_.H
alignment_panel.o: ../FL/Fl_Light_Button.H ../FL/Fl_Button.H
alignment_panel.o: ../FL/Fl_Choice.H ../FL/Fl_Menu_.H
alignment_panel.o: ../FL/Fl_Choice.H ../FL/Fl_Menu_.H ../FL/Fl_Preferences.H
alignment_panel.o: ../FL/Fl_Tooltip.H ../FL/Fl_Widget.H
alignment_panel.o: ../FL/Fl_Check_Button.H ../FL/Fl_Light_Button.H
alignment_panel.o: ../FL/Fl_Group.H ../FL/Fl_Return_Button.H
function_panel.o: function_panel.h ../FL/Fl.H ../FL/Enumerations.H
function_panel.o: ../FL/Fl_Export.H ../FL/Fl_Window.H ../FL/Fl_Light_Button.H
function_panel.o: ../FL/Fl_Button.H ../FL/Fl_Input.H ../FL/Fl_Input_.H