void anim_reactive_collision_interface(AnimProb * AnimProbPt) {

  int NofCoef;

  NofCoef = XYZ_ANIM.animation[0]->nof_coef;
  ZANIM = AnimProbPt;
  
  if (ARCI != NULL) {
    fl_hide_form(ARCI);
    fl_free_form(ARCI);
    ARCI = NULL;
  }
  
  ARCI = fl_bgn_form(FL_UP_BOX, 200, 370);

  ARCI_REAC_TIME = fl_add_valslider (FL_HOR_SLIDER, 10, 10, 180, 20, "Reaction Time");
  fl_set_slider_bounds (ARCI_REAC_TIME, 0, 3);
  fl_set_slider_value  (ARCI_REAC_TIME, 1);
  fl_set_slider_step   (ARCI_REAC_TIME, 0.1);

  ARCI_CONST_BLOCKS =  fl_add_button(FL_NORMAL_BUTTON, 10, 50, 180, 20, "Constitute Blocks");
  fl_set_object_callback(ARCI_CONST_BLOCKS, anim_arci_cb, 10);
  
  ARCI_NOF_BLOCK = fl_add_text(FL_NORMAL_TEXT, 10, 80, 180, 20, "");
  anim_udpate_nof_blocks();

  ARCI_NOF_ATTEMPTS = fl_add_valslider (FL_HOR_SLIDER, 10, 110, 180, 20, "Number of Attempt for Solving Collisions");
  fl_set_slider_bounds (ARCI_NOF_ATTEMPTS, 0, 1000);
  fl_set_slider_value  (ARCI_NOF_ATTEMPTS, 100);
  fl_set_slider_step   (ARCI_NOF_ATTEMPTS, 10);

  ARCI_SOLVE_COL = fl_add_button(FL_NORMAL_BUTTON, 10, 150, 180, 20, "Solve Blocks");
  fl_set_object_callback(ARCI_SOLVE_COL, anim_arci_cb, 11);

  ARCI_SOLVED = fl_add_text(FL_NORMAL_TEXT, 10, 180, 180, 20, "");
  anim_udpate_solved();

  ARCI_SHOW_SOL = fl_add_button(FL_NORMAL_BUTTON, 10, 210, 180, 20, "Show Solution(s)");
  fl_set_object_callback(ARCI_SHOW_SOL, anim_arci_cb, 12);
      
  ARCI_OPTIM = fl_add_button(FL_NORMAL_BUTTON, 10, 240, 180, 20, "Optimize Solution(s)");
  fl_set_object_callback(ARCI_OPTIM, anim_arci_cb, 13);

  ARCI_OPTIMIZED = fl_add_text(FL_NORMAL_TEXT, 10, 270, 180, 20, "");
  anim_udpate_optimized();

  ARCI_SHOW_OPTIM = fl_add_button(FL_NORMAL_BUTTON, 10, 300, 180, 20, "Show Optimized Solution(s)");
  fl_set_object_callback(ARCI_SHOW_OPTIM, anim_arci_cb, 14);

  ARCI_CLOSE = fl_add_button(FL_NORMAL_BUTTON, 10, 330, 180, 20, "Close");
  fl_set_object_callback(ARCI_CLOSE, anim_arci_cb, 15);
  
  fl_end_form();
  fl_show_form (ARCI, FL_PLACE_SIZE, FL_FULLBORDER, "Reactive collisions");
}
Beispiel #2
0
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;
}
Beispiel #3
0
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();

}
Beispiel #4
0
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;
}