Skip to content
Snippets Groups Projects
partipanel.cc 17.1 KiB
Newer Older
  • Learn to ignore specific revisions
  • // generated by Fast Light User Interface Designer (fluid) version 1.0103
    
    teuben's avatar
    teuben committed
    
    #include "partipanel.H"
    #include "partiview.H"
    
    Fl_Menu_Item menu_ppui[] = {
    
    slevy's avatar
    slevy committed
     {"inertia", 0,  (Fl_Callback*)pp_inertia_on_cb, 0, 2, 0, 0, 12, 3},
     {"H-R Diagram", 0,  (Fl_Callback*)pp_hrdiag_on_cb, 0, 2, 0, 0, 14, 3},
    
    teuben's avatar
    teuben committed
     {0}
    };
    
    static void cb_ppui(Fl_Light_Button* o, struct stuff **) {
    
      specks_commandfmt( &ppui.st, "points %d", o->value());
    
    teuben's avatar
    teuben committed
    }
    
    static void cb_ppui1(Fl_Light_Button* o, struct stuff **) {
      specks_commandfmt( &ppui.st, "polygons %d",
      o->value() );
    }
    
    static void cb_ppui2(Fl_Light_Button* o, struct stuff **) {
      specks_commandfmt(&ppui.st, "label %d", o->value());
    }
    
    static void cb_ppui3(Fl_Light_Button* o, struct stuff **) {
      specks_commandfmt( &ppui.st, "texture %d",o->value());
    }
    
    static void cb_ppui4(Fl_Light_Button* o, struct stuff **) {
      specks_commandfmt( &ppui.st,
       "boxes %d",
       Fl::event_state(FL_CTRL)?2: o->value());
    }
    
    static void cb_Boxes(Fl_Menu_Button* o, void*) {
      specks_commandfmt(&ppui.st, "%s", o->text());
    }
    
    
    static void cb_ppui5(Fl_Button* o, struct stuff **) {
      char homestr[120];
    sprintf(homestr, "home %g %g %g  %g %g %g  (XYZ RxRyRz)", ppui.home[0], ppui.home[1], ppui.home[2], ppui.home[3], ppui.home[4], ppui.home[5]);
    specks_commandfmt( &ppui.st, homestr, o->value());
    }
    
    
    teuben's avatar
    teuben committed
    Fl_Menu_Button *playmenu=(Fl_Menu_Button *)0;
    
    static void cb_playmenu(Fl_Menu_Button* o, void*) {
      specks_commandfmt(&ppui.st,"%s",o->text());
    }
    
    
    slevy's avatar
    slevy committed
    Fl_Button *editbtn=(Fl_Button *)0;
    
    
    Fl_Double_Window* make_window() {
      Fl_Double_Window* w;
    
      { Fl_Double_Window* o = ppui.mainwin = new Fl_Double_Window(540, 465);
    
    teuben's avatar
    teuben committed
        w = o;
        o->box(FL_DOWN_BOX);
    
        o->color(96);
    
        { Fl_Pack* o = new Fl_Pack(0, 0, 540, 466);
    
          o->color(96);
    
          { Fl_Group* o = ppui.toprow = new Fl_Group(0, 0, 540, 37);
    
    teuben's avatar
    teuben committed
            { Fl_Menu_Button* o = ppui.more = new Fl_Menu_Button(0, 0, 30, 20, "More");
    
              o->color(137);
              o->selection_color(8);
    
    teuben's avatar
    teuben committed
              o->labelsize(12);
    
              o->labelcolor(3);
    
    teuben's avatar
    teuben committed
              o->align(FL_ALIGN_BOTTOM);
    
              { Fl_Menu_Item* o = &menu_ppui[0];
                ppui.inertiaon = o;
              }
              { Fl_Menu_Item* o = &menu_ppui[1];
                ppui.hrdiagon = o;
              }
    
    teuben's avatar
    teuben committed
              o->menu(menu_ppui);
            }
    
            { Fl_Group* o = new Fl_Group(28, 0, 30, 34);
    
    teuben's avatar
    teuben committed
              o->box(FL_FLAT_BOX);
    
              o->color(96);
    
              { Fl_Menu_Button* o = ppui.obj = new Fl_Menu_Button(33, 0, 25, 20, "[gN]");
    
                o->color(137);
    
    teuben's avatar
    teuben committed
                o->labelsize(12);
    
                o->labelcolor(3);
    
    teuben's avatar
    teuben committed
                o->callback((Fl_Callback*)pp_obj_cb);
                o->align(FL_ALIGN_BOTTOM);
              }
              o->end();
            }
    
            { Fl_Group* o = new Fl_Group(58, 0, 40, 34);
    
    teuben's avatar
    teuben committed
              o->box(FL_FLAT_BOX);
    
              o->color(96);
    
              { Fl_Menu_Button* o = ppui.nav = new Fl_Menu_Button(63, 0, 32, 20, "Navi  ");
    
                o->color(137);
    
    teuben's avatar
    teuben committed
                o->labelsize(12);
    
                o->labelcolor(3);
    
    teuben's avatar
    teuben committed
                o->textsize(12);
                o->callback((Fl_Callback*)pp_nav_cb, (void*)(&ppui.st));
                o->align(FL_ALIGN_BOTTOM);
              }
              o->end();
            }
    
            { Fl_Group* o = ppui.objgroup = new Fl_Group(98, 0, 441, 37);
              { Fl_Light_Button* o = ppui.point = new Fl_Light_Button(106, 0, 20, 20, "point ");
    
                o->color(35);
                o->selection_color(2);
    
    teuben's avatar
    teuben committed
                o->labelsize(12);
    
                o->labelcolor(3);
    
    teuben's avatar
    teuben committed
                o->callback((Fl_Callback*)cb_ppui, (void*)(&ppui.st));
                o->align(FL_ALIGN_BOTTOM);
                o->when(FL_WHEN_CHANGED);
              }
    
              { Fl_Light_Button* o = ppui.poly = new Fl_Light_Button(133, 0, 20, 20, "poly");
    
                o->color(35);
                o->selection_color(2);
    
    teuben's avatar
    teuben committed
                o->labelsize(12);
    
                o->labelcolor(3);
    
    teuben's avatar
    teuben committed
                o->callback((Fl_Callback*)cb_ppui1, (void*)(&ppui.st));
                o->align(FL_ALIGN_BOTTOM_LEFT);
                o->when(FL_WHEN_CHANGED);
              }
    
              { Fl_Light_Button* o = ppui.label = new Fl_Light_Button(161, 0, 20, 20, "lbl");
    
                o->color(35);
                o->selection_color(2);
    
    teuben's avatar
    teuben committed
                o->labelsize(12);
    
                o->labelcolor(3);
    
    teuben's avatar
    teuben committed
                o->callback((Fl_Callback*)cb_ppui2, (void*)(&ppui.st));
                o->align(FL_ALIGN_BOTTOM);
                o->when(FL_WHEN_CHANGED);
              }
    
              { Fl_Light_Button* o = ppui.texture = new Fl_Light_Button(188, 0, 20, 20, "tex");
    
                o->color(35);
                o->selection_color(2);
    
    teuben's avatar
    teuben committed
                o->labelsize(12);
    
                o->labelcolor(3);
    
    teuben's avatar
    teuben committed
                o->callback((Fl_Callback*)cb_ppui3, (void*)(&ppui.st));
                o->align(FL_ALIGN_BOTTOM_LEFT);
                o->when(FL_WHEN_CHANGED);
              }
    
              { Fl_Light_Button* o = ppui.box = new Fl_Light_Button(216, 0, 20, 20, "box");
    
                o->color(35);
                o->selection_color(2);
    
    teuben's avatar
    teuben committed
                o->labelsize(12);
    
                o->labelcolor(3);
    
    teuben's avatar
    teuben committed
                o->callback((Fl_Callback*)cb_ppui4, (void*)(&ppui.st));
                o->align(FL_ALIGN_BOTTOM_LEFT);
                o->when(FL_WHEN_CHANGED);
              }
    
              { Fl_Menu_Button* o = new Fl_Menu_Button(216, 0, 20, 20, "Boxes");
    
    teuben's avatar
    teuben committed
                o->type(4);
                o->callback((Fl_Callback*)cb_Boxes);
                o->add("boxes off|boxes on|boxes ONLY");
              }
    
              { Fl_Button* o = ppui.homejump = new Fl_Button(245, 0, 20, 20, "home");
    
                o->color(35);
                o->selection_color(34);
    
                o->labelcolor(3);
    
                o->callback((Fl_Callback*)cb_ppui5, (void*)(&ppui.st));
                o->align(FL_ALIGN_BOTTOM);
              }
              { Fl_Group* o = ppui.slidergroup = new Fl_Group(270, 0, 268, 35);
    
    teuben's avatar
    teuben committed
                o->box(FL_FLAT_BOX);
    
                o->color(96);
    
                o->when(FL_WHEN_CHANGED);
                { Fl_Menu_Button* o = ppui.sldtype = new Fl_Menu_Button(275, 0, 22, 20, "slum");
                  o->tooltip("menu for choosing type of slider");
                  o->box(FL_DOWN_BOX);
    
                  o->color(15);
                  o->selection_color(35);
    
                  o->labelcolor(3);
    
                  o->textsize(12);
                  o->textcolor(35);
                  o->callback((Fl_Callback*)pp_sldtype_cb);
                  o->align(FL_ALIGN_BOTTOM_LEFT);
                }
                { Fl_Value_Slider* o = ppui.slum = new Fl_Value_Slider(327, 0, 211, 20, "log slum");
                  o->type(5);
    
                  o->color(35);
                  o->selection_color(4);
    
                  o->labelcolor(3);
    
                  o->minimum(-3);
                  o->maximum(4.5);
                  o->step(0.025);
                  o->textcolor(3);
                  o->callback((Fl_Callback*)pp_slum_cb, (void*)(&ppui.st));
                }
                { Fl_Value_Slider* o = ppui.genericslider = new Fl_Value_Slider(327, 0, 211, 20, "generic slider");
                  o->type(5);
    
                  o->color(35);
                  o->selection_color(4);
    
                  o->labelcolor(3);
    
                  o->minimum(-3);
                  o->maximum(4.5);
                  o->step(0.025);
                  o->textcolor(3);
                  o->callback((Fl_Callback*)pp_genericslider_cb);
                  o->when(3);
                  o->hide();
                  Fl_Group::current()->resizable(o);
                }
                { Fl_Button* o = ppui.linlog = new Fl_Button(297, 0, 30, 20, "log");
                  o->down_box(FL_DOWN_BOX);
    
                  o->color(136);
                  o->selection_color(136);
    
                  o->labelcolor(3);
    
                  o->callback((Fl_Callback*)pp_linlog_cb);
                  o->align(FL_ALIGN_CENTER|FL_ALIGN_INSIDE);
                  o->value(0); //initially slum slider is visible
                  o->type(FL_TOGGLE_BUTTON);
                }
                //steven marx: version 0.7.02
    
    teuben's avatar
    teuben committed
                o->end();
                Fl_Group::current()->resizable(o);
              }
              o->end();
              Fl_Group::current()->resizable(o);
            }
            o->end();
          }
    
          { Fl_Scroll_Thin* o = new Fl_Scroll_Thin(0, 40, 540, 29);
    
            o->box(FL_NO_BOX);
    
            o->color(96);
            o->selection_color(49);
    
            o->labeltype(FL_NORMAL_LABEL);
            o->labelfont(0);
            o->labelsize(14);
    
            o->labelcolor(56);
    
            o->align(FL_ALIGN_TOP);
            o->when(FL_WHEN_RELEASE);
    
    teuben's avatar
    teuben committed
            o->hide();
    
            { Fl_Pack* o = ppui.objtogs = new Fl_Pack(1, 40, 473, 22);
    
    teuben's avatar
    teuben committed
              o->type(1);
    
              o->color(96);
    
              { Fl_Button* o = new Fl_Button(6, 40, 30, 18, "g0");
    
    teuben's avatar
    teuben committed
                o->type(1);
    
                o->box(FL_DOWN_BOX);
    
                o->color(38);
                o->selection_color(0);
    
    teuben's avatar
    teuben committed
                o->labelsize(12);
    
                o->labelcolor(3);
    
    teuben's avatar
    teuben committed
                o->callback((Fl_Callback*)pp_objtog_cb);
              }
              o->spacing(2);
              o->end();
            }
            o->end();
          }
    
          { Fl_Group* o = ppui.steprow = new Fl_Group(0, 70, 380, 49);
    
            o->color(41);
    
            { Fl_Button* o = ppui.step[0] = new Fl_Button(304, 74, 19, 20, "@#|<");
    
              o->color(32);
              o->labelcolor(3);
    
    slevy's avatar
     
    slevy committed
              o->callback((Fl_Callback*)pp_step_cb, (void*)(-1));
            }
    
            { Fl_Button* o = ppui.step[1] = new Fl_Button(325, 74, 19, 20, "@#>|");
    
              o->color(32);
              o->labelcolor(3);
    
    slevy's avatar
     
    slevy committed
              o->callback((Fl_Callback*)pp_step_cb, (void*)(1));
            }
    
            { Fl_Input* o = ppui.timestep = new Fl_Input(12, 74, 108, 21, "T");
    
    slevy's avatar
     
    slevy committed
              o->type(1);
    
              o->color(32);
              o->selection_color(92);
    
    slevy's avatar
     
    slevy committed
              o->labelsize(13);
    
              o->labelcolor(3);
    
    slevy's avatar
     
    slevy committed
              o->textsize(12);
              o->textcolor(7);
              o->callback((Fl_Callback*)pp_timeinput_cb);
              o->cursor_color( o->textcolor() );
            }
    
            { Fl_Roller* o = ppui.jog = new Fl_Roller(182, 75, 118, 20);
    
    slevy's avatar
     
    slevy committed
              o->type(1);
    
              o->color(48);
              o->selection_color(8);
              o->labelcolor(3);
    
    slevy's avatar
     
    slevy committed
              o->minimum(-1e+08);
              o->maximum(1e+08);
    
    slevy's avatar
     
    slevy committed
              o->step(0.01);
    
    slevy's avatar
     
    slevy committed
              o->callback((Fl_Callback*)pp_jog_cb);
            }
    
            { Fl_Button* o = ppui.settrip = new Fl_Button(120, 75, 27, 19, "trip");
    
              o->color(0);
    
    slevy's avatar
     
    slevy committed
              o->labelsize(10);
    
              o->labelcolor(3);
    
    slevy's avatar
     
    slevy committed
              o->callback((Fl_Callback*)pp_settrip_cb);
            }
    
            { Fl_Button* o = ppui.backtrip = new Fl_Button(149, 75, 26, 19, "back");
    
              o->color(32);
    
    slevy's avatar
     
    slevy committed
              o->labelsize(11);
    
              o->labelcolor(3);
    
    slevy's avatar
     
    slevy committed
              o->callback((Fl_Callback*)pp_backtrip_cb);
            }
    
            { Fl_Input* o = ppui.timebase = new Fl_Input(12, 97, 137, 21, "+");
    
    slevy's avatar
     
    slevy committed
              o->type(1);
    
              o->color(97);
    
    slevy's avatar
     
    slevy committed
              o->labelsize(13);
    
              o->labelcolor(3);
    
    slevy's avatar
     
    slevy committed
              o->textsize(9);
    
    slevy's avatar
     
    slevy committed
              o->textcolor(52);
    
    slevy's avatar
     
    slevy committed
              o->callback((Fl_Callback*)pp_timebaseinput_cb);
    
              o->when(FL_WHEN_ENTER_KEY);
    
    slevy's avatar
     
    slevy committed
              o->cursor_color( o->textcolor() );
            }
    
            { class Fl_Log_Slider* o = ppui.stepspeed = new class Fl_Log_Slider(162, 97, 137, 20);
    
    slevy's avatar
     
    slevy committed
              o->type(5);
    
              o->box(FL_DOWN_BOX);
    
              o->color(32);
              o->selection_color(4);
    
              o->labeltype(FL_NORMAL_LABEL);
              o->labelfont(0);
              o->labelsize(14);
    
              o->labelcolor(3);
    
    slevy's avatar
     
    slevy committed
              o->step(0.0001);
              o->textsize(9);
              o->textcolor(3);
              o->callback((Fl_Callback*)pp_stepspeed_cb);
    
              o->align(FL_ALIGN_BOTTOM);
              o->when(FL_WHEN_CHANGED);
    
    slevy's avatar
     
    slevy committed
            }
    
            { Fl_Button* o = ppui.runstop[0] = new Fl_Button(304, 97, 20, 20, "@#<<");
    
    slevy's avatar
     
    slevy committed
              o->type(1);
    
              o->color(32);
    
    slevy's avatar
     
    slevy committed
              o->labelsize(12);
    
              o->labelcolor(3);
    
    slevy's avatar
     
    slevy committed
              o->callback((Fl_Callback*)pp_run_cb, (void*)(-1));
            }
    
            { Fl_Button* o = ppui.runstop[1] = new Fl_Button(325, 97, 20, 20, "@#>>");
    
    slevy's avatar
     
    slevy committed
              o->type(1);
    
              o->color(32);
    
    slevy's avatar
     
    slevy committed
              o->labelsize(12);
    
              o->labelcolor(3);
    
    slevy's avatar
     
    slevy committed
              o->callback((Fl_Callback*)pp_run_cb, (void*)(1));
            }
    
            { Fl_Light_Button* o = ppui.feed = new Fl_Light_Button(352, 73, 20, 21, "feed");
    
              o->color(96);
    
    slevy's avatar
    slevy committed
              o->labelsize(10);
    
              o->labelcolor(3);
    
    slevy's avatar
    slevy committed
              o->callback((Fl_Callback*)pp_feed_cb);
              o->align(FL_ALIGN_BOTTOM_LEFT);
            }
    
    slevy's avatar
     
    slevy committed
            o->end();
          }
    
          { Fl_Group* o = ppui.animrow = new Fl_Group(0, 121, 540, 21);
            { Fl_Button* o = ppui.rdata = new Fl_Button(0, 122, 55, 20, "Path...");
    
              o->color(32);
    
    teuben's avatar
    teuben committed
              o->labelsize(12);
    
              o->labelcolor(3);
    
    teuben's avatar
    teuben committed
              o->callback((Fl_Callback*)pp_rdata_cb, (void*)(&ppui.st));
            }
    
            { Fl_Button* o = ppui.play = new Fl_Button(57, 122, 40, 20, "Play");
    
    teuben's avatar
    teuben committed
              o->type(1);
    
              o->color(32);
              o->selection_color(58);
    
    teuben's avatar
    teuben committed
              o->labelsize(12);
    
              o->labelcolor(3);
    
    teuben's avatar
    teuben committed
              o->callback((Fl_Callback*)pp_play_cb, (void*)(&ppui.st));
            }
    
            { Fl_Menu_Button* o = playmenu = new Fl_Menu_Button(57, 122, 40, 20, "P&lay Speed (Nf = every Nth frame)");
    
    teuben's avatar
    teuben committed
              o->type(4);
              o->callback((Fl_Callback*)cb_playmenu);
              o->add("play 1|play .5|play .25|play 2|play 5|play 1f|play 2f|play 5f|play 10f");
            }
    
            { Fl_Counter* o = ppui.playframe = new Fl_Counter(122, 122, 80, 20);
    
              o->color(32);
              o->selection_color(1);
              o->labelcolor(3);
    
    teuben's avatar
    teuben committed
              o->minimum(0);
              o->maximum(3000);
              o->step(1);
              o->textsize(11);
              o->callback((Fl_Callback*)pp_playframe_cb, (void*)(&ppui.st));
              o->when(FL_WHEN_RELEASE);
            }
    
            { Fl_Value_Slider* o = ppui.playtime = new Fl_Value_Slider(202, 122, 337, 20);
    
    teuben's avatar
    teuben committed
              o->type(5);
    
              o->color(32);
              o->selection_color(4);
              o->labelcolor(3);
    
    teuben's avatar
    teuben committed
              o->maximum(100);
              o->step(0);
              o->textcolor(3);
              o->callback((Fl_Callback*)pp_playtime_cb, (void*)(&ppui.st));
              Fl_Group::current()->resizable(o);
            }
    
            { Fl_Button* o = editbtn = new Fl_Button(97, 121, 25, 20, "att");
    
              o->color(33);
              o->selection_color(33);
    
    slevy's avatar
    slevy committed
              o->labelsize(12);
    
              o->labelcolor(3);
    
    slevy's avatar
    slevy committed
            }
    
    teuben's avatar
    teuben committed
            o->end();
          }
    
          { Fl_Tile* o = ppui.maintile = new Fl_Tile(0, 142, 540, 327);
    
            o->color(139);
    
            { Hist* o = ppui.cmdhist = new Hist(0, 142, 540, 75);
    
    teuben's avatar
    teuben committed
              o->box(FL_DOWN_BOX);
    
              o->color(96);
              o->selection_color(49);
    
              o->labeltype(FL_NORMAL_LABEL);
              o->labelfont(0);
              o->labelsize(14);
    
              o->labelcolor(56);
    
              o->align(FL_ALIGN_TOP);
              o->when(FL_WHEN_RELEASE);
              { HistBrowser* o = new HistBrowser(0, 142, 540, 50);
    
    teuben's avatar
    teuben committed
                o->type(3);
    
                o->box(FL_NO_BOX);
    
                o->color(0);
                o->selection_color(9);
    
                o->labeltype(FL_NORMAL_LABEL);
                o->labelfont(0);
    
    teuben's avatar
    teuben committed
                o->labelsize(12);
    
                o->labelcolor(56);
    
    teuben's avatar
    teuben committed
                o->textsize(12);
                o->textcolor(3);
    
                o->align(FL_ALIGN_BOTTOM);
                o->when(FL_WHEN_RELEASE_ALWAYS);
    
    teuben's avatar
    teuben committed
                Fl_Group::current()->resizable(o);
                o->scrollbar.align( FL_ALIGN_LEFT );
                o->scrollbar_width( 8 );
                o->hist(ppui.cmdhist);
              }
    
              { Fl_Group* o = new Fl_Group(0, 192, 540, 25);
                { Fl_Box* o = new Fl_Box(0, 192, 30, 25, "Cmd:");
    
    teuben's avatar
    teuben committed
                  o->labelsize(12);
    
                  o->labelcolor(3);
    
    teuben's avatar
    teuben committed
                }
    
                { HistInput* o = ppui.cmd = new HistInput(30, 192, 510, 25);
                  o->box(FL_DOWN_BOX);
    
                  o->color(38);
                  o->selection_color(9);
    
                  o->labeltype(FL_NORMAL_LABEL);
    
    teuben's avatar
    teuben committed
                  o->labelfont(1);
                  o->labelsize(10);
    
                  o->labelcolor(3);
    
    teuben's avatar
    teuben committed
                  o->textcolor(55);
                  o->callback((Fl_Callback*)pp_cmd_cb);
    
                  o->align(FL_ALIGN_LEFT);
    
    teuben's avatar
    teuben committed
                  o->when(FL_WHEN_ENTER_KEY_ALWAYS);
                  Fl_Group::current()->resizable(o);
                  o->cursor_color( o->textcolor() );
                  o->hist( ppui.cmdhist );
                }
                o->end();
              }
              o->end();
            }
    
            { Fl_Box* o = new Fl_Box(0, 202, 540, 267, "tilelimiter");
    
    teuben's avatar
    teuben committed
              o->hide();
              Fl_Group::current()->resizable(o);
            }
    
            { Fl_Group* o = new Fl_Group(0, 217, 540, 252);
    
    teuben's avatar
    teuben committed
              o->box(FL_DOWN_BOX);
    
              { Fl_Gview* o = ppui.view = new Fl_Gview(0, 217, 540, 249);
                o->box(FL_NO_BOX);
    
                o->color(49);
                o->selection_color(49);
    
                o->labeltype(FL_NORMAL_LABEL);
                o->labelfont(0);
                o->labelsize(14);
    
                o->labelcolor(56);
    
                o->align(FL_ALIGN_CENTER);
                o->when(FL_WHEN_RELEASE);
    
                o->cursor(FL_CURSOR_CROSS);
              }
    
    teuben's avatar
    teuben committed
              o->end();
            }
            o->end();
            Fl_Group::current()->resizable(o);
          }
          o->spacing(0);
          o->end();
          Fl_Group::current()->resizable(o);
        }
    
        o->size_range(101,130);
    
    teuben's avatar
    teuben committed
        o->end();
      }
    
      { Fl_Double_Window* o = ppui.hrdiagwin = new Fl_Double_Window(280, 230);
    
        w = o;
        { Fl_Plot* o = ppui.hrdiag = new Fl_Plot(0, 0, 284, 234);
          o->box(FL_DOWN_BOX);
    
          o->color(0);
          o->selection_color(49);
    
          o->labeltype(FL_NORMAL_LABEL);
          o->labelfont(0);
          o->labelsize(14);
    
          o->labelcolor(56);
    
          o->align(FL_ALIGN_TOP);
          o->when(FL_WHEN_RELEASE);
    
          o->cursor(FL_CURSOR_CROSS);
    
          Fl_Group::current()->resizable(o);
    
    teuben's avatar
    teuben committed
      return w;
    }