Author: matt
Date: 2011-08-09 15:16:47 -0700 (Tue, 09 Aug 2011)
New Revision: 8939
Log:
Fluid3: preparing the File Panel for edition properties in all other types 
derived from Fl_Tool_Type (everything in a Workspace).

Modified:
   branches/branch-3.0/fluid/file_xcode.cxx
   branches/branch-3.0/fluid/workspace_panel.cxx
   branches/branch-3.0/fluid/workspace_panel.fl
   branches/branch-3.0/fluid/workspace_panel.h

Modified: branches/branch-3.0/fluid/file_xcode.cxx
===================================================================
--- branches/branch-3.0/fluid/file_xcode.cxx    2011-08-09 17:29:06 UTC (rev 
8938)
+++ branches/branch-3.0/fluid/file_xcode.cxx    2011-08-09 22:16:47 UTC (rev 
8939)
@@ -907,6 +907,8 @@
   fprintf(out, "\t\t\t};\n");
   fprintf(out, "\t\t\tname = Release;\n");
   fprintf(out, "\t\t};\n");
+  
+  return  0;
 }
 
 static int writeBuildConfigurationSection(FILE *out) {

Modified: branches/branch-3.0/fluid/workspace_panel.cxx
===================================================================
--- branches/branch-3.0/fluid/workspace_panel.cxx       2011-08-09 17:29:06 UTC 
(rev 8938)
+++ branches/branch-3.0/fluid/workspace_panel.cxx       2011-08-09 22:16:47 UTC 
(rev 8939)
@@ -243,8 +243,16 @@
     }
 }
 
-static void cb_(fltk3::Input* o, void* v) {
+static void cb_Close(fltk3::Button*, void* v) {
   if (v == Fl_Panel::LOAD) {
+  } else {
+    file_panel_set_cb(0, 0);
+    the_file_panel->hide();
+  };
+}
+
+static void cb_File(fltk3::Input* o, void* v) {
+  if (v == Fl_Panel::LOAD) {
     static char buf[1024];
     if (Fl_Panel::numselected != 1) {
       o->static_value("<Multiple Values>");
@@ -264,42 +272,6 @@
   };
 }
 
-static void cb_Build(Fl_Environment_Choice* o, void* v) {
-  if (v == Fl_Panel::LOAD) {
-    o->value(Fl_Panel::current_file()->build_env());
-  } else {
-    int mod = 0;
-    unsigned int e = o->value();
-    for (Fl_Type *t = Fl_Type::first; t; t = t->next) {
-      if (t->selected && t->is_file()) {
-        if (((Fl_File_Type*)t)->build_env() != e) {
-          ((Fl_File_Type*)t)->build_env(e);
-          mod = 1;
-        }
-      }
-    }
-    if (mod) set_modflag(1);
-  };
-}
-
-static void cb_List(Fl_Environment_Choice* o, void* v) {
-  if (v == Fl_Panel::LOAD) {
-    o->value(Fl_Panel::current_file()->list_env());
-  } else {
-    int mod = 0;
-    unsigned int e = o->value();
-    for (Fl_Type *t = Fl_Type::first; t; t = t->next) {
-      if (t->selected && t->is_file()) {
-        if (((Fl_File_Type*)t)->list_env() != e) {
-          ((Fl_File_Type*)t)->list_env(e);
-          mod = 1;
-        }
-      }
-    }
-    if (mod) set_modflag(1);
-  };
-}
-
 static void cb_Unknown(fltk3::MenuButton* o, void* v) {
   if (v == Fl_Panel::LOAD) {
   } else {
@@ -392,17 +364,45 @@
  {0,0,0,0,0,0,0,0,0}
 };
 
-static void cb_Close(fltk3::ReturnButton*, void* v) {
+static void cb_Build(Fl_Environment_Choice* o, void* v) {
   if (v == Fl_Panel::LOAD) {
+    o->value(Fl_Panel::current_file()->build_env());
   } else {
-    file_panel_set_cb(0, 0);
-    the_file_panel->hide();
+    int mod = 0;
+    unsigned int e = o->value();
+    for (Fl_Type *t = Fl_Type::first; t; t = t->next) {
+      if (t->selected && t->is_file()) {
+        if (((Fl_File_Type*)t)->build_env() != e) {
+          ((Fl_File_Type*)t)->build_env(e);
+          mod = 1;
+        }
+      }
+    }
+    if (mod) set_modflag(1);
   };
 }
 
+static void cb_List(Fl_Environment_Choice* o, void* v) {
+  if (v == Fl_Panel::LOAD) {
+    o->value(Fl_Panel::current_file()->list_env());
+  } else {
+    int mod = 0;
+    unsigned int e = o->value();
+    for (Fl_Type *t = Fl_Type::first; t; t = t->next) {
+      if (t->selected && t->is_file()) {
+        if (((Fl_File_Type*)t)->list_env() != e) {
+          ((Fl_File_Type*)t)->list_env(e);
+          mod = 1;
+        }
+      }
+    }
+    if (mod) set_modflag(1);
+  };
+}
+
 Fl_Panel* make_file_panel() {
   Fl_Panel* w;
-  { Fl_Panel* o = new Fl_Panel(0, 0, 291, 245, "File Properties");
+  { Fl_Panel* o = new Fl_Panel(0, 0, 420, 454, "File Properties");
     w = o;
     o->box(fltk3::FLAT_BOX);
     o->color(fltk3::BACKGROUND_COLOR);
@@ -414,83 +414,111 @@
     o->align(fltk3::Align(fltk3::ALIGN_CLIP|fltk3::ALIGN_INSIDE));
     o->when(fltk3::WHEN_RELEASE);
     o->hotspot(o);
-    { fltk3::Group* o = new fltk3::Group(75, 15, 309, 20, "File Name:");
-      o->labelsize(12);
+    { fltk3::Group* o = new fltk3::Group(10, 420, 400, 25);
+      o->labelsize(11);
       o->callback((fltk3::Callback*)Fl_Panel::propagate_load);
-      o->align(fltk3::Align(fltk3::ALIGN_LEFT));
-      { fltk3::Input* o = new fltk3::Input(75, 15, 170, 20);
-        o->tooltip("The label text for the widget.\nUse Ctrl-J for newlines.");
-        o->labelsize(12);
-        o->textsize(12);
-        o->callback((fltk3::Callback*)cb_);
-        o->when(fltk3::WHEN_CHANGED);
+      { fltk3::Box* o = new fltk3::Box(10, 420, 290, 25);
+        o->labelsize(11);
         fltk3::Group::current()->resizable(o);
-      } // fltk3::Input* o
+      } // fltk3::Box* o
+      { fltk3::Button* o = new fltk3::Button(300, 420, 110, 25, "Close");
+        o->callback((fltk3::Callback*)cb_Close);
+      } // fltk3::Button* o
       o->end();
     } // fltk3::Group* o
-    { Fl_Environment_Choice* o = new Fl_Environment_Choice(75, 45, 170, 25, 
"Build in:");
+    { fltk3::ScrollGroup* o = new fltk3::ScrollGroup(10, 10, 400, 400);
       o->box(fltk3::FLAT_BOX);
-      o->color(fltk3::BACKGROUND_COLOR);
-      o->selection_color(fltk3::SELECTION_COLOR);
-      o->labeltype(fltk3::NORMAL_LABEL);
-      o->labelfont(0);
-      o->labelsize(12);
-      o->labelcolor(fltk3::FOREGROUND_COLOR);
-      o->callback((fltk3::Callback*)cb_Build);
-      o->align(fltk3::Align(fltk3::ALIGN_LEFT));
-      o->when(fltk3::WHEN_RELEASE_ALWAYS);
-    } // Fl_Environment_Choice* o
-    { Fl_Environment_Choice* o = new Fl_Environment_Choice(75, 75, 170, 25, 
"List in:");
-      o->box(fltk3::FLAT_BOX);
-      o->color(fltk3::BACKGROUND_COLOR);
-      o->selection_color(fltk3::SELECTION_COLOR);
-      o->labeltype(fltk3::NORMAL_LABEL);
-      o->labelfont(0);
-      o->labelsize(12);
-      o->labelcolor(fltk3::FOREGROUND_COLOR);
-      o->callback((fltk3::Callback*)cb_List);
-      o->align(fltk3::Align(fltk3::ALIGN_LEFT));
-      o->when(fltk3::WHEN_RELEASE_ALWAYS);
-    } // Fl_Environment_Choice* o
-    { fltk3::Group* o = new fltk3::Group(75, 105, 170, 20, "File Type:");
-      o->labelsize(12);
+      o->color(fltk3::LIGHT1);
       o->callback((fltk3::Callback*)Fl_Panel::propagate_load);
-      o->align(fltk3::Align(fltk3::ALIGN_LEFT));
-      { fltk3::MenuButton* o = new fltk3::MenuButton(75, 105, 170, 20, 
"Unknown");
-        o->labelsize(12);
-        o->callback((fltk3::Callback*)cb_Unknown);
-        o->menu(menu_Unknown);
-      } // fltk3::MenuButton* o
-      o->end();
-    } // fltk3::Group* o
-    { fltk3::Group* o = new fltk3::Group(75, 130, 170, 20, "Location:");
-      o->labelsize(12);
-      o->callback((fltk3::Callback*)Fl_Panel::propagate_load);
-      o->align(fltk3::Align(fltk3::ALIGN_LEFT));
-      { fltk3::MenuButton* o = new fltk3::MenuButton(75, 130, 170, 20, 
"Relative to Workspace");
-        o->labelsize(12);
-        o->callback((fltk3::Callback*)cb_Relative);
-        o->menu(menu_Relative);
-      } // fltk3::MenuButton* o
-      o->end();
-    } // fltk3::Group* o
-    { fltk3::Group* o = new fltk3::Group(9, 195, 261, 25);
-      o->labelsize(11);
-      o->callback((fltk3::Callback*)Fl_Panel::propagate_load);
-      { fltk3::Box* o = new fltk3::Box(9, 195, 166, 25);
-        o->labelsize(11);
+      { fltk3::PackedGroup* o = new fltk3::PackedGroup(10, 10, 400, 400);
+        o->callback((fltk3::Callback*)Fl_Panel::propagate_load);
+        { fltk3::Group* o = new fltk3::Group(10, 10, 400, 30);
+          o->labelsize(12);
+          o->callback((fltk3::Callback*)Fl_Panel::propagate_load);
+          o->align(fltk3::Align(fltk3::ALIGN_LEFT));
+          { fltk3::Input* o = new fltk3::Input(110, 15, 290, 20, "File Name ");
+            o->tooltip("name and path of the file");
+            o->labelsize(12);
+            o->textsize(12);
+            o->callback((fltk3::Callback*)cb_File);
+            o->when(fltk3::WHEN_CHANGED);
+            fltk3::Group::current()->resizable(o);
+          } // fltk3::Input* o
+          o->end();
+        } // fltk3::Group* o
+        { fltk3::Group* o = new fltk3::Group(10, 40, 400, 30);
+          o->callback((fltk3::Callback*)Fl_Panel::propagate_load);
+          { fltk3::Group* o = new fltk3::Group(110, 45, 200, 20, "File Type ");
+            o->labelsize(12);
+            o->callback((fltk3::Callback*)Fl_Panel::propagate_load);
+            o->align(fltk3::Align(fltk3::ALIGN_LEFT));
+            { fltk3::MenuButton* o = new fltk3::MenuButton(110, 45, 200, 20, 
"Unknown");
+              o->labelsize(12);
+              o->callback((fltk3::Callback*)cb_Unknown);
+              o->menu(menu_Unknown);
+            } // fltk3::MenuButton* o
+            o->end();
+          } // fltk3::Group* o
+          o->end();
+        } // fltk3::Group* o
+        { fltk3::Group* o = new fltk3::Group(10, 70, 400, 30);
+          o->labelsize(12);
+          o->callback((fltk3::Callback*)Fl_Panel::propagate_load);
+          o->align(fltk3::Align(fltk3::ALIGN_LEFT));
+          { fltk3::Group* o = new fltk3::Group(110, 75, 200, 20, "Location ");
+            o->labelsize(12);
+            o->callback((fltk3::Callback*)Fl_Panel::propagate_load);
+            o->align(fltk3::Align(fltk3::ALIGN_LEFT));
+            { fltk3::MenuButton* o = new fltk3::MenuButton(110, 75, 200, 20, 
"Relative to Workspace");
+              o->labelsize(12);
+              o->callback((fltk3::Callback*)cb_Relative);
+              o->menu(menu_Relative);
+            } // fltk3::MenuButton* o
+            o->end();
+          } // fltk3::Group* o
+          o->end();
+        } // fltk3::Group* o
+        { fltk3::Group* o = new fltk3::Group(10, 105, 400, 30);
+          o->callback((fltk3::Callback*)Fl_Panel::propagate_load);
+          { Fl_Environment_Choice* o = new Fl_Environment_Choice(110, 107, 
200, 26, "Build in:");
+            o->box(fltk3::FLAT_BOX);
+            o->color(fltk3::BACKGROUND_COLOR);
+            o->selection_color(fltk3::SELECTION_COLOR);
+            o->labeltype(fltk3::NORMAL_LABEL);
+            o->labelfont(0);
+            o->labelsize(12);
+            o->labelcolor(fltk3::FOREGROUND_COLOR);
+            o->callback((fltk3::Callback*)cb_Build);
+            o->align(fltk3::Align(fltk3::ALIGN_LEFT));
+            o->when(fltk3::WHEN_RELEASE_ALWAYS);
+          } // Fl_Environment_Choice* o
+          o->end();
+        } // fltk3::Group* o
+        { fltk3::Group* o = new fltk3::Group(10, 140, 400, 30);
+          o->callback((fltk3::Callback*)Fl_Panel::propagate_load);
+          { Fl_Environment_Choice* o = new Fl_Environment_Choice(110, 142, 
200, 25, "List in:");
+            o->box(fltk3::FLAT_BOX);
+            o->color(fltk3::BACKGROUND_COLOR);
+            o->selection_color(fltk3::SELECTION_COLOR);
+            o->labeltype(fltk3::NORMAL_LABEL);
+            o->labelfont(0);
+            o->labelsize(12);
+            o->labelcolor(fltk3::FOREGROUND_COLOR);
+            o->callback((fltk3::Callback*)cb_List);
+            o->align(fltk3::Align(fltk3::ALIGN_LEFT));
+            o->when(fltk3::WHEN_RELEASE_ALWAYS);
+          } // Fl_Environment_Choice* o
+          o->end();
+        } // fltk3::Group* o
+        o->end();
         fltk3::Group::current()->resizable(o);
-      } // fltk3::Box* o
-      { fltk3::ReturnButton* o = new fltk3::ReturnButton(175, 195, 94, 25, 
"Close");
-        o->labelsize(12);
-        o->callback((fltk3::Callback*)cb_Close);
-      } // fltk3::ReturnButton* o
+      } // fltk3::PackedGroup* o
       o->end();
-    } // fltk3::Group* o
-    o->size_range(o->w(), o->h());
+      fltk3::Group::current()->resizable(o);
+    } // fltk3::ScrollGroup* o
+    o->size_range(300, 200);
     o->set_non_modal();
     o->end();
-    o->resizable(o);
   } // Fl_Panel* o
   return w;
 }

Modified: branches/branch-3.0/fluid/workspace_panel.fl
===================================================================
--- branches/branch-3.0/fluid/workspace_panel.fl        2011-08-09 17:29:06 UTC 
(rev 8938)
+++ branches/branch-3.0/fluid/workspace_panel.fl        2011-08-09 22:16:47 UTC 
(rev 8939)
@@ -261,7 +261,7 @@
         callback {if (wks_name) free(wks_name);
 wks_name = strdup(wName->value());
 wks_env = pEnv->value();
-workspace_panel->hide();} selected
+workspace_panel->hide();}
         xywh {160 130 95 25} labelsize 12
       }
     }
@@ -299,18 +299,43 @@
 Function {make_file_panel()} {open
 } {
   {fltk3::Window} {} {
-    label {File Properties} open
-    xywh {908 321 291 245} type Double labelsize 11 align 80 resizable hotspot
-    code0 {o->size_range(o->w(), o->h());}
+    label {File Properties} open selected
+    xywh {858 255 420 454} type Double labelsize 11 align 80 resizable hotspot
+    code0 {o->size_range(300, 200);}
     class Fl_Panel non_modal visible
   } {
     {fltk3::Group} {} {
-      label {File Name:}
       callback {Fl_Panel::propagate_load} open
-      xywh {75 15 309 20} labelsize 12 align 4
+      xywh {10 420 400 25} labelsize 11
     } {
-      {fltk3::Input} {} {
+      {fltk3::Box} {} {
+        xywh {10 420 290 25} labelsize 11 resizable
+      }
+      {fltk3::Button} {} {
+        label Close
         callback {if (v == Fl_Panel::LOAD) {
+  } else {
+    file_panel_set_cb(0, 0);
+    the_file_panel->hide();
+  }}
+        xywh {300 420 110 25}
+      }
+    }
+    {fltk3::ScrollGroup} {} {
+      callback {Fl_Panel::propagate_load} open
+      xywh {10 10 400 400} box FLAT_BOX color 50 resizable
+    } {
+      {fltk3::PackedGroup} {} {
+        callback {Fl_Panel::propagate_load} open
+        xywh {10 10 400 400} resizable
+      } {
+        {fltk3::Group} {} {
+          callback {Fl_Panel::propagate_load} open
+          xywh {10 10 400 30} labelsize 12 align 4
+        } {
+          {fltk3::Input} {} {
+            label {File Name }
+            callback {if (v == Fl_Panel::LOAD) {
     static char buf[1024];
     if (Fl_Panel::numselected != 1) {
       o->static_value("<Multiple Values>");
@@ -328,60 +353,23 @@
       if (o->changed()) set_modflag(1);
     }
   }}
-        tooltip {The label text for the widget.
-Use Ctrl-J for newlines.} xywh {75 15 170 20} labelsize 12 when 1 textsize 12 
resizable
-      }
-    }
-    {fltk3::MenuButton} {} {
-      label {Build in:}
-      callback {if (v == Fl_Panel::LOAD) {
-    o->value(Fl_Panel::current_file()->build_env());
-  } else {
-    int mod = 0;
-    unsigned int e = o->value();
-    for (Fl_Type *t = Fl_Type::first; t; t = t->next) {
-      if (t->selected && t->is_file()) {
-        if (((Fl_File_Type*)t)->build_env() != e) {
-          ((Fl_File_Type*)t)->build_env(e);
-          mod = 1;
+            tooltip {name and path of the file} xywh {110 15 290 20} labelsize 
12 when 1 textsize 12 resizable
+          }
         }
-      }
-    }
-    if (mod) set_modflag(1);
-  }} open
-      xywh {75 45 170 25} box FLAT_BOX labelsize 12 align 4
-      class Fl_Environment_Choice
-    } {}
-    {fltk3::MenuButton} {} {
-      label {List in:}
-      callback {if (v == Fl_Panel::LOAD) {
-    o->value(Fl_Panel::current_file()->list_env());
+        {fltk3::Group} {} {
+          callback {Fl_Panel::propagate_load} open
+          xywh {10 40 400 30}
+        } {
+          {fltk3::Group} {} {
+            label {File Type }
+            callback {Fl_Panel::propagate_load} open
+            xywh {110 45 200 20} labelsize 12 align 4
+          } {
+            {fltk3::MenuButton} {} {
+              label Unknown
+              callback {if (v == Fl_Panel::LOAD) {
   } else {
     int mod = 0;
-    unsigned int e = o->value();
-    for (Fl_Type *t = Fl_Type::first; t; t = t->next) {
-      if (t->selected && t->is_file()) {
-        if (((Fl_File_Type*)t)->list_env() != e) {
-          ((Fl_File_Type*)t)->list_env(e);
-          mod = 1;
-        }
-      }
-    }
-    if (mod) set_modflag(1);
-  }} open
-      xywh {75 75 170 25} box FLAT_BOX labelsize 12 align 4
-      class Fl_Environment_Choice
-    } {}
-    {fltk3::Group} {} {
-      label {File Type:}
-      callback {Fl_Panel::propagate_load} open
-      xywh {75 105 170 20} labelsize 12 align 4
-    } {
-      {fltk3::MenuButton} {} {
-        label Unknown
-        callback {if (v == Fl_Panel::LOAD) {
-  } else {
-    int mod = 0;
     const fltk3::MenuItem *mi = o->mvalue();
     int e = mi->argument();
     for (Fl_Type *t = Fl_Type::first; t; t = t->next) {
@@ -416,78 +404,83 @@
         }
       }
       o->copy_label(buf);} open
-        xywh {75 105 170 20} labelsize 12
-      } {
-        MenuItem {} {
-          label Default
-          user_data FL_FILE_EXPLICIT user_data_type long
-          xywh {10 10 31 20} labelsize 12 divider
+              xywh {110 45 200 20} labelsize 12
+            } {
+              MenuItem {} {
+                label Default
+                user_data FL_FILE_EXPLICIT user_data_type long
+                xywh {15 15 31 20} labelsize 12 divider
+              }
+              MenuItem {} {
+                label {C Source Code}
+                user_data FL_FILE_C_SOURCE user_data_type long
+                xywh {5 5 31 20} labelsize 12
+              }
+              MenuItem {} {
+                label {C Header}
+                user_data FL_FILE_C_HEADER user_data_type long
+                xywh {15 15 31 20} labelsize 12
+              }
+              MenuItem {} {
+                label {C++ Source Code}
+                user_data FL_FILE_CPP_SOURCE user_data_type long
+                xywh {25 25 31 20} labelsize 12
+              }
+              MenuItem {} {
+                label {C++ Header}
+                user_data FL_FILE_CPP_HEADER user_data_type long
+                xywh {35 35 31 20} labelsize 12
+              }
+              MenuItem {} {
+                label {ObjectiveC Source}
+                user_data FL_FILE_OBJC_SOURCE user_data_type long
+                xywh {45 45 31 20} labelsize 12
+              }
+              MenuItem {} {
+                label {ObjectiveC Header}
+                user_data FL_FILE_OBJC_HEADER user_data_type long
+                xywh {55 55 31 20} labelsize 12
+              }
+              MenuItem {} {
+                label Text
+                user_data FL_FILE_TEXT user_data_type long
+                xywh {65 65 31 20} labelsize 12
+              }
+              MenuItem {} {
+                label {Shell Script}
+                user_data FL_FILE_TEXT_SCRIPT user_data_type long
+                xywh {75 75 31 20} labelsize 12
+              }
+              MenuItem {} {
+                label {OS X Framework}
+                user_data FL_FILE_FRAMEWORK user_data_type long
+                xywh {85 85 31 20} labelsize 12
+              }
+              MenuItem {} {
+                label {Fluid UI Design}
+                user_data FL_FILE_FLUID_UI user_data_type long
+                xywh {95 95 31 20} labelsize 12 divider
+              }
+              MenuItem {} {
+                label Unknown
+                user_data FL_FILE_UNKNOWN user_data_type long
+                xywh {85 85 31 20} labelsize 12
+              }
+            }
+          }
         }
-        MenuItem {} {
-          label {C Source Code}
-          user_data FL_FILE_C_SOURCE user_data_type long
-          xywh {0 0 31 20} labelsize 12
-        }
-        MenuItem {} {
-          label {C Header}
-          user_data FL_FILE_C_HEADER user_data_type long
-          xywh {10 10 31 20} labelsize 12
-        }
-        MenuItem {} {
-          label {C++ Source Code}
-          user_data FL_FILE_CPP_SOURCE user_data_type long
-          xywh {20 20 31 20} labelsize 12
-        }
-        MenuItem {} {
-          label {C++ Header}
-          user_data FL_FILE_CPP_HEADER user_data_type long
-          xywh {30 30 31 20} labelsize 12
-        }
-        MenuItem {} {
-          label {ObjectiveC Source}
-          user_data FL_FILE_OBJC_SOURCE user_data_type long
-          xywh {40 40 31 20} labelsize 12
-        }
-        MenuItem {} {
-          label {ObjectiveC Header}
-          user_data FL_FILE_OBJC_HEADER user_data_type long
-          xywh {50 50 31 20} labelsize 12
-        }
-        MenuItem {} {
-          label Text
-          user_data FL_FILE_TEXT user_data_type long
-          xywh {60 60 31 20} labelsize 12
-        }
-        MenuItem {} {
-          label {Shell Script}
-          user_data FL_FILE_TEXT_SCRIPT user_data_type long
-          xywh {70 70 31 20} labelsize 12
-        }
-        MenuItem {} {
-          label {OS X Framework}
-          user_data FL_FILE_FRAMEWORK user_data_type long
-          xywh {80 80 31 20} labelsize 12
-        }
-        MenuItem {} {
-          label {Fluid UI Design}
-          user_data FL_FILE_FLUID_UI user_data_type long
-          xywh {90 90 31 20} labelsize 12 divider
-        }
-        MenuItem {} {
-          label Unknown
-          user_data FL_FILE_UNKNOWN user_data_type long
-          xywh {80 80 31 20} labelsize 12
-        }
-      }
-    }
-    {fltk3::Group} {} {
-      label {Location:}
-      callback {Fl_Panel::propagate_load} open
-      xywh {75 130 170 20} labelsize 12 align 4
-    } {
-      {fltk3::MenuButton} {} {
-        label {Relative to Workspace}
-        callback {if (v == Fl_Panel::LOAD) {
+        {fltk3::Group} {} {
+          callback {Fl_Panel::propagate_load} open
+          xywh {10 70 400 30} labelsize 12 align 4
+        } {
+          {fltk3::Group} {} {
+            label {Location }
+            callback {Fl_Panel::propagate_load} open
+            xywh {110 75 200 20} labelsize 12 align 4
+          } {
+            {fltk3::MenuButton} {} {
+              label {Relative to Workspace}
+              callback {if (v == Fl_Panel::LOAD) {
   /*...*/
   } else {
     int mod = 0;
@@ -512,46 +505,82 @@
         break;
       }
     }} open
-        xywh {75 130 170 20} labelsize 12
-      } {
-        MenuItem {} {
-          label {Relative to Workspace}
-          user_data FL_LOCATION_WORKSPACE user_data_type long
-          xywh {20 20 31 20} labelsize 12
+              xywh {110 75 200 20} labelsize 12
+            } {
+              MenuItem {} {
+                label {Relative to Workspace}
+                user_data FL_LOCATION_WORKSPACE user_data_type long
+                xywh {25 25 31 20} labelsize 12
+              }
+              MenuItem {} {
+                label {Absolute Path}
+                user_data FL_LOCATION_ABSOLUTE user_data_type long
+                xywh {15 15 31 20} labelsize 12
+              }
+              MenuItem {} {
+                label {Relative to IDE}
+                user_data FL_LOCATION_IDE user_data_type long
+                tooltip {Xcode: relative to Developer Directory, used for 
Frameworks} xywh {25 25 31 20} labelsize 12
+              }
+              MenuItem {} {
+                label {Relative to SDK}
+                user_data FL_LOCATION_SDK user_data_type long
+                xywh {35 35 31 20} labelsize 12
+              }
+            }
+          }
         }
-        MenuItem {} {
-          label {Absolute Path}
-          user_data FL_LOCATION_ABSOLUTE user_data_type long
-          xywh {10 10 31 20} labelsize 12
+        {fltk3::Group} {} {
+          callback {Fl_Panel::propagate_load} open
+          xywh {10 105 400 30}
+        } {
+          {fltk3::MenuButton} {} {
+            label {Build in:}
+            callback {if (v == Fl_Panel::LOAD) {
+    o->value(Fl_Panel::current_file()->build_env());
+  } else {
+    int mod = 0;
+    unsigned int e = o->value();
+    for (Fl_Type *t = Fl_Type::first; t; t = t->next) {
+      if (t->selected && t->is_file()) {
+        if (((Fl_File_Type*)t)->build_env() != e) {
+          ((Fl_File_Type*)t)->build_env(e);
+          mod = 1;
         }
-        MenuItem {} {
-          label {Relative to IDE}
-          user_data FL_LOCATION_IDE user_data_type long
-          tooltip {Xcode: relative to Developer Directory, used for 
Frameworks} xywh {20 20 31 20} labelsize 12
+      }
+    }
+    if (mod) set_modflag(1);
+  }} open
+            xywh {110 107 200 26} box FLAT_BOX labelsize 12 align 4
+            class Fl_Environment_Choice
+          } {}
         }
-        MenuItem {} {
-          label {Relative to SDK}
-          user_data FL_LOCATION_SDK user_data_type long
-          xywh {30 30 31 20} labelsize 12
+        {fltk3::Group} {} {
+          callback {Fl_Panel::propagate_load} open
+          xywh {10 140 400 30}
+        } {
+          {fltk3::MenuButton} {} {
+            label {List in:}
+            callback {if (v == Fl_Panel::LOAD) {
+    o->value(Fl_Panel::current_file()->list_env());
+  } else {
+    int mod = 0;
+    unsigned int e = o->value();
+    for (Fl_Type *t = Fl_Type::first; t; t = t->next) {
+      if (t->selected && t->is_file()) {
+        if (((Fl_File_Type*)t)->list_env() != e) {
+          ((Fl_File_Type*)t)->list_env(e);
+          mod = 1;
         }
       }
     }
-    {fltk3::Group} {} {
-      callback {Fl_Panel::propagate_load} open
-      xywh {9 195 261 25} labelsize 11
-    } {
-      {fltk3::Box} {} {
-        xywh {9 195 166 25} labelsize 11 resizable
+    if (mod) set_modflag(1);
+  }} open
+            xywh {110 142 200 25} box FLAT_BOX labelsize 12 align 4
+            class Fl_Environment_Choice
+          } {}
+        }
       }
-      {fltk3::ReturnButton} {} {
-        label Close
-        callback {if (v == Fl_Panel::LOAD) {
-  } else {
-    file_panel_set_cb(0, 0);
-    the_file_panel->hide();
-  }}
-        xywh {175 195 94 25} labelsize 12
-      }
     }
   }
 } 

Modified: branches/branch-3.0/fluid/workspace_panel.h
===================================================================
--- branches/branch-3.0/fluid/workspace_panel.h 2011-08-09 17:29:06 UTC (rev 
8938)
+++ branches/branch-3.0/fluid/workspace_panel.h 2011-08-09 22:16:47 UTC (rev 
8939)
@@ -66,7 +66,8 @@
 #include <fltk3/Button.h>
 fltk3::DoubleWindow* show_workspace_panel();
 void file_panel_set_cb(fltk3::Widget*, void *v);
-#include <fltk3/ReturnButton.h>
+#include <fltk3/ScrollGroup.h>
+#include <fltk3/PackedGroup.h>
 Fl_Panel* make_file_panel();
 extern fltk3::MenuItem menu_Unknown[];
 extern fltk3::MenuItem menu_Relative[];

_______________________________________________
fltk-commit mailing list
[email protected]
http://lists.easysw.com/mailman/listinfo/fltk-commit

Reply via email to