//==== Create & Init Gui ToggleButton ====// void GroupLayout::AddButton( CheckButtonBit& cbutton, const char* label, int value ) { assert( m_Group && m_Screen ); //==== Add Check Button ====// int bw = FitWidth( 0, m_ButtonWidth ); Fl_Light_Button* flbutton = new Fl_Light_Button( m_X, m_Y, bw, m_StdHeight, label ); flbutton->labelfont( 1 ); flbutton->labelsize( 12 ); flbutton->align( Fl_Align( 132 | FL_ALIGN_INSIDE ) ); flbutton->labelcolor( FL_DARK_BLUE ); flbutton->copy_label( label ); m_Group->add( flbutton ); AddX( bw ); AddY( m_StdHeight ); NewLineX(); cbutton.Init( m_Screen, flbutton, value ); }
Fl_Window * make_window() { Fl_Window * w; { Fl_Window * o = main_window = new Fl_Window(741, 622, "ASF/AMC Motion Capture Player"); w = o; { Fl_Group * o = new Fl_Group(10, 485, 615, 140); { Fl_Button * o = loadSkeleton_button = new Fl_Button(10, 495, 120, 40, "Load Skeleton");//*** o->callback((Fl_Callback *)load_callback); } { Fl_Button * o = loadMotion_button = new Fl_Button(140, 495, 120, 40, "Load Motion"); //*** o->callback((Fl_Callback *)load_callback); } // "Reload motion" always reload the last skeleton loaded { Fl_Button * o = reloadMotion_button = new Fl_Button(270, 495, 120, 40, "Reload Motion");//*** o->callback((Fl_Callback *)reload_callback); } { Fl_Button * o = resetScene_button = new Fl_Button(400, 495, 120, 40, "Reset Scene"); o->callback((Fl_Callback *)resetScene_callback); } { Fl_Light_Button* o = record_button = new Fl_Light_Button(380, 575, 40, 25, "R"); o->callback((Fl_Callback *)record_callback, (void*)(0)); } { Fl_Button * o = screenShot_button = new Fl_Button(280, 575, 90, 25, "ScreenShot"); o->callback((Fl_Callback *)saveScreenToFile_callback); } { Fl_Button * o = pause_button = new Fl_Button(430, 575, 35, 25, "@||"); o->labeltype(FL_SYMBOL_LABEL); o->labelsize(12); o->callback((Fl_Callback *)play_callback); } { Fl_Button* o = rewind_button = new Fl_Button(465, 575, 35, 25, "@|<"); o->labeltype(FL_SYMBOL_LABEL); o->labelsize(12); o->callback((Fl_Callback *)play_callback); } { Fl_Button* o = play_button = new Fl_Button(500, 575, 35, 25, "@>"); o->labeltype(FL_SYMBOL_LABEL); o->labelsize(12); o->callback((Fl_Callback *)play_callback, (void*)(0)); } { Fl_Button* o = minusOne_button = new Fl_Button(535, 575, 35, 25, "-1"); o->labeltype(FL_SYMBOL_LABEL); o->labelsize(12); o->callback((Fl_Callback *)play_callback, (void*)(0)); } { Fl_Button* o = plusOne_button = new Fl_Button(570, 575, 35, 25, "+1"); o->labeltype(FL_SYMBOL_LABEL); o->labelsize(12); o->callback((Fl_Callback *)play_callback, (void*)(0)); } { Fl_Button* o = repeat_button = new Fl_Button(605, 575, 35, 25, "@<->"); o->labeltype(FL_SYMBOL_LABEL); o->labelsize(12); o->callback((Fl_Callback *)play_callback, (void*)(0)); } o->end(); } // FL_group { Player_Gl_Window * o = glwindow = new Player_Gl_Window(5, 5, 640, 480, "label"); o->box(FL_DOWN_FRAME); o->labeltype(FL_NO_LABEL); } { Fl_Value_Slider* o = frame_slider = new Fl_Value_Slider(10, 545, 630, 20); // slider o->type(5); o->labelsize(18); o->minimum(1); o->maximum(60000); o->step(1); o->callback((Fl_Callback*)fslider_callback, (void*)(0)); o->align(197); } { Fl_Value_Input* o = speedUp = new Fl_Value_Input(65, 575, 40, 25, "Speed"); o->minimum(0); o->value(1); o->callback((Fl_Callback*)playSpeed_callback); } { Fl_Value_Input * o = sub_input = new Fl_Value_Input(690, 55, 45, 25, "Skeleton ID:"); o->callback((Fl_Callback*)skeletonID_callback); sub_input->align(Fl_Align(FL_ALIGN_TOP_RIGHT)); } { Fl_Value_Input * o = tx_input = new Fl_Value_Input(690, 95, 45, 25, "tx:"); o->callback((Fl_Callback*)tx_callback); } { Fl_Value_Input * o = ty_input = new Fl_Value_Input(690, 122, 45, 25, "ty:"); o->callback((Fl_Callback*)ty_callback); } { Fl_Value_Input * o = tz_input = new Fl_Value_Input(690, 152, 45, 25, "tz:"); o->callback((Fl_Callback*)tz_callback); } { Fl_Value_Input * o = rx_input = new Fl_Value_Input(690, 190, 45, 25, "rx:"); o->callback((Fl_Callback*)rx_callback); } { Fl_Value_Input * o = ry_input = new Fl_Value_Input(690, 217, 45, 25, "ry:"); o->callback((Fl_Callback*)ry_callback); } { Fl_Value_Input * o = rz_input = new Fl_Value_Input(690, 247, 45, 25, "rz:"); o->callback((Fl_Callback*)rz_callback); } { Fl_Value_Input * o = joint_idx = new Fl_Value_Input(195, 575, 45, 25, "Show Joint"); o->maximum(30); o->step(1); o->value(-1); o->callback((Fl_Callback*)spotJoint_callback); } { Fl_Light_Button * o = groundPlane_button = new Fl_Light_Button(650, 315, 85, 25, "Ground"); o->callback((Fl_Callback*)renderGroundPlane_callback, (void*)(0)); o->align(FL_ALIGN_INSIDE); } { Fl_Light_Button * o = fog_button = new Fl_Light_Button(650, 345, 85, 25, "Fog"); o->callback((Fl_Callback*)useFog_callback, (void*)(0)); o->align(FL_ALIGN_INSIDE); } { Fl_Light_Button * o = worldAxes_button = new Fl_Light_Button(650, 375, 85, 25, "Axes"); o->callback((Fl_Callback*)renderWorldAxes_callback, (void*)(0)); o->align(FL_ALIGN_INSIDE); } { Fl_Button * o = aboutPlayer_button = new Fl_Button(650, 420, 85, 25, "About"); o->callback((Fl_Callback *)aboutPlayer_callback); o->align(FL_ALIGN_INSIDE); } o->end(); } return w; }