static void g3d_create_retract_strat_frame(void){ g3d_create_labelframe(&RETRACT_STRAT_FRAME,FL_ENGRAVED_FRAME,-1,-1,"Retract Strat",(void**)&NODE_FRAME,0); RETRACT_STRAT_GROUP = fl_bgn_group(); //Glob Search g3d_create_checkbutton(&GLOBAL_SEARCH_CHECKB,FL_RADIO_BUTTON,-1,20,"Glob search",(void**)&RETRACT_STRAT_FRAME,0); fl_set_object_color(GLOBAL_SEARCH_CHECKB,FL_MCOL,FL_GREEN); fl_set_call_back(GLOBAL_SEARCH_CHECKB,CB_RetractPlan_strategy,(long)GLOBAL_SEARCH_CHECKB); //Forw Search g3d_create_checkbutton(&FORW_SEARCH_CHECKB,FL_RADIO_BUTTON,-1,20,"Forw search",(void**)&RETRACT_STRAT_FRAME,0); fl_set_object_color(FORW_SEARCH_CHECKB,FL_MCOL,FL_GREEN); fl_set_call_back(FORW_SEARCH_CHECKB,CB_RetractPlan_strategy,(long)FORW_SEARCH_CHECKB); //Linear Search g3d_create_checkbutton(&LINEAR_SEARCH_CHECKB,FL_RADIO_BUTTON,-1,20,"Linear search",(void**)&RETRACT_STRAT_FRAME,0); fl_set_object_color(LINEAR_SEARCH_CHECKB,FL_MCOL,FL_GREEN); fl_set_call_back(LINEAR_SEARCH_CHECKB,CB_RetractPlan_strategy,(long)LINEAR_RETRACT_SEARCH); //RETRACT_STRAT_GROUP = fl_end_group(); switch (p3d_get_retract_search_type()){ case (ALL_RETRACT_SEARCH):{ fl_set_button(GLOBAL_SEARCH_CHECKB,1); break; } case (FORWARD_RETRACT_SEARCH):{ fl_set_button(FORW_SEARCH_CHECKB,1); break; } case (LINEAR_RETRACT_SEARCH):{ fl_set_button(LINEAR_SEARCH_CHECKB,1); break; } } }
void g3d_create_steering_form(void) {int i; double s; s = P3D_NB_LOCAL_PLANNER*20.0 + 20; BUTTON_TAB_OBJ = (FL_OBJECT **) malloc(P3D_NB_LOCAL_PLANNER*sizeof(FL_OBJECT *)); STEERING_FORM = fl_bgn_form(FL_UP_BOX,200.0,s+30); obj1 = fl_add_frame(FL_ENGRAVED_FRAME,10,15,180,s,""); obj2 = fl_add_box(FL_FLAT_BOX,55,10,90,10,"Steering methods"); GROUP = fl_bgn_group(); for(i=0;i<P3D_NB_LOCAL_PLANNER;i++){ BUTTON_TAB_OBJ[i] = fl_add_checkbutton(FL_RADIO_BUTTON,45,25+i*20.0,55,25,p3d_local_getname_planner((p3d_localpath_type) i)); fl_set_object_color(BUTTON_TAB_OBJ[i],FL_MCOL,FL_GREEN); fl_set_call_back(BUTTON_TAB_OBJ[i],CB_button_tab_obj,i); } fl_set_button(BUTTON_TAB_OBJ[p3d_local_get_planner()],1); //GROUP = fl_end_group(); fl_end_form(); }
void create_form_HelpForm(void) { FL_OBJECT *obj; if (HelpForm) return; HelpForm = fl_bgn_form(FL_NO_BOX,530,340); obj = fl_add_box(FL_UP_BOX,0,0,530,340,""); fl_set_object_lsize(obj,FL_NORMAL_SIZE); HelpBrowser = obj = fl_add_browser(FL_NORMAL_BROWSER,10,35,510,275,""); fl_set_object_lsize(obj,FL_NORMAL_SIZE); obj = fl_add_text(FL_NORMAL_TEXT,10,10,435,20,"Not Knot: The Software Interactive Hyperbolic Flythrough"); fl_set_object_boxtype(obj,FL_NO_BOX); fl_set_object_color(obj,FL_COL1,FL_COL1); fl_set_object_lcolor(obj,FL_BLUE); fl_set_object_lsize(obj,FL_NORMAL_SIZE); fl_set_object_lalign(obj,FL_ALIGN_LEFT|FL_ALIGN_INSIDE); fl_set_object_lstyle(obj,FL_BOLD_STYLE); Done = obj = fl_add_button(FL_NORMAL_BUTTON,455,10,60,20,"Done"); fl_set_object_lsize(obj,FL_NORMAL_SIZE); fl_set_object_callback(obj,DoneProc,0); DiagramGroup = fl_bgn_group(); EucDiag = obj = fl_add_button(FL_RADIO_BUTTON,95,310,140,25,"Euclidean Diagram"); fl_set_object_lsize(obj,FL_NORMAL_SIZE); fl_set_object_callback(obj,DiagProc,EUC); HypDiag = obj = fl_add_button(FL_RADIO_BUTTON,305,310,150,25,"Hyperbolic Diagram"); fl_set_object_lsize(obj,FL_NORMAL_SIZE); fl_set_object_callback(obj,DiagProc,HYP); fl_end_group(); fl_end_form(); }
static PyObject * form_bgn_group(formobject *f, PyObject *args) { FL_OBJECT *obj; fl_addto_form(f-> ob_form); obj = fl_bgn_group(); fl_end_form(); if (obj == NULL) { PyErr_NoMemory(); return NULL; } return newgenericobject (obj, (PyMethodDef *) NULL); }
/* -------------------- MAIN GROUP --------------------- */ static void g3d_create_grasp_planning_group(void) { int x, y, dy, w, h, shift; FL_OBJECT *frame= NULL, *box= NULL; frame = fl_add_labelframe(FL_ENGRAVED_FRAME, 18, 235, 185, 330, "Interface"); box = fl_add_box(FL_ENGRAVED_FRAME, 23, 250, 175, 310, ""); fl_set_object_color(box, FL_GREEN, FL_COL1); MOTIONGROUP = fl_bgn_group(); x= 30; y= 20; w= 160; h= 40; dy= h + 10; shift= 40; BT_1_OBJ = fl_add_button(FL_NORMAL_BUTTON, x, y, w, h, "Test"); BT_2_OBJ = fl_add_button(FL_NORMAL_BUTTON, x, y + dy, w, h, "SAHandRight"); BT_3_OBJ = fl_add_button(FL_NORMAL_BUTTON, x, y + 2*dy, w, h, "Double Grasp"); BT_4_OBJ = fl_add_button(FL_NORMAL_BUTTON, x, y + 3*dy, w, h, "Display grasps"); BT_5_OBJ = fl_add_button(FL_NORMAL_BUTTON, x, y + shift + 4*dy, w, h, "Selected Object: none"); BT_6_OBJ = fl_add_button(FL_NORMAL_BUTTON, x, y + shift + 5*dy, w, h, "Selected Hand Robot: none"); BT_7_OBJ = fl_add_button(FL_NORMAL_BUTTON, x, y + shift + 6*dy, w, h, "Browse Grasps"); BT_8_OBJ = fl_add_button(FL_NORMAL_BUTTON, x, y + shift + 7*dy, w, h, "Delete Grasp"); BT_9_OBJ = fl_add_button(FL_NORMAL_BUTTON, x, y + shift + 8*dy, w, h, "Add Grasp"); BT_10_OBJ = fl_add_button(FL_NORMAL_BUTTON, x, y + shift + 9*dy, w, h, "Save Grasps"); fl_set_call_back(BT_1_OBJ, CB_test, 0); fl_set_call_back(BT_2_OBJ, CB_SAHandRight, 0); fl_set_call_back(BT_3_OBJ, CB_double_grasp, 0); fl_set_call_back(BT_4_OBJ, CB_display_grasps, 0); fl_set_object_color(BT_4_OBJ,FL_MCOL,FL_GREEN); fl_set_call_back(BT_5_OBJ, CB_select_object, 0); fl_set_call_back(BT_6_OBJ, CB_select_hand_robot, 0); fl_set_call_back(BT_7_OBJ, CB_browse_grasps, 0); fl_set_call_back(BT_8_OBJ, CB_delete_grasp, 0); fl_set_call_back(BT_9_OBJ, CB_add_grasp, 0); fl_set_call_back(BT_10_OBJ, CB_save_grasps, 0); fl_end_group(); }
void create_form_MainForm(void) { FL_OBJECT *obj; if (MainForm) return; MainForm = fl_bgn_form(FL_NO_BOX,360,370); obj = fl_add_box(FL_UP_BOX,0,0,360,370,""); fl_set_object_lsize(obj,FL_NORMAL_SIZE); obj = fl_add_button(FL_RETURN_BUTTON,20,310,160,40,"Make Sweep"); fl_set_object_lsize(obj,FL_NORMAL_SIZE); fl_set_object_lstyle(obj,FL_BOLD_STYLE); fl_set_object_callback(obj,GoButtonProc,0); obj = fl_add_button(FL_NORMAL_BUTTON,180,310,160,40,"Quit"); fl_set_object_lsize(obj,FL_NORMAL_SIZE); fl_set_object_lstyle(obj,FL_BOLD_STYLE); fl_set_object_callback(obj,QuitButtonProc,0); TransGroup = fl_bgn_group(); obj = fl_add_box(FL_ROUNDED_BOX,20,70,320,230,""); fl_set_object_lsize(obj,FL_NORMAL_SIZE); obj = fl_add_text(FL_NORMAL_TEXT,20,100,130,30,"Length of sweep:"); fl_set_object_boxtype(obj,FL_NO_BOX); fl_set_object_color(obj,FL_COL1,FL_COL1); fl_set_object_lsize(obj,FL_NORMAL_SIZE); fl_set_object_lalign(obj,FL_ALIGN_LEFT|FL_ALIGN_INSIDE); fl_set_object_lstyle(obj,FL_BOLD_STYLE); obj = fl_add_text(FL_NORMAL_TEXT,20,200,160,30,"Direction of sweep:"); fl_set_object_boxtype(obj,FL_NO_BOX); fl_set_object_color(obj,FL_COL1,FL_COL1); fl_set_object_lsize(obj,FL_NORMAL_SIZE); fl_set_object_lalign(obj,FL_ALIGN_LEFT|FL_ALIGN_INSIDE); fl_set_object_lstyle(obj,FL_BOLD_STYLE); Translength = obj = fl_add_input(FL_NORMAL_INPUT,120,130,50,30,"Units"); fl_set_object_color(obj,FL_LEFT_BCOL,FL_LEFT_BCOL); fl_set_object_lsize(obj,FL_NORMAL_SIZE); fl_set_object_lalign(obj,FL_ALIGN_RIGHT); Transxdir = obj = fl_add_input(FL_NORMAL_INPUT,120,230,50,30,"x:"); fl_set_object_color(obj,FL_LEFT_BCOL,FL_LEFT_BCOL); fl_set_object_lsize(obj,FL_NORMAL_SIZE); Transydir = obj = fl_add_input(FL_NORMAL_INPUT,200,230,50,30,"y:"); fl_set_object_color(obj,FL_LEFT_BCOL,FL_LEFT_BCOL); fl_set_object_lsize(obj,FL_NORMAL_SIZE); Transzdir = obj = fl_add_input(FL_NORMAL_INPUT,280,230,50,30,"z:"); fl_set_object_color(obj,FL_LEFT_BCOL,FL_LEFT_BCOL); fl_set_object_lsize(obj,FL_NORMAL_SIZE); fl_end_group(); TypeGroup = fl_bgn_group(); RotSweep = obj = fl_add_button(FL_RADIO_BUTTON,180,20,160,40,"Rotational Sweep"); fl_set_object_lsize(obj,FL_NORMAL_SIZE); fl_set_object_lstyle(obj,FL_BOLD_STYLE); fl_set_object_callback(obj,RotSweepProc,0); TransSweep = obj = fl_add_button(FL_RADIO_BUTTON,20,20,160,40,"Translational Sweep"); fl_set_object_lsize(obj,FL_NORMAL_SIZE); fl_set_object_lstyle(obj,FL_BOLD_STYLE); fl_set_object_callback(obj,TransSweepProc,0); fl_end_group(); RotGroup = fl_bgn_group(); obj = fl_add_box(FL_ROUNDED_BOX,20,70,320,230,""); fl_set_object_lsize(obj,FL_NORMAL_SIZE); obj = fl_add_text(FL_NORMAL_TEXT,20,80,90,30,"Arc length:"); fl_set_object_boxtype(obj,FL_NO_BOX); fl_set_object_color(obj,FL_COL1,FL_COL1); fl_set_object_lsize(obj,FL_NORMAL_SIZE); fl_set_object_lalign(obj,FL_ALIGN_LEFT|FL_ALIGN_INSIDE); fl_set_object_lstyle(obj,FL_BOLD_STYLE); Rotlength = obj = fl_add_input(FL_NORMAL_INPUT,120,80,50,30,""); fl_set_object_color(obj,FL_LEFT_BCOL,FL_LEFT_BCOL); fl_set_object_lsize(obj,FL_NORMAL_SIZE); fl_set_object_lalign(obj,FL_ALIGN_RIGHT); DegButton = obj = fl_add_button(FL_RADIO_BUTTON,190,80,70,30,"Degrees"); fl_set_object_lsize(obj,FL_NORMAL_SIZE); RadButton = obj = fl_add_button(FL_RADIO_BUTTON,260,80,70,30,"Radians"); fl_set_object_lsize(obj,FL_NORMAL_SIZE); obj = fl_add_text(FL_NORMAL_TEXT,20,120,90,30,"End of axis:"); fl_set_object_boxtype(obj,FL_NO_BOX); fl_set_object_color(obj,FL_COL1,FL_COL1); fl_set_object_lsize(obj,FL_NORMAL_SIZE); fl_set_object_lalign(obj,FL_ALIGN_LEFT|FL_ALIGN_INSIDE); fl_set_object_lstyle(obj,FL_BOLD_STYLE); Rotendz = obj = fl_add_input(FL_NORMAL_INPUT,280,140,50,30,"z:"); fl_set_object_color(obj,FL_LEFT_BCOL,FL_LEFT_BCOL); fl_set_object_lsize(obj,FL_NORMAL_SIZE); Rotendy = obj = fl_add_input(FL_NORMAL_INPUT,200,140,50,30,"y:"); fl_set_object_color(obj,FL_LEFT_BCOL,FL_LEFT_BCOL); fl_set_object_lsize(obj,FL_NORMAL_SIZE); Rotendx = obj = fl_add_input(FL_NORMAL_INPUT,120,140,50,30,"x:"); fl_set_object_color(obj,FL_LEFT_BCOL,FL_LEFT_BCOL); fl_set_object_lsize(obj,FL_NORMAL_SIZE); obj = fl_add_text(FL_NORMAL_TEXT,20,180,130,30,"Direction of axis:"); fl_set_object_boxtype(obj,FL_NO_BOX); fl_set_object_color(obj,FL_COL1,FL_COL1); fl_set_object_lsize(obj,FL_NORMAL_SIZE); fl_set_object_lalign(obj,FL_ALIGN_LEFT|FL_ALIGN_INSIDE); fl_set_object_lstyle(obj,FL_BOLD_STYLE); Rotdirz = obj = fl_add_input(FL_NORMAL_INPUT,280,210,50,30,"z:"); fl_set_object_color(obj,FL_LEFT_BCOL,FL_LEFT_BCOL); fl_set_object_lsize(obj,FL_NORMAL_SIZE); Rotdiry = obj = fl_add_input(FL_NORMAL_INPUT,200,210,50,30,"y:"); fl_set_object_color(obj,FL_LEFT_BCOL,FL_LEFT_BCOL); fl_set_object_lsize(obj,FL_NORMAL_SIZE); Rotdirx = obj = fl_add_input(FL_NORMAL_INPUT,120,210,50,30,"x:"); fl_set_object_color(obj,FL_LEFT_BCOL,FL_LEFT_BCOL); fl_set_object_lsize(obj,FL_NORMAL_SIZE); obj = fl_add_text(FL_NORMAL_TEXT,20,260,90,30,"Divisions:"); fl_set_object_boxtype(obj,FL_NO_BOX); fl_set_object_color(obj,FL_COL1,FL_COL1); fl_set_object_lsize(obj,FL_NORMAL_SIZE); fl_set_object_lalign(obj,FL_ALIGN_LEFT|FL_ALIGN_INSIDE); fl_set_object_lstyle(obj,FL_BOLD_STYLE); Rotdivisions = obj = fl_add_input(FL_NORMAL_INPUT,120,260,50,30,""); fl_set_object_color(obj,FL_LEFT_BCOL,FL_LEFT_BCOL); fl_set_object_lsize(obj,FL_NORMAL_SIZE); fl_set_object_lalign(obj,FL_ALIGN_RIGHT); fl_end_group(); fl_end_form(); }
FD_options *create_form_options(void) { FL_OBJECT *obj; FD_options *fdui = (FD_options *) fl_calloc(1, sizeof(*fdui)); fdui->options = fl_bgn_form(FL_NO_BOX, 470, 530); obj = fl_add_box(FL_UP_BOX,0,0,470,530,"Options"); fl_set_object_lsize(obj,FL_NORMAL_SIZE); fl_set_object_lalign(obj,FL_ALIGN_TOP|FL_ALIGN_INSIDE); fl_set_object_lstyle(obj,FL_BOLD_STYLE); obj = fl_add_frame(FL_EMBOSSED_FRAME,20,370,210,130,""); obj = fl_add_frame(FL_EMBOSSED_FRAME,240,370,220,110,""); obj = fl_add_frame(FL_EMBOSSED_FRAME,20,190,440,170,""); fdui->prob_mutation = obj = fl_add_valslider(FL_HOR_BROWSER_SLIDER,35,250,200,20,"Probabiliy of Mutation:"); fl_set_object_lsize(obj,FL_DEFAULT_SIZE); fl_set_object_lalign(obj,FL_ALIGN_TOP); fl_set_slider_precision(obj, 3); fl_set_slider_value(obj, 0.008); fl_set_slider_size(obj, 0.10); fl_set_slider_step(obj, 0.001); fl_set_slider_increment(obj, 0.001, 0.001); fdui->prob_crossover = obj = fl_add_valslider(FL_HOR_BROWSER_SLIDER,250,250,200,20,"Probabiliy of Crossover:"); fl_set_object_lsize(obj,FL_DEFAULT_SIZE); fl_set_object_lalign(obj,FL_ALIGN_TOP); fl_set_slider_precision(obj, 3); fl_set_slider_value(obj, 0.002); fl_set_slider_size(obj, 0.10); fl_set_slider_step(obj, 0.001); fl_set_slider_increment(obj, 0.001, 0.001); fdui->max_pop = obj = fl_add_valslider(FL_HOR_BROWSER_SLIDER,250,210,200,20,"Maximum Population:"); fl_set_object_lsize(obj,FL_DEFAULT_SIZE); fl_set_object_lalign(obj,FL_ALIGN_TOP); fl_set_slider_precision(obj, 0); fl_set_slider_bounds(obj, 0, 10000); fl_set_slider_value(obj, 2000); fl_set_slider_size(obj, 0.10); fl_set_slider_step(obj, 1); fl_set_slider_increment(obj, 10, 10); fdui->maintain_min_pop = obj = fl_add_checkbutton(FL_PUSH_BUTTON,260,380,20,20,"Maintain a Minimum Population?"); fdui->age_factor = obj = fl_add_valslider(FL_HOR_BROWSER_SLIDER,35,290,200,20,"Age Factor:"); fl_set_object_lsize(obj,FL_DEFAULT_SIZE); fl_set_object_lalign(obj,FL_ALIGN_TOP); fl_set_slider_precision(obj, 0); fl_set_slider_bounds(obj, 0, 15); fl_set_slider_value(obj, 9); fl_set_slider_size(obj, 0.10); fl_set_slider_step(obj, 1); fl_set_slider_increment(obj, 1, 1); fdui->carcass_decay_rate = obj = fl_add_valslider(FL_HOR_BROWSER_SLIDER,250,290,200,20,"Carcass Decay Rate:"); fl_set_object_lsize(obj,FL_DEFAULT_SIZE); fl_set_object_lalign(obj,FL_ALIGN_TOP); fl_set_slider_precision(obj, 0); fl_set_slider_bounds(obj, 0, 100000); fl_set_slider_value(obj, 10000); fl_set_slider_size(obj, 0.10); fl_set_slider_step(obj, 100); fl_set_slider_increment(obj, 100, 100); fdui->save_sim = obj = fl_add_checkbutton(FL_PUSH_BUTTON,45,380,20,20,"Save Simulation Every N Steps?"); fdui->save_every = obj = fl_add_valslider(FL_HOR_BROWSER_SLIDER,40,420,170,20,"Save Every N Steps:"); fl_set_object_lsize(obj,FL_DEFAULT_SIZE); fl_set_object_lalign(obj,FL_ALIGN_TOP); fl_set_slider_precision(obj, 0); fl_set_slider_bounds(obj, 0, 100000); fl_set_slider_value(obj, 50000); fl_set_slider_size(obj, 0.12); fl_set_slider_step(obj, 100); fl_set_slider_increment(obj, 100, 100); fdui->file_name = obj = fl_add_input(FL_NORMAL_INPUT,40,465,170,20,"Default File Name:"); fl_set_object_lalign(obj,FL_ALIGN_TOP); fdui->ok = obj = fl_add_button(FL_RETURN_BUTTON,360,490,80,30,"OK"); fdui->initial_params_frame = obj = fl_add_frame(FL_ENGRAVED_FRAME,20,20,440,160,"Initial Parameters"); fl_set_object_lalign(obj,FL_ALIGN_TOP); fl_set_object_lstyle(obj,FL_BOLD_STYLE); fdui->scale = obj = fl_add_valslider(FL_HOR_BROWSER_SLIDER,35,210,200,20,"Display Scale Factor:"); fl_set_object_lsize(obj,FL_DEFAULT_SIZE); fl_set_object_lalign(obj,FL_ALIGN_TOP); fl_set_slider_precision(obj, 0); fl_set_slider_bounds(obj, 1, 32); fl_set_slider_value(obj, 5); fl_set_slider_size(obj, 0.10); fl_set_slider_step(obj, 1); fl_set_slider_increment(obj, 1, 1); fdui->min_pop = obj = fl_add_valslider(FL_HOR_BROWSER_SLIDER,265,420,170,20,"Minimum Population:"); fl_set_object_lsize(obj,FL_DEFAULT_SIZE); fl_set_object_lalign(obj,FL_ALIGN_TOP); fl_set_slider_precision(obj, 0); fl_set_slider_bounds(obj, 0, 100); fl_set_slider_value(obj, 5); fl_set_slider_size(obj, 0.12); fl_set_slider_step(obj, 1); fl_set_slider_increment(obj, 1, 1); fdui->use_survivor = obj = fl_add_checkbutton(FL_PUSH_BUTTON,280,450,20,20,"Use Survivor for Minimum?"); fdui->initial_parameters_group = fl_bgn_group(); fdui->terrain_size = obj = fl_add_choice(FL_NORMAL_CHOICE2,340,135,100,30,"Terrain Size (cells):"); fl_set_choice_entries(obj, fdchoice_terrain_size_0); fl_set_choice(obj,4); fdui->initial_pop = obj = fl_add_valslider(FL_HOR_BROWSER_SLIDER,35,60,200,20,"Initial Population:"); fl_set_object_lsize(obj,FL_DEFAULT_SIZE); fl_set_object_lalign(obj,FL_ALIGN_TOP); fl_set_slider_precision(obj, 0); fl_set_slider_bounds(obj, 0, 2000); fl_set_slider_value(obj, 200); fl_set_slider_size(obj, 0.10); fl_set_slider_step(obj, 1); fl_set_slider_increment(obj, 10, 10); fdui->initial_plant = obj = fl_add_valslider(FL_HOR_BROWSER_SLIDER,35,100,200,20,"Number of Initial Plant Locations:"); fl_set_object_lsize(obj,FL_DEFAULT_SIZE); fl_set_object_lalign(obj,FL_ALIGN_TOP); fl_set_slider_precision(obj, 0); fl_set_slider_bounds(obj, 0, 10000); fl_set_slider_value(obj, 1000); fl_set_slider_size(obj, 0.10); fl_set_slider_step(obj, 100); fl_set_slider_increment(obj, 100, 100); fdui->initial_flesh = obj = fl_add_valslider(FL_HOR_BROWSER_SLIDER,250,100,200,20,"Number of Initial Flesh Locations:"); fl_set_object_lsize(obj,FL_DEFAULT_SIZE); fl_set_object_lalign(obj,FL_ALIGN_TOP); fl_set_slider_precision(obj, 0); fl_set_slider_bounds(obj, 0, 10000); fl_set_slider_value(obj, 1000); fl_set_slider_size(obj, 0.10); fl_set_slider_step(obj, 100); fl_set_slider_increment(obj, 100, 100); fdui->give_head_start = obj = fl_add_checkbutton(FL_PUSH_BUTTON,290,55,20,20,"Give A Head Start?"); fl_set_button(obj, 1); fdui->allow_asex = obj = fl_add_checkbutton(FL_PUSH_BUTTON,70,150,20,20,"Allow Asexual Reproduction?"); fl_set_button(obj, 1); fdui->allow_sex = obj = fl_add_checkbutton(FL_PUSH_BUTTON,70,130,20,20,"Allow Sexual Reproduction?"); fl_set_button(obj, 1); fl_end_group(); fdui->waste_decay_rate = obj = fl_add_valslider(FL_HOR_BROWSER_SLIDER,35,330,200,20,"Waste Decay Rate:"); fl_set_object_lsize(obj,FL_DEFAULT_SIZE); fl_set_object_lalign(obj,FL_ALIGN_TOP); fl_set_slider_precision(obj, 0); fl_set_slider_bounds(obj, 0, 10000); fl_set_slider_value(obj, 20); fl_set_slider_size(obj, 0.10); fl_set_slider_step(obj, 5); fl_set_slider_increment(obj, 10, 10); fdui->poison_decay_rate = obj = fl_add_valslider(FL_HOR_BROWSER_SLIDER,250,330,200,20,"Poison Decay Rate:"); fl_set_object_lsize(obj,FL_DEFAULT_SIZE); fl_set_object_lalign(obj,FL_ALIGN_TOP); fl_set_slider_precision(obj, 0); fl_set_slider_bounds(obj, 0, 10000); fl_set_slider_value(obj, 20); fl_set_slider_size(obj, 0.10); fl_set_slider_step(obj, 5); fl_set_slider_increment(obj, 10, 10); fl_end_form(); fdui->options->fdui = fdui; return fdui; }
void create_form_MainForm(void) { FL_OBJECT *obj; if (MainForm) return; MainForm = fl_bgn_form(FL_NO_BOX,240,340); obj = fl_add_box(FL_UP_BOX,0,0,240,340,""); fl_set_object_lsize(obj,FL_NORMAL_SIZE); DodecScale = obj = fl_add_valslider(FL_HOR_SLIDER,10,313,226,22,"Scale Dodecahedron"); fl_set_object_lsize(obj,FL_NORMAL_SIZE); fl_set_object_lalign(obj,FL_ALIGN_TOP); fl_set_object_lstyle(obj,FL_BOLD_STYLE); fl_set_object_callback(obj,ScaleProc,0); obj = fl_add_text(FL_NORMAL_TEXT,0,25,245,20,"Interactive Hyperbolic Flythrough"); fl_set_object_boxtype(obj,FL_NO_BOX); fl_set_object_color(obj,FL_COL1,FL_COL1); fl_set_object_lcolor(obj,FL_BLUE); fl_set_object_lsize(obj,FL_NORMAL_SIZE); fl_set_object_lalign(obj,FL_ALIGN_CENTER|FL_ALIGN_INSIDE); fl_set_object_lstyle(obj,FL_BOLD_STYLE); obj = fl_add_text(FL_NORMAL_TEXT,0,215,80,30,"LAYERS"); fl_set_object_boxtype(obj,FL_NO_BOX); fl_set_object_color(obj,FL_COL1,FL_COL1); fl_set_object_lsize(obj,FL_NORMAL_SIZE); fl_set_object_lalign(obj,FL_ALIGN_CENTER|FL_ALIGN_INSIDE); fl_set_object_lstyle(obj,FL_BOLD_STYLE); obj = fl_add_text(FL_NORMAL_TEXT,5,140,230,15,"PATH"); fl_set_object_boxtype(obj,FL_NO_BOX); fl_set_object_color(obj,FL_COL1,FL_COL1); fl_set_object_lsize(obj,FL_NORMAL_SIZE); fl_set_object_lalign(obj,FL_ALIGN_CENTER|FL_ALIGN_INSIDE); fl_set_object_lstyle(obj,FL_BOLD_STYLE); Quit = obj = fl_add_button(FL_NORMAL_BUTTON,190,50,40,30,"Quit"); fl_set_object_lsize(obj,FL_NORMAL_SIZE); fl_set_object_callback(obj,QuitProc,0); obj = fl_add_box(FL_SHADOW_BOX,0,285,245,5,""); fl_set_object_color(obj,FL_BLUE,FL_BLUE); fl_set_object_lsize(obj,FL_NORMAL_SIZE); obj = fl_add_box(FL_SHADOW_BOX,0,210,245,5,""); fl_set_object_color(obj,FL_BLUE,FL_BLUE); fl_set_object_lsize(obj,FL_NORMAL_SIZE); Info = obj = fl_add_button(FL_PUSH_BUTTON,10,50,170,30,"What's going on?"); fl_set_object_lsize(obj,FL_NORMAL_SIZE); fl_set_object_callback(obj,InfoProc,0); obj = fl_add_box(FL_SHADOW_BOX,0,130,245,5,""); fl_set_object_color(obj,FL_BLUE,FL_BLUE); fl_set_object_lsize(obj,FL_NORMAL_SIZE); PathGroup = fl_bgn_group(); Direct = obj = fl_add_roundbutton(FL_RADIO_BUTTON,125,150,30,30,"Direct"); fl_set_object_color(obj,FL_WHITE,FL_YELLOW); fl_set_object_lcolor(obj,223); fl_set_object_lsize(obj,FL_NORMAL_SIZE); fl_set_object_lstyle(obj,FL_BOLD_STYLE); fl_set_object_callback(obj,PathProc,DIRECT); Equi = obj = fl_add_roundbutton(FL_RADIO_BUTTON,125,175,30,30,"Equidistant"); fl_set_object_color(obj,FL_WHITE,FL_YELLOW); fl_set_object_lcolor(obj,248); fl_set_object_lsize(obj,FL_NORMAL_SIZE); fl_set_object_lstyle(obj,FL_BOLD_STYLE); fl_set_object_callback(obj,PathProc,EQUI); Quarter = obj = fl_add_roundbutton(FL_RADIO_BUTTON,5,175,30,30,"Quarter Turn"); fl_set_object_color(obj,FL_WHITE,FL_YELLOW); fl_set_object_lcolor(obj,135); fl_set_object_lsize(obj,FL_NORMAL_SIZE); fl_set_object_lstyle(obj,FL_BOLD_STYLE); fl_set_object_callback(obj,PathProc,QUARTER); Loop = obj = fl_add_roundbutton(FL_RADIO_BUTTON,5,150,30,30,"Full Loop"); fl_set_object_color(obj,FL_WHITE,FL_YELLOW); fl_set_object_lcolor(obj,135); fl_set_object_lsize(obj,FL_NORMAL_SIZE); fl_set_object_lstyle(obj,FL_BOLD_STYLE); fl_set_object_callback(obj,PathProc,LOOP); fl_end_group(); obj = fl_add_text(FL_NORMAL_TEXT,0,255,60,30,"STEPS"); fl_set_object_boxtype(obj,FL_NO_BOX); fl_set_object_color(obj,FL_COL1,FL_COL1); fl_set_object_lsize(obj,FL_NORMAL_SIZE); fl_set_object_lalign(obj,FL_ALIGN_CENTER|FL_ALIGN_INSIDE); fl_set_object_lstyle(obj,FL_BOLD_STYLE); obj = fl_add_box(FL_SHADOW_BOX,0,248,245,5,""); fl_set_object_color(obj,FL_BLUE,FL_BLUE); fl_set_object_lsize(obj,FL_NORMAL_SIZE); GoGroup = fl_bgn_group(); Go = obj = fl_add_roundbutton(FL_RADIO_BUTTON,20,88,55,45,"GO"); fl_set_object_color(obj,FL_WHITE,FL_GREEN); fl_set_object_lcolor(obj,FL_GREEN); fl_set_object_lsize(obj,FL_LARGE_SIZE); fl_set_object_lstyle(obj,FL_BOLD_STYLE); fl_set_object_callback(obj,GoProc,1); Stop = obj = fl_add_roundbutton(FL_RADIO_BUTTON,110,88,55,45,"STOP"); fl_set_object_color(obj,FL_WHITE,FL_RED); fl_set_object_lcolor(obj,FL_RED); fl_set_object_lsize(obj,FL_LARGE_SIZE); fl_set_object_lstyle(obj,FL_BOLD_STYLE); fl_set_object_callback(obj,GoProc,0); fl_end_group(); TileGroup = fl_bgn_group(); Level3 = obj = fl_add_roundbutton(FL_RADIO_BUTTON,195,215,30,30,"3"); fl_set_object_color(obj,FL_WHITE,FL_YELLOW); fl_set_object_lsize(obj,FL_NORMAL_SIZE); fl_set_object_callback(obj,TilingProc,3); Level2 = obj = fl_add_roundbutton(FL_RADIO_BUTTON,155,215,30,30,"2"); fl_set_object_color(obj,FL_WHITE,FL_YELLOW); fl_set_object_lsize(obj,FL_NORMAL_SIZE); fl_set_object_callback(obj,TilingProc,2); Level1 = obj = fl_add_roundbutton(FL_RADIO_BUTTON,115,215,30,30,"1"); fl_set_object_color(obj,FL_WHITE,FL_YELLOW); fl_set_object_lsize(obj,FL_NORMAL_SIZE); fl_set_object_callback(obj,TilingProc,1); Level0 = obj = fl_add_roundbutton(FL_RADIO_BUTTON,75,215,30,30,"0"); fl_set_object_color(obj,FL_WHITE,FL_YELLOW); fl_set_object_lsize(obj,FL_NORMAL_SIZE); fl_set_object_callback(obj,TilingProc,0); fl_end_group(); SpeedGroup = fl_bgn_group(); Speed2 = obj = fl_add_roundbutton(FL_RADIO_BUTTON,100,255,30,30,"20"); fl_set_object_color(obj,FL_WHITE,FL_YELLOW); fl_set_object_lsize(obj,FL_NORMAL_SIZE); fl_set_object_callback(obj,SpeedProc,2); Speed3 = obj = fl_add_roundbutton(FL_RADIO_BUTTON,145,255,30,30,"40"); fl_set_object_color(obj,FL_WHITE,FL_YELLOW); fl_set_object_lsize(obj,FL_NORMAL_SIZE); fl_set_object_callback(obj,SpeedProc,3); Speed4 = obj = fl_add_roundbutton(FL_RADIO_BUTTON,190,255,30,30,"80"); fl_set_object_color(obj,FL_WHITE,FL_YELLOW); fl_set_object_lsize(obj,FL_NORMAL_SIZE); fl_set_object_callback(obj,SpeedProc,4); Speed1 = obj = fl_add_roundbutton(FL_RADIO_BUTTON,55,255,30,30,"10"); fl_set_object_color(obj,FL_WHITE,FL_YELLOW); fl_set_object_lsize(obj,FL_NORMAL_SIZE); fl_set_object_callback(obj,SpeedProc,1); fl_end_group(); obj = fl_add_text(FL_NORMAL_TEXT,5,5,240,20,"Not Knot: The Software"); fl_set_object_boxtype(obj,FL_NO_BOX); fl_set_object_color(obj,FL_COL1,FL_COL1); fl_set_object_lcolor(obj,FL_BLUE); fl_set_object_lsize(obj,FL_NORMAL_SIZE); fl_set_object_lalign(obj,FL_ALIGN_CENTER|FL_ALIGN_INSIDE); fl_set_object_lstyle(obj,FL_BOLD_STYLE); obj = fl_add_box(FL_SHADOW_BOX,0,84,245,5,""); fl_set_object_color(obj,FL_BLUE,FL_BLUE); fl_set_object_lsize(obj,FL_NORMAL_SIZE); fl_end_form(); }
FD_mpcview *create_form_mpcview(void) { FL_OBJECT *obj; FD_mpcview *fdui = (FD_mpcview *) fl_calloc(1, sizeof(*fdui)); fdui->mpcview = fl_bgn_form(FL_NO_BOX, 425, 535); fdui->formmpcview = obj = fl_add_box(FL_FLAT_BOX,0,0,425,535,""); fdui->scanchart = obj = fl_add_chart(FL_LINE_CHART,15,40,280,60,""); fl_set_object_boxtype(obj,FL_UP_BOX); fdui->scan = obj = fl_add_xyplot(FL_FILL_XYPLOT,5,35,300,140,""); fl_set_object_boxtype(obj,FL_UP_BOX); obj = fl_add_frame(FL_ENGRAVED_FRAME,5,345,415,155,""); obj = fl_add_frame(FL_ENGRAVED_FRAME,245,355,165,80,""); obj = fl_add_frame(FL_ENGRAVED_FRAME,15,355,225,135,""); fdui->button_err_0 = obj = fl_add_checkbutton(FL_PUSH_BUTTON,20,365,90,20,"Exceptional EP"); fl_set_object_lsize(obj,FL_TINY_SIZE); obj = fl_add_frame(FL_ENGRAVED_FRAME,5,180,415,160,""); fdui->browser = obj = fl_add_browser(FL_HOLD_BROWSER,10,200,325,135,""); fl_set_object_color(obj,FL_TOP_BCOL,FL_YELLOW); fdui->menubar = obj = fl_add_box(FL_UP_BOX,0,0,425,30,""); fdui->clock = obj = fl_add_clock(FL_ANALOG_CLOCK,345,35,75,65,""); fdui->logo = obj = fl_add_pixmap(FL_NORMAL_PIXMAP,345,105,70,70,""); fdui->all_objects = fl_bgn_group(); fdui->menufile = obj = fl_add_menu(FL_PULLDOWN_MENU,5,5,40,20,"File"); fl_set_object_shortcut(obj,"#F",1); fl_set_object_boxtype(obj,FL_FLAT_BOX); fl_set_object_gravity(obj, FL_North, FL_NoGravity); obj = fl_add_text(FL_NORMAL_TEXT,10,185,325,15,"This software is part of the MPC Parallel Machine project"); fl_set_object_lalign(obj,FL_ALIGN_LEFT|FL_ALIGN_INSIDE); fdui->average = obj = fl_add_valslider(FL_VERT_FILL_SLIDER,310,35,30,140,""); fl_set_object_color(obj,FL_COL1,FL_GREEN); fl_set_slider_return(obj, FL_RETURN_CHANGED); obj = fl_add_text(FL_NORMAL_TEXT,5,505,415,25,"Fast HSL Control Panel -- (c) LIP6/UPMC 1997-1998"); fl_set_object_boxtype(obj,FL_DOWN_BOX); fl_set_object_lalign(obj,FL_ALIGN_LEFT|FL_ALIGN_INSIDE); fl_end_group(); fdui->button_0 = obj = fl_add_lightbutton(FL_PUSH_BUTTON,340,200,35,30,"0"); fl_set_object_color(obj,FL_RED,FL_GREEN); fdui->button_2 = obj = fl_add_lightbutton(FL_PUSH_BUTTON,340,270,35,30,"2"); fl_set_object_color(obj,FL_RED,FL_GREEN); fdui->button_1 = obj = fl_add_lightbutton(FL_PUSH_BUTTON,340,235,35,30,"1"); fl_set_object_color(obj,FL_RED,FL_GREEN); fdui->button_3 = obj = fl_add_lightbutton(FL_PUSH_BUTTON,340,305,35,30,"3"); fl_set_object_color(obj,FL_RED,FL_GREEN); obj = fl_add_text(FL_NORMAL_TEXT,265,5,100,20,"MPC-View"); fl_set_object_lcol(obj,FL_DARKTOMATO); fl_set_object_lsize(obj,FL_LARGE_SIZE); fl_set_object_lalign(obj,FL_ALIGN_LEFT|FL_ALIGN_INSIDE); fl_set_object_lstyle(obj,FL_TIMESITALIC_STYLE+FL_EMBOSSED_STYLE); fdui->button_4 = obj = fl_add_lightbutton(FL_PUSH_BUTTON,380,200,35,30,"4"); fl_set_object_color(obj,FL_RED,FL_GREEN); fdui->button_5 = obj = fl_add_lightbutton(FL_PUSH_BUTTON,380,235,35,30,"5"); fl_set_object_color(obj,FL_RED,FL_GREEN); fdui->button_6 = obj = fl_add_lightbutton(FL_PUSH_BUTTON,380,270,35,30,"6"); fl_set_object_color(obj,FL_RED,FL_GREEN); fdui->button_7 = obj = fl_add_lightbutton(FL_PUSH_BUTTON,380,305,35,30,"7"); fl_set_object_color(obj,FL_RED,FL_GREEN); obj = fl_add_text(FL_NORMAL_TEXT,30,350,40,15,"Errors"); fl_set_object_lalign(obj,FL_ALIGN_LEFT|FL_ALIGN_INSIDE); fdui->button_err_1 = obj = fl_add_checkbutton(FL_PUSH_BUTTON,20,385,75,20,"CRC Header"); fl_set_object_lsize(obj,FL_TINY_SIZE); fdui->button_err_2 = obj = fl_add_checkbutton(FL_PUSH_BUTTON,20,405,70,20,"CRC Data"); fl_set_object_lsize(obj,FL_TINY_SIZE); fdui->button_err_3 = obj = fl_add_checkbutton(FL_PUSH_BUTTON,20,425,85,20,"End of Packet"); fl_set_object_lsize(obj,FL_TINY_SIZE); fdui->button_err_4 = obj = fl_add_checkbutton(FL_PUSH_BUTTON,20,445,70,20,"Timeout"); fl_set_object_lsize(obj,FL_TINY_SIZE); fdui->button_err_5 = obj = fl_add_checkbutton(FL_PUSH_BUTTON,20,465,75,20,"R3 Status"); fl_set_object_lsize(obj,FL_TINY_SIZE); fdui->button_err_6 = obj = fl_add_checkbutton(FL_PUSH_BUTTON,105,365,130,20,"Page Transmitted Overflow"); fl_set_object_lsize(obj,FL_TINY_SIZE); fdui->button_err_7 = obj = fl_add_checkbutton(FL_PUSH_BUTTON,105,385,130,20,"Message Received Overflow"); fl_set_object_lsize(obj,FL_TINY_SIZE); fdui->button_err_8 = obj = fl_add_checkbutton(FL_PUSH_BUTTON,105,405,120,20,"Sent Packet Overflow"); fl_set_object_lsize(obj,FL_TINY_SIZE); fdui->button_err_9 = obj = fl_add_checkbutton(FL_PUSH_BUTTON,105,425,130,20,"Received Packet Overflow"); fl_set_object_lsize(obj,FL_TINY_SIZE); fdui->button_err_10 = obj = fl_add_checkbutton(FL_PUSH_BUTTON,105,445,100,20,"Illegal LRM Access"); fl_set_object_lsize(obj,FL_TINY_SIZE); fdui->button_err_11 = obj = fl_add_checkbutton(FL_PUSH_BUTTON,105,465,80,20,"LMI Overflow"); fl_set_object_lsize(obj,FL_TINY_SIZE); obj = fl_add_text(FL_NORMAL_TEXT,325,370,75,15,"Tx/Rx Balance"); fl_set_object_lalign(obj,FL_ALIGN_LEFT|FL_ALIGN_INSIDE); obj = fl_add_text(FL_NORMAL_TEXT,325,405,75,15,"Packet Length"); fl_set_object_lalign(obj,FL_ALIGN_LEFT|FL_ALIGN_INSIDE); obj = fl_add_text(FL_NORMAL_TEXT,255,350,45,15,"Control"); fl_set_object_lalign(obj,FL_ALIGN_LEFT|FL_ALIGN_INSIDE); obj = fl_add_frame(FL_ENGRAVED_FRAME,245,440,165,50,""); fdui->button_other_0 = obj = fl_add_checkbutton(FL_PUSH_BUTTON,250,445,80,20,"Tx"); fl_set_object_lsize(obj,FL_TINY_SIZE); fdui->button_other_1 = obj = fl_add_checkbutton(FL_PUSH_BUTTON,250,465,80,20,"Rx"); fl_set_object_lsize(obj,FL_TINY_SIZE); fdui->button_other_2 = obj = fl_add_checkbutton(FL_PUSH_BUTTON,325,445,80,20,"RCube"); fl_set_object_lsize(obj,FL_TINY_SIZE); fdui->button_other_3 = obj = fl_add_checkbutton(FL_PUSH_BUTTON,325,465,80,20,"Loopback"); fl_set_object_lsize(obj,FL_TINY_SIZE); fdui->tx_rx = obj = fl_add_valslider(FL_HOR_NICE_SLIDER,250,365,75,25,""); fl_set_slider_return(obj, FL_RETURN_CHANGED); fdui->pack_len = obj = fl_add_valslider(FL_HOR_NICE_SLIDER,250,400,75,25,""); fl_set_slider_return(obj, FL_RETURN_CHANGED); fl_end_form(); return fdui; }
static void g3d_create_genom_group(void) { int x, y, dy, w, h; FL_OBJECT *obj; obj = fl_add_labelframe(FL_ENGRAVED_FRAME, 5, 15, 140, 870, "Genom Requests"); GENOMGROUP = fl_bgn_group(); x= 15; y= 30; w= 120; h= 40; dy= h + 10; BT_SET_CARTESIAN = fl_add_button(FL_RADIO_BUTTON, x, y, w, h, "Set Cartesian"); fl_set_call_back(BT_SET_CARTESIAN, CB_set_cartesian, 1); fl_set_object_color(BT_SET_CARTESIAN,FL_MCOL,FL_GREEN); fl_set_button(BT_SET_CARTESIAN, FALSE); y+= dy; BT_GRAB_OBJECT = fl_add_button(FL_RADIO_BUTTON, x, y, w, h, "Grab Object"); fl_set_call_back(BT_GRAB_OBJECT, CB_grab_object, 1); fl_set_object_color(BT_GRAB_OBJECT,FL_MCOL,FL_GREEN); fl_set_button(BT_GRAB_OBJECT, FALSE); y+= dy; BT_RELEASE_OBJECT = fl_add_button(FL_RADIO_BUTTON, x, y, w, h, "Release Object"); fl_set_call_back(BT_RELEASE_OBJECT, CB_release_object, 1); fl_set_object_color(BT_RELEASE_OBJECT,FL_MCOL,FL_GREEN); fl_set_button(BT_RELEASE_OBJECT, FALSE); y+= dy; DELETE_GRAPHS = fl_add_button(FL_NORMAL_BUTTON, x, y, w, h, "Delete Graphs"); fl_set_call_back(DELETE_GRAPHS, CB_genomCleanRoadmap_obj, 1); y+= dy; BT_ARM_GOTO_Q_OBJ = fl_add_button(FL_NORMAL_BUTTON, x, y, w, h, "Arm Goto Q"); // BT_PLOT_Q_WRITE_FILE_OBJ= fl_add_button(FL_RADIO_BUTTON, x, y + 1*dy, w, h, "Write file and plot qi"); fl_set_call_back(BT_ARM_GOTO_Q_OBJ, CB_genomArmGotoQ_obj, 1); y+= dy; BT_ARM_EXTRACT_OBJ = fl_add_button(FL_NORMAL_BUTTON, x, y, w, h, "Arm Extract"); fl_set_call_back(BT_ARM_EXTRACT_OBJ, CB_genomArmExtract_obj, 1); y+= dy; BT_ARM_GOTO_X_OBJ = fl_add_button(FL_NORMAL_BUTTON, x, y, w, h, "Arm Goto X"); // BT_PLOT_Q_WRITE_FILE_OBJ= fl_add_button(FL_RADIO_BUTTON, x, y + 1*dy, w, h, "Write file and plot qi"); fl_set_call_back(BT_ARM_GOTO_X_OBJ, CB_genomArmGotoX_obj, 1); y+= dy; BT_FIND_GRASP_CONFIG_AND_COMP_TRAJ_OBJ = fl_add_button(FL_NORMAL_BUTTON, x, y, w, h, "Pick Up"); fl_set_call_back(BT_FIND_GRASP_CONFIG_AND_COMP_TRAJ_OBJ, CB_genomPickUp_gotoObject, 1); y+= dy; BT_PICK_UP_TAKE = fl_add_button(FL_NORMAL_BUTTON, x, y, w, h, "Take To Conf"); fl_set_call_back(BT_PICK_UP_TAKE, CB_genomPickUp_takeObject, 1); y+= dy; BT_PICK_UP_TAKE_XYZ = fl_add_button(FL_NORMAL_BUTTON, x, y, w, h, "Take To XYZ"); fl_set_call_back(BT_PICK_UP_TAKE_XYZ, CB_genomPickUp_takeObjectToXYZ, 1); y+= dy; BT_TAKE_TO_PLACE = fl_add_button(FL_NORMAL_BUTTON, x, y, w, h, "Take To Place"); fl_set_call_back(BT_TAKE_TO_PLACE, CB_genomTakeToPlace, 1); y+= dy; BT_PLACE = fl_add_button(FL_NORMAL_BUTTON, x, y, w, h, "Place From Free"); fl_set_call_back(BT_PLACE, CB_genomPlaceObject, 1); y+= dy; BT_ESCAPE_OBJECT = fl_add_button(FL_NORMAL_BUTTON, x, y, w, h, "Escape object"); fl_set_call_back(BT_ESCAPE_OBJECT, CB_genomEscapeObject, 1); y+= dy; BT_CONSTRUCTPRM = fl_add_button(FL_NORMAL_BUTTON, x, y, w, h, "Build PRM"); fl_set_call_back(BT_CONSTRUCTPRM, CB_genomArmComputePRM_obj, 0); y+= dy; BT_PLANVIAPOINTS = fl_add_button(FL_NORMAL_BUTTON, x, y, w, h, "Plan Via Conf traj"); fl_set_call_back(BT_PLANVIAPOINTS, CB_genomPlanTrajViaPoints, 0); y+= dy; BT_SEQUENCE = fl_add_button(FL_NORMAL_BUTTON, x, y, w, h, "Sequence"); fl_set_call_back(BT_SEQUENCE, CB_genomSequence, 0); #ifdef DPG y+= dy; BT_CHECKCOLONTRAJ = fl_add_button(FL_NORMAL_BUTTON, x, y, w, h, "Check Col Traj"); fl_set_call_back(BT_CHECKCOLONTRAJ, CB_checkColOnTraj, 0); y+= dy; BT_REPLANCOLTRAJ = fl_add_button(FL_NORMAL_BUTTON, x, y, w, h, "Replan Col Traj"); fl_set_call_back(BT_REPLANCOLTRAJ, CB_replanColTraj, 0); y+= dy; #endif fl_end_group(); }