SwitchParamWidget::SwitchParamWidget(TuileWidget* widget, 
                                        MidiOscSwitchTuile* switchTuile):
                                            TuileParamWidget(widget,
                                                             switchTuile),
                                            m_switchTuile(switchTuile) {

    m_selectInput = new Fl_Simple_Counter(0, 0, 50, 20, "Selected Child");
    m_selectInput->align(FL_ALIGN_TOP|FL_ALIGN_LEFT);
    m_selectInput->callback(statTuileSwitchInputs,this);
    m_selectInput->labelsize(12);
    m_selectInput->step(1);
    m_selectInput->bounds(0,10);
    Fl_Group *tmpGroup = new Fl_Group(0,0,80,20,"");
    tmpGroup->end();
    tmpGroup->add(m_selectInput);
    tmpGroup->resizable(false);
    add(tmpGroup);
    end();
}
Scheme_Object*
spark_fltk_group::array(int argc, Scheme_Object** argv)
{
  DEFAULT_RET_INIT;

  Fl_Group* group = _get_fl_group(argc, argv, 0);
  if (group)
    {
      Fl_Widget** widgets = const_cast<Fl_Widget**>(group->array());
      if (!widgets)
	{
	  DEFAULT_RET_FINISH;
	}
      int i = 0;
      Fl_Widget* w = widgets[i];
      std::vector<Fl_Widget*> w_vec;
      while (w)
	{
	  w_vec.push_back(w);
	  ++i;
	  w = widgets[i];
	}
      size_t sz = w_vec.size();
      Scheme_Object** elems = new Scheme_Object*[sz];
      for (size_t i=0; i<sz; ++i)
	{
	  Scheme_Object* obj = NULL;
	  Scheme_Object* tag = 0;
	  MZ_GC_DECL_REG(2);
	  MZ_GC_VAR_IN_REG(0, obj);
	  MZ_GC_VAR_IN_REG(1, tag);
	  MZ_GC_REG();
	  tag = scheme_make_integer(FL_WIDGET_TAG);
	  obj = scheme_make_cptr(w_vec[i], tag);
	  elems[i] = obj;
	  MZ_GC_UNREG();
	}
      _ret_ = scheme_build_list(sz, elems);      
      delete[] elems;
    }

  DEFAULT_RET_FINISH;
}
Exemple #3
0
void FolderWindow::AddStructure(const char* filename, const int index)
{
    
    Fl_Pack* pack = folderPack;
    pack->begin();
    
    int vertPosn = pack->children() * NAVBUTTONS_BHEIGHT; //+ pack->y() + 15;
    
    Fl_Group* group = new Fl_Group(pack->x(), vertPosn, pack->w(), NAVBUTTONS_BHEIGHT);
    group->begin();
    
    Fl_Button* label = new Fl_Button(pack->x() + 10, vertPosn, pack->w() - 40, 30, filename);
    label->align(FL_ALIGN_CENTER | FL_ALIGN_INSIDE | FL_ALIGN_LEFT);
    label->callback(FolderWindow::ShowFileCallback);
    label->user_data((void*)index);
    label->labelcolor(GUI_BTEXT_COLOR);
    char labelWithIcon[MAX_BUFFER_SIZE];

    std::string spaceBuffer = string("                                                    ");
    int curLabelLen = 0;
    char filePrefix[MAX_BUFFER_SIZE];
    size_t fileNameBytes = strlen(filename);
    snprintf(filePrefix, MAX_BUFFER_SIZE, "%-.20s%s", filename, 
	     fileNameBytes > MAX_FOLDER_LABEL_CHARS ? "..." : "");
    snprintf(labelWithIcon, MAX_BUFFER_SIZE - 1, "@filenew   %s%s", 
	     filePrefix, spaceBuffer.substr(0, 
             MAX(0, MAX_FOLDER_LABEL_CHARS - ((int ) strlen(filePrefix)))).c_str());
    //strcat(labelWithIcon, "   @|>");
    label->copy_label(labelWithIcon);
    label->tooltip(filename); 
    
    Fl_Button* removeButton = new Fl_Button(pack->x() + pack->w() - 20, vertPosn + 5, 20, 20);
    removeButton->callback(FolderWindow::RemoveCallback);
    removeButton->user_data((void*)index);
    removeButton->label("@1+");
    removeButton->labelcolor(GUI_TEXT_COLOR);
    
    group->resizable(label);
    group->end();
    pack->end();
        
    folderScroll->redraw();
}
Scheme_Object*
spark_fltk_group::remove(int argc, Scheme_Object** argv)
{
  DEFAULT_RET_INIT;

  Fl_Group* group = _get_fl_group(argc, argv, 0);
  if (group)
    {
      Fl_Widget* widget = spark_fltk::_get_widget(argc,
						  argv,
						  1);
      if (widget)
	{
	  group->remove(*widget);
	  _ret_ = scheme_true;
	}
    }

  DEFAULT_RET_FINISH;
}
Exemple #5
0
void onelabGroup::_addViewMenu(int num)
{
  std::ostringstream path;
  path << "0Post-processing/View" << num;
  Fl_Tree_Item *n;
  if((n = _tree->find_item(path.str().c_str())) != NULL) { // check if the item already exists
    _tree->remove(n);
  }
  n = _tree->add(path.str().c_str());
  int ww = _baseWidth - (n->depth() + 1) * _indent;
  int hh = n->labelsize() + 4;
  _tree->begin();
  Fl_Group *grp = new Fl_Group(1, 1, ww, hh);
  new viewButton(1, 1, ww, hh, num, _tree->color());
  grp->end();
  if(!_enableTreeWidgetResize) grp->resizable(0);
  _treeWidgets.push_back(grp);
  n->widget(grp);
  _tree->end();
}
Scheme_Object*
spark_fltk_group::find(int argc, Scheme_Object** argv)
{
  DEFAULT_RET_INIT;

  Fl_Group* group = _get_fl_group(argc, argv, 0);
  if (group)
    {
      Fl_Widget* widget = spark_fltk::_get_widget(argc,
						  argv,
						  1);
      if (widget)
	{
	  int i = group->find(*widget);
	  _ret_ = scheme_make_integer(i);
	}
    }
  
  DEFAULT_RET_FINISH;
}
Exemple #7
0
ButtonSelectionDialog::ButtonSelectionDialog(int actionNumber_){
	actionNumber = actionNumber_;
	buttonReader = JoystickSingleton::Instance().CreateReader();
	buttonReader->callback(OnButtonSelected, this);

	win = new Fl_Window(550, 130, "Press Joystick Button");
	sprintf(labelText, "Press button for \"%s\" on joystick \"%s\"", ActionName(actionNumber), JoystickSingleton::Instance().Name());
	Fl_Group* label = new Fl_Group(10, 35, 530, 5, labelText);
	label->end();
	errorLabel = new Fl_Group(15, 70, 530, 5);
	errorLabel->labelcolor((Fl_Color)1);
	errorLabel->hide();
	errorLabel->end();
	Fl_Button* btn = new Fl_Button(435, 90, 100, 25, "Cancel");
	btn->callback(OnClose, this);
	win->callback(OnClose, this);
	win->end();
	win->set_modal();
	win->show();
}
CLuaDirSelector::CLuaDirSelector(const char *desc, const char *val) : CBaseLuaWidget(desc)
{
    const int dirinputh = 35, buttonh = 25;
    
    // Group for placing widgets next to eachother
    Fl_Group *dirgroup = new Fl_Group(0, 0, 0, dirinputh);
    dirgroup->resizable(NULL);
    GetGroup()->add(dirgroup);
    
    m_pDirInput = new Fl_File_Input(0, 0, 0, dirinputh);
    m_pDirInput->callback(InputChangedCB, this);
    
    if (val && *val)
        m_pDirInput->value(val);
    
    m_pBrowseButton = new Fl_Button(0, (dirinputh-buttonh)/2, 0, buttonh, GetTranslation("Browse"));
    m_pBrowseButton->callback(BrowseCB, this);
    
    dirgroup->end();
}
Exemple #9
0
VDBWindow::VDBWindow() : Fl_Window(640+180,480,"vdb") {
	gl = new GLWindow(0, 0, w() - 180, h());
	
	Fl_Group * group = new Fl_Group(640,0,180,h());
	
	point_size = new Fl_Slider(640+10, 20, 160, 20, "Point Size");
	setupSlider(point_size,1,5,5,this);
	filter_value = new Fl_Slider(640+10, 60, 160 , 20, "Filter");
	setupSlider(filter_value,0,1,1,this);
	
	color_by = new Fl_Choice(640+30, 100, 110, 20, "Color By");
	color_by->align(FL_ALIGN_TOP);
	color_by->add("vdb_color",0,color_by_wrapper,this);
	color_by->add("vdb_label",0,color_by_wrapper,this);
	color_by->value(0);
	makePretty(color_by);
	
	clear_button = new Fl_Button(640+130, h() - 40, 40, 30, "Clear");
	clear_button->callback(clear_wrapper,gl);
	makePretty(clear_button);
	
	makePretty(this);
	for(int i = 0; i < N_CATEGORY_COLORS; i++) {
		Fl::set_color(i+8,category_colors[i][0],category_colors[i][1],category_colors[i][2]);
	}
	
	static int column_widths[] = { 30, 100, 0 };
	Fl_Browser * b = gl->legend = new Fl_Browser(640+10,130, 160, h() - 130 - 50);
	b->column_widths(column_widths);
	b->format_char('@');
	b->column_char('\t');
	b->hide();
	group->end();
	group->resizable(NULL);
	
	this->resizable(gl);
	this->size_range(500,480);
	
	this->end();
};
Exemple #10
0
void cb_open_about() {
  { a_diag = new Fl_Double_Window(210, 165, "About");
    a_diag->color((Fl_Color)29);
    { a_mess = new Fl_Group(5, 10, 200, 45, "Calc 80");
      a_mess->box(FL_RFLAT_BOX);
      a_mess->color((Fl_Color)206);
      a_mess->labelsize(21);
      a_mess->align(Fl_Align(FL_ALIGN_CENTER));
      a_mess->end();
    } // Fl_Group* a_mess
    { Fl_Group* o = new Fl_Group(5, 70, 205, 25, "Version 0.04");
      o->align(Fl_Align(FL_ALIGN_CENTER));
      o->end();
    } // Fl_Group* o
    { Fl_Group* o = new Fl_Group(10, 95, 200, 25, "\302\251""2016, Patrik Wallander");
      o->align(Fl_Align(FL_ALIGN_CENTER));
      o->end();
    } // Fl_Group* o
    { Fl_Button* o = new Fl_Button(70, 135, 70, 20, "Close");
      o->box(FL_RFLAT_BOX);
      o->color(FL_BACKGROUND2_COLOR);
      o->callback((Fl_Callback*)cb_close_about);
    } // Fl_Button* o
    a_diag->show();
    a_diag->position(m_win->x(), m_win->y());
    a_diag->end();
  } // Fl_Double_Window* a_diag
}
Exemple #11
0
//-----------------------------------------------------------------------------
void TrspDlg::create_dlg()
{
	wnd = new Fl_Double_Window(220, 170, mgl_gettext("Transpose data"));
	Fl_Group *g = new Fl_Group(10, 30, 200, 90, mgl_gettext("Select new order of dimensions"));
	g->box(FL_DOWN_BOX);
	yxz = new Fl_Round_Button(20, 40, 75, 25, "y - x - z");	yxz->callback(trsp_rad_cb,this);
	zyx = new Fl_Round_Button(20, 65, 75, 25, "z - y - x");	zyx->callback(trsp_rad_cb,this);
	zxy = new Fl_Round_Button(20, 90, 75, 25, "z - x - y");	zxy->callback(trsp_rad_cb,this);
	yzx = new Fl_Round_Button(100, 40, 75, 25, "y - z - x");yzx->callback(trsp_rad_cb,this);
	xzy = new Fl_Round_Button(100, 65, 75, 25, "x - z - y");xzy->callback(trsp_rad_cb,this);
	xyz = new Fl_Round_Button(100, 90, 75, 25, "x - y - z");xyz->callback(trsp_rad_cb,this);
	g->end();

	Fl_Button *o;
	o = new Fl_Button(25, 130, 75, 25, mgl_gettext("Cancel"));	o->callback(close_dlg_cb,wnd);
	o->box(UDAV_UP_BOX);	o->down_box(UDAV_DOWN_BOX);
	o->tooltip(mgl_gettext("Do nothing and close this window"));
	o = new Fl_Return_Button(125, 130, 75, 25, mgl_gettext("Do"));	o->callback(trsp_dlg_cb,wnd);
	o->box(UDAV_UP_BOX);	o->down_box(UDAV_DOWN_BOX);
	o->tooltip(mgl_gettext("Change data values and close this window"));
	wnd->end();
}
Exemple #12
0
Fl_Group* gdSampleEditor::createUpperBar()
{
  using namespace giada::m;

  Fl_Group* g = new Fl_Group(G_GUI_OUTER_MARGIN, G_GUI_OUTER_MARGIN, w()-16, G_GUI_UNIT);
  g->begin();
    grid    = new geChoice(g->x(), g->y(), 50, G_GUI_UNIT);
    snap    = new geCheck(grid->x()+grid->w()+4, g->y()+3, 12, 12, "Snap");
    sep1    = new geBox(snap->x()+snap->w()+4, g->y(), 506, G_GUI_UNIT);
    zoomOut = new geButton(sep1->x()+sep1->w()+4, g->y(), G_GUI_UNIT, G_GUI_UNIT, "", zoomOutOff_xpm, zoomOutOn_xpm);
    zoomIn  = new geButton(zoomOut->x()+zoomOut->w()+4, g->y(), G_GUI_UNIT, G_GUI_UNIT, "", zoomInOff_xpm, zoomInOn_xpm);
  g->end();
  g->resizable(sep1);

  grid->add("(off)");
  grid->add("2");
  grid->add("3");
  grid->add("4");
  grid->add("6");
  grid->add("8");
  grid->add("16");
  grid->add("32");
  grid->add("64");
  if (conf::sampleEditorGridVal == 0)
    grid->value(0);
  else 
    grid->value(grid->find_item(u::string::iToString(conf::sampleEditorGridVal).c_str()));
  grid->callback(cb_changeGrid, (void*)this);

  snap->value(conf::sampleEditorGridOn);
  snap->callback(cb_enableSnap, (void*)this);

  /* TODO - redraw grid if != (off) */

  zoomOut->callback(cb_zoomOut, (void*)this);
  zoomIn->callback(cb_zoomIn, (void*)this);

  return g;
}
CAppManager::CAppManager()
{
    const int mainw = 560, mainh = 330;
    m_pMainWindow = new Fl_Window(mainw, mainh, "Nixstaller - App Manager");

    m_pAppList = new Fl_Hold_Browser(20, 40, 180, 240, "Installed applications");
    m_pAppList->align(FL_ALIGN_TOP);
    GetRegisterEntries(&m_AppVec);
    for (std::vector<app_entry_s *>::iterator it=m_AppVec.begin(); it!=m_AppVec.end(); it++)
        m_pAppList->add(MakeCString((*it)->name));
    m_pAppList->callback(AppListCB, this);
    m_pAppList->value(1);

    Fl_Tabs *pTabs = new Fl_Tabs((m_pAppList->x()+m_pAppList->w())+20, 20, 300, 260);
    
    Fl_Group *pInfoTab = new Fl_Group((m_pAppList->x()+m_pAppList->w())+20, 40, 300, 260, "Info");
    m_pInfoOutput = new Fl_Help_View((m_pAppList->x()+m_pAppList->w())+20, 40, 300, 240);
    m_pInfoOutput->align(FL_ALIGN_TOP);
    pInfoTab->end();
    
    Fl_Group *pFilesTab = new Fl_Group((m_pAppList->x()+m_pAppList->w())+20, 40, 300, 260, "Files");
    m_pFilesTextDisplay = new Fl_Text_Display((m_pAppList->x()+m_pAppList->w())+20, 40, 300, 240);
    m_pFilesTextBuffer = new Fl_Text_Buffer;
    m_pFilesTextDisplay->buffer(m_pFilesTextBuffer);
    
    pFilesTab->end();
    
    pTabs->end();
    m_pUninstallButton = new Fl_Button(20, (m_pAppList->y()+m_pAppList->h())+20, 120, 25, "Uninstall");
    m_pUninstallButton->callback(UninstallCB, this);
    m_pExitButton = new Fl_Button((mainw-140), (m_pAppList->y()+m_pAppList->h())+20, 120, 25, "Exit");
    m_pExitButton->callback(ExitCB);
    
    UpdateInfo(true);

    m_pUninstallWindow = new CUninstallWindow(this);
    
    m_pMainWindow->end();
}
/* Creates the group for the timeline and its controls and returns it. */
Fl_Group* AnimatedSGWindow::makeFrameControlG(const int x, const int y)
{
	Fl_Group* frameControlG = new Fl_Group(x, y, 200, 50);
	
	/* Create the frame rate spinner. */
	this->framerateSpinner = new Fl_Spinner(x, y, 50, 25, "Frame rate");
	this->framerateSpinner->box(FL_UP_BOX);
	this->framerateSpinner->maximum(60);
	this->framerateSpinner->value(10);
	this->framerateSpinner->align(Fl_Align(FL_ALIGN_TOP));
	
	/* Create the number of frames spinner. */
	this->numFramesSpinner = new Fl_Spinner(x+100, y, 70, 25, "Number of Frames");
	this->numFramesSpinner->box(FL_UP_BOX);
	this->numFramesSpinner->maximum(999);
	this->numFramesSpinner->value(20);
	this->numFramesSpinner->align(Fl_Align(FL_ALIGN_TOP));
	this->numFramesSpinner->callback(AnimatedSGWindow::numFramesCB, this);
	
	frameControlG->end();
	return frameControlG;
}
/* Creates the group for the timeline and its controls and returns it. */
Fl_Group* AnimatedSGWindow::makeTimelineG(const int x, const int y)
{
	Fl_Group* timelineG = new Fl_Group(x, y, 750, 70);
    
	/* Create the back buttons */
	this->backB = new Fl_Button(x, y+30, 40, 40, "<<");
    this->backB->box(FL_PLASTIC_UP_BOX);
    this->backB->callback(AnimatedSGWindow::backCB, this);	

	/* Create the play buttons */
	this->playB = new Fl_Button(x+50, y+30, 40, 40, "\342\226\272");
	this->playB->box(FL_PLASTIC_UP_BOX);
    this->playB->color((Fl_Color)2);
	this->playB->callback(AnimatedSGWindow::playbuttonCB, this);
    
	/* Create the forwards buttons */
	this->forwardB = new Fl_Button(x+100, y+30, 40, 40, ">>");
    this->forwardB->box(FL_PLASTIC_UP_BOX);
    this->forwardB->callback(AnimatedSGWindow::forwardCB, this);
    
	/* Create the timeline sliders. */
	this->timeline = new Fl_Value_Slider(x+150, y+30, 540, 40, "Timeline");
    this->timeline->type(5);
    this->timeline->box(FL_PLASTIC_UP_BOX);
    this->timeline->maximum(this->numFramesSpinner->value()-1);
    this->timeline->step(1);
    this->timeline->align(Fl_Align(FL_ALIGN_TOP));
	this->timeline->callback(AnimatedSGWindow::timelineCB, this);

	/* Create the loop buttons. */
	this->loopB = new Fl_Light_Button(x+700, y+30, 60, 40, "Loop");
    this->loopB->box(FL_PLASTIC_UP_BOX);
    this->loopB->selection_color(FL_GREEN);
	
	timelineG->end();

	return timelineG;
}
Exemple #16
0
void onelabGroup::_addMenu(const std::string &path, Fl_Callback *callback, void *data)
{
  Fl_Tree_Item *n = _tree->add(path.c_str());
  _tree->begin();
  int ww = _baseWidth - (n->depth() + 1) * _indent;
  int hh = n->labelsize() + 4;
  Fl_Group *grp = new Fl_Group(1, 1, ww, hh);
  Fl_Button *but = new Fl_Button(1, 1, ww, hh);
  but->align(FL_ALIGN_LEFT | FL_ALIGN_INSIDE | FL_ALIGN_CLIP);
  but->callback(callback, data);
  but->box(FL_FLAT_BOX);
  but->color(_tree->color());
  but->selection_color(_tree->color());
  grp->end();
  if(!_enableTreeWidgetResize) grp->resizable(0);
  _treeWidgets.push_back(grp);
  std::string label = path;
  std::string::size_type last = path.find_last_of('/');
  if(last != std::string::npos) label = path.substr(last + 1);
  but->copy_label(label.c_str());
  n->widget(grp);
  _tree->end();
}
Scheme_Object*
spark_fltk_group::resizable(int argc, Scheme_Object** argv)
{
  DEFAULT_RET_INIT;

  Fl_Group* group = _get_fl_group(argc, argv, 0);
  if (group)
    {
      if (argc == 1)
	{
	  Fl_Widget* w = group->resizable();
	  if (w)
	    {
	      Scheme_Object* tag = 0;
	      MZ_GC_DECL_REG(1);
	      MZ_GC_VAR_IN_REG(0, tag);
	      MZ_GC_REG();
	      tag = scheme_make_integer(FL_WIDGET_TAG);
	      _ret_ = scheme_make_cptr(w, tag);
	      MZ_GC_UNREG();
	    }
	}
      else
	{
	  Fl_Widget* widget = spark_fltk::_get_widget(argc,
						      argv,
						      1);
	  if (widget)
	    {
	      group->resizable(widget);
	      _ret_ = scheme_true;
	    }
	}
    }

  DEFAULT_RET_FINISH;
}
CLuaCFGMenu::CLuaCFGMenu(const char *desc) : CBaseLuaWidget(desc)
{
    m_ColumnWidths[0] = m_ColumnWidths[1] = 0;
    
    const int inputh = 25, dirinputh = 35, inputspacing = 10;
    GetGroup()->begin();
    
    m_pVarListView = new Fl_Hold_Browser(0, 0, 0, GroupHeight() - (inputspacing+dirinputh));
    m_pVarListView->callback(SelectionCB, this);
    
    m_pInputField = new Fl_Input(0, 0, 0, inputh);
    m_pInputField->callback(InputChangedCB, this);
    m_pInputField->when(FL_WHEN_CHANGED);
    m_pInputField->hide();
    
    m_pChoiceMenu = new Fl_Choice(0, 0, 0, inputh);
    m_pChoiceMenu->callback(ChoiceChangedCB, this);
    m_pChoiceMenu->hide();
    
    // Group for placing widgets next to eachother
    Fl_Group *dirgroup = new Fl_Group(0, 0, 0, dirinputh);
    dirgroup->resizable(NULL);
    
    m_pDirInput = new Fl_File_Input(0, 0, 0, dirinputh);
    m_pDirInput->callback(InputChangedCB, this);
    m_pDirInput->when(FL_WHEN_CHANGED);
    m_pDirInput->hide();
    
    m_pBrowseButton = new Fl_Button(0, (dirinputh-inputh) / 2, 0, inputh, GetTranslation("Browse"));
    SetButtonWidth(m_pBrowseButton);
    m_pBrowseButton->callback(BrowseCB, this);
    m_pBrowseButton->hide();
    
    dirgroup->end();
    
    GetGroup()->end();
}
Exemple #19
0
Fl_Group* gdSampleEditor::createInfoBox(int x, int y, int h)
{
  Fl_Group* g = new Fl_Group(x, y, 400, h);
  g->begin();
    info = new geBox(g->x(), g->y(), g->w(), g->h());
  g->end();	

  info->align(FL_ALIGN_LEFT | FL_ALIGN_INSIDE | FL_ALIGN_TOP);
  
  updateInfo();

  return g;
}
Scheme_Object*
spark_fltk_group::insert(int argc, Scheme_Object** argv)
{
  DEFAULT_RET_INIT;

  Fl_Group* group = _get_fl_group(argc, argv, 0);
  if (group)
    {
      Fl_Widget* widget = spark_fltk::_get_widget(argc,
						  argv,
						  1);
      if (widget)
	{
	  int i = 0;
	  if (spark::Utils::int_from_scheme_long(argv[2], i))
	    {
	      group->insert(*widget, i);
	      _ret_ = scheme_true;
	    }
	}
    }

  DEFAULT_RET_FINISH;
}
Exemple #21
0
Fl_Group* TabScreen::MakeTab( const string& title )
{
    int rx, ry, rw, rh;
    m_MenuTabs->client_area( rx, ry, rw, rh, TAB_H );

    Fl_Group* grp = new Fl_Group( rx, ry, rw, rh );
    grp->copy_label( title.c_str() );
    grp->selection_color( FL_GRAY );
    grp->labelfont( 1 );
    grp->labelcolor( FL_BLACK );
    grp->hide();
    m_TabGroupVec.push_back( grp );

    return grp;
}
void DelayGUI::CreateGUI(int xoff, int yoff, char *name)
{
	 Fl_Group* o = GUIDelayGroup = new Fl_Group(xoff, yoff, 300, 60, name);
      o->type(1);
	  o->color(GUIBG2_COLOUR);
	  o->box(FL_UP_BOX);
      o->labeltype(FL_ENGRAVED_LABEL);
      o->align(FL_ALIGN_TOP_LEFT|FL_ALIGN_INSIDE);
	  o->user_data((void*)(this));
       	  
	  DelayA = new Fl_Knob(xoff+50, yoff+5, 40, 40, "Delay");
	  DelayA->color(GUI_COLOUR);
      DelayA->labelsize(10);
	  DelayA->maximum(1);
      DelayA->step(0.01);
      DelayA->value(0.5);
      DelayA->callback((Fl_Callback*)cb_Delay);
	  
	  Feedback = new Fl_Knob(xoff+100, yoff+5, 40, 40, "Feedback");
	  Feedback->color(GUI_COLOUR);
      Feedback->labelsize(10);
	  Feedback->maximum(1.0);
      Feedback->step(0.01);
      Feedback->value(0.5);
      Feedback->callback((Fl_Callback*)cb_Feedback);
	  
	  Bypass = new Fl_Button(xoff+5, yoff+25, 40, 20, "Bypass");
	  Bypass->color(GUIBG2_COLOUR);
	  Bypass->labelsize(10);
	  Bypass->type(1);
	  Bypass->value(1);
	  Bypass->callback((Fl_Callback*)cb_Bypass);
	  
      o->end();
    
}
Exemple #23
0
stereogui::stereogui() {
  { stereo_calibration = new Fl_Window(785, 400, "Stereo Calibration");
    stereo_calibration->labelsize(11);
    stereo_calibration->user_data((void*)(this));
    { Fl_Group* o = new Fl_Group(10, 10, 850, 355);
      { window_tab = new Fl_Tabs(10, 10, 665, 285);
        window_tab->box(FL_UP_BOX);
        window_tab->labeltype(FL_NO_LABEL);
        { tab0 = new Fl_Group(25, 55, 660, 250, "Stereo               ");
          tab0->labelsize(11);
          tab0->user_data((void*)(-1));
          { Fl_Group* o = new Fl_Group(30, 55, 645, 245);
            { Fl_Group* o = new Fl_Group(30, 55, 320, 245);
              { Fl_Box* o = new Fl_Box(30, 55, 320, 240);
                o->box(FL_EMBOSSED_FRAME);
                o->labeltype(FL_NO_LABEL);
              } // Fl_Box* o
              { calLeft0 = new calImageWindow(30, 55, 320, 240);
                calLeft0->box(FL_NO_BOX);
                calLeft0->color(FL_BACKGROUND_COLOR);
                calLeft0->selection_color(FL_BACKGROUND_COLOR);
                calLeft0->labeltype(FL_NO_LABEL);
                calLeft0->labelfont(0);
                calLeft0->labelsize(14);
                calLeft0->labelcolor(FL_FOREGROUND_COLOR);
                calLeft0->align(FL_ALIGN_CENTER);
                calLeft0->when(FL_WHEN_RELEASE);
              } // calImageWindow* calLeft0
              o->end();
            } // Fl_Group* o
            { Fl_Group* o = new Fl_Group(355, 55, 320, 245);
              { Fl_Box* o = new Fl_Box(355, 55, 320, 240);
                o->box(FL_EMBOSSED_FRAME);
                o->labeltype(FL_NO_LABEL);
              } // Fl_Box* o
              { calRight0 = new calImageWindow(355, 55, 320, 240);
                calRight0->box(FL_NO_BOX);
                calRight0->color(FL_BACKGROUND_COLOR);
                calRight0->selection_color(FL_BACKGROUND_COLOR);
                calRight0->labeltype(FL_NO_LABEL);
                calRight0->labelfont(0);
                calRight0->labelsize(14);
                calRight0->labelcolor(FL_FOREGROUND_COLOR);
                calRight0->align(FL_ALIGN_CENTER);
                calRight0->when(FL_WHEN_RELEASE);
              } // calImageWindow* calRight0
              o->end();
            } // Fl_Group* o
            o->end();
          } // Fl_Group* o
          tab0->end();
        } // Fl_Group* tab0
        { tab1 = new Fl_Group(15, 45, 660, 250, " 1 ");
          tab1->labelsize(11);
          tab1->user_data((void*)(0));
          tab1->hide();
          tab1->deactivate();
          { Fl_Group* o = new Fl_Group(20, 45, 645, 245);
            { Fl_Group* o = new Fl_Group(20, 45, 320, 245);
              { Fl_Box* o = new Fl_Box(20, 45, 320, 240);
                o->box(FL_EMBOSSED_FRAME);
                o->labeltype(FL_NO_LABEL);
              } // Fl_Box* o
              { calLeft1 = new calImageWindow(20, 45, 320, 240);
                calLeft1->box(FL_NO_BOX);
                calLeft1->color(FL_BACKGROUND_COLOR);
                calLeft1->selection_color(FL_BACKGROUND_COLOR);
                calLeft1->labeltype(FL_NO_LABEL);
                calLeft1->labelfont(0);
                calLeft1->labelsize(14);
                calLeft1->labelcolor(FL_FOREGROUND_COLOR);
                calLeft1->align(FL_ALIGN_CENTER);
                calLeft1->when(FL_WHEN_RELEASE);
              } // calImageWindow* calLeft1
              o->end();
            } // Fl_Group* o
            { Fl_Group* o = new Fl_Group(345, 45, 320, 245);
              { Fl_Box* o = new Fl_Box(345, 45, 320, 240);
                o->box(FL_EMBOSSED_FRAME);
                o->labeltype(FL_NO_LABEL);
              } // Fl_Box* o
              { calRight1 = new calImageWindow(345, 45, 320, 240);
                calRight1->box(FL_NO_BOX);
                calRight1->color(FL_BACKGROUND_COLOR);
                calRight1->selection_color(FL_BACKGROUND_COLOR);
                calRight1->labeltype(FL_NO_LABEL);
                calRight1->labelfont(0);
                calRight1->labelsize(14);
                calRight1->labelcolor(FL_FOREGROUND_COLOR);
                calRight1->align(FL_ALIGN_CENTER);
                calRight1->when(FL_WHEN_RELEASE);
              } // calImageWindow* calRight1
              o->end();
            } // Fl_Group* o
            o->end();
          } // Fl_Group* o
          tab1->end();
        } // Fl_Group* tab1
        { tab2 = new Fl_Group(15, 35, 660, 260, " 2");
          tab2->labelsize(11);
          tab2->user_data((void*)(1));
          tab2->hide();
          { Fl_Group* o = new Fl_Group(20, 45, 645, 245);
            { Fl_Group* o = new Fl_Group(20, 45, 320, 245);
              { Fl_Box* o = new Fl_Box(20, 50, 320, 235);
                o->box(FL_EMBOSSED_FRAME);
                o->labeltype(FL_NO_LABEL);
              } // Fl_Box* o
              { calLeft2 = new calImageWindow(20, 45, 320, 240);
                calLeft2->box(FL_NO_BOX);
                calLeft2->color(FL_BACKGROUND_COLOR);
                calLeft2->selection_color(FL_BACKGROUND_COLOR);
                calLeft2->labeltype(FL_NO_LABEL);
                calLeft2->labelfont(0);
                calLeft2->labelsize(14);
                calLeft2->labelcolor(FL_FOREGROUND_COLOR);
                calLeft2->align(FL_ALIGN_CENTER);
                calLeft2->when(FL_WHEN_RELEASE);
              } // calImageWindow* calLeft2
              o->end();
            } // Fl_Group* o
            { Fl_Group* o = new Fl_Group(345, 45, 320, 240);
              { Fl_Box* o = new Fl_Box(345, 50, 320, 235);
                o->box(FL_EMBOSSED_FRAME);
                o->labeltype(FL_NO_LABEL);
              } // Fl_Box* o
              { calRight2 = new calImageWindow(345, 45, 320, 240);
                calRight2->box(FL_NO_BOX);
                calRight2->color(FL_BACKGROUND_COLOR);
                calRight2->selection_color(FL_BACKGROUND_COLOR);
                calRight2->labeltype(FL_NO_LABEL);
                calRight2->labelfont(0);
                calRight2->labelsize(14);
                calRight2->labelcolor(FL_FOREGROUND_COLOR);
                calRight2->align(FL_ALIGN_CENTER);
                calRight2->when(FL_WHEN_RELEASE);
              } // calImageWindow* calRight2
              o->end();
            } // Fl_Group* o
            o->end();
          } // Fl_Group* o
          tab2->end();
        } // Fl_Group* tab2
        { tab3 = new Fl_Group(15, 35, 660, 260, " 3");
          tab3->labelsize(11);
          tab3->user_data((void*)(2));
          tab3->hide();
          { Fl_Group* o = new Fl_Group(20, 45, 645, 245);
            { Fl_Group* o = new Fl_Group(20, 45, 320, 245);
              { Fl_Box* o = new Fl_Box(20, 50, 320, 235);
                o->box(FL_EMBOSSED_FRAME);
                o->labeltype(FL_NO_LABEL);
              } // Fl_Box* o
              { calLeft3 = new calImageWindow(20, 45, 320, 240);
                calLeft3->box(FL_NO_BOX);
                calLeft3->color(FL_BACKGROUND_COLOR);
                calLeft3->selection_color(FL_BACKGROUND_COLOR);
                calLeft3->labeltype(FL_NO_LABEL);
                calLeft3->labelfont(0);
                calLeft3->labelsize(14);
                calLeft3->labelcolor(FL_FOREGROUND_COLOR);
                calLeft3->align(FL_ALIGN_CENTER);
                calLeft3->when(FL_WHEN_RELEASE);
              } // calImageWindow* calLeft3
              o->end();
            } // Fl_Group* o
            { Fl_Group* o = new Fl_Group(345, 45, 320, 240);
              { Fl_Box* o = new Fl_Box(345, 50, 320, 235);
                o->box(FL_EMBOSSED_FRAME);
                o->labeltype(FL_NO_LABEL);
              } // Fl_Box* o
              { calRight3 = new calImageWindow(345, 45, 320, 240);
                calRight3->box(FL_NO_BOX);
                calRight3->color(FL_BACKGROUND_COLOR);
                calRight3->selection_color(FL_BACKGROUND_COLOR);
                calRight3->labeltype(FL_NO_LABEL);
                calRight3->labelfont(0);
                calRight3->labelsize(14);
                calRight3->labelcolor(FL_FOREGROUND_COLOR);
                calRight3->align(FL_ALIGN_CENTER);
                calRight3->when(FL_WHEN_RELEASE);
              } // calImageWindow* calRight3
              o->end();
            } // Fl_Group* o
            o->end();
          } // Fl_Group* o
          tab3->end();
        } // Fl_Group* tab3
        { tab4 = new Fl_Group(15, 35, 660, 260, " 4");
          tab4->labelsize(11);
          tab4->user_data((void*)(3));
          tab4->hide();
          { Fl_Group* o = new Fl_Group(20, 45, 645, 245);
            { Fl_Group* o = new Fl_Group(20, 45, 320, 245);
              { Fl_Box* o = new Fl_Box(20, 50, 320, 235);
                o->box(FL_EMBOSSED_FRAME);
                o->labeltype(FL_NO_LABEL);
              } // Fl_Box* o
              { calLeft4 = new calImageWindow(20, 45, 320, 240);
                calLeft4->box(FL_NO_BOX);
                calLeft4->color(FL_BACKGROUND_COLOR);
                calLeft4->selection_color(FL_BACKGROUND_COLOR);
                calLeft4->labeltype(FL_NO_LABEL);
                calLeft4->labelfont(0);
                calLeft4->labelsize(14);
                calLeft4->labelcolor(FL_FOREGROUND_COLOR);
                calLeft4->align(FL_ALIGN_CENTER);
                calLeft4->when(FL_WHEN_RELEASE);
              } // calImageWindow* calLeft4
              o->end();
            } // Fl_Group* o
            { Fl_Group* o = new Fl_Group(345, 45, 320, 240);
              { Fl_Box* o = new Fl_Box(345, 50, 320, 235);
                o->box(FL_EMBOSSED_FRAME);
                o->labeltype(FL_NO_LABEL);
              } // Fl_Box* o
              { calRight4 = new calImageWindow(345, 45, 320, 240);
                calRight4->box(FL_NO_BOX);
                calRight4->color(FL_BACKGROUND_COLOR);
                calRight4->selection_color(FL_BACKGROUND_COLOR);
                calRight4->labeltype(FL_NO_LABEL);
                calRight4->labelfont(0);
                calRight4->labelsize(14);
                calRight4->labelcolor(FL_FOREGROUND_COLOR);
                calRight4->align(FL_ALIGN_CENTER);
                calRight4->when(FL_WHEN_RELEASE);
              } // calImageWindow* calRight4
              o->end();
            } // Fl_Group* o
            o->end();
          } // Fl_Group* o
          tab4->end();
        } // Fl_Group* tab4
        { tab5 = new Fl_Group(15, 35, 660, 260, " 5");
          tab5->labelsize(11);
          tab5->user_data((void*)(4));
          tab5->hide();
          { Fl_Group* o = new Fl_Group(20, 45, 645, 245);
            { Fl_Group* o = new Fl_Group(20, 45, 320, 245);
              { Fl_Box* o = new Fl_Box(20, 50, 320, 235);
                o->box(FL_EMBOSSED_FRAME);
                o->labeltype(FL_NO_LABEL);
              } // Fl_Box* o
              { calLeft5 = new calImageWindow(20, 45, 320, 240);
                calLeft5->box(FL_NO_BOX);
                calLeft5->color(FL_BACKGROUND_COLOR);
                calLeft5->selection_color(FL_BACKGROUND_COLOR);
                calLeft5->labeltype(FL_NO_LABEL);
                calLeft5->labelfont(0);
                calLeft5->labelsize(14);
                calLeft5->labelcolor(FL_FOREGROUND_COLOR);
                calLeft5->align(FL_ALIGN_CENTER);
                calLeft5->when(FL_WHEN_RELEASE);
              } // calImageWindow* calLeft5
              o->end();
            } // Fl_Group* o
            { Fl_Group* o = new Fl_Group(345, 45, 320, 240);
              { Fl_Box* o = new Fl_Box(345, 50, 320, 235);
                o->box(FL_EMBOSSED_FRAME);
                o->labeltype(FL_NO_LABEL);
              } // Fl_Box* o
              { calRight5 = new calImageWindow(345, 45, 320, 240);
                calRight5->box(FL_NO_BOX);
                calRight5->color(FL_BACKGROUND_COLOR);
                calRight5->selection_color(FL_BACKGROUND_COLOR);
                calRight5->labeltype(FL_NO_LABEL);
                calRight5->labelfont(0);
                calRight5->labelsize(14);
                calRight5->labelcolor(FL_FOREGROUND_COLOR);
                calRight5->align(FL_ALIGN_CENTER);
                calRight5->when(FL_WHEN_RELEASE);
              } // calImageWindow* calRight5
              o->end();
            } // Fl_Group* o
            o->end();
          } // Fl_Group* o
          tab5->end();
        } // Fl_Group* tab5
        { tab6 = new Fl_Group(15, 35, 660, 260, " 6");
          tab6->labelsize(11);
          tab6->user_data((void*)(5));
          tab6->hide();
          { Fl_Group* o = new Fl_Group(20, 45, 645, 245);
            { Fl_Group* o = new Fl_Group(20, 45, 320, 245);
              { Fl_Box* o = new Fl_Box(20, 50, 320, 235);
                o->box(FL_EMBOSSED_FRAME);
                o->labeltype(FL_NO_LABEL);
              } // Fl_Box* o
              { calLeft6 = new calImageWindow(20, 45, 320, 240);
                calLeft6->box(FL_NO_BOX);
                calLeft6->color(FL_BACKGROUND_COLOR);
                calLeft6->selection_color(FL_BACKGROUND_COLOR);
                calLeft6->labeltype(FL_NO_LABEL);
                calLeft6->labelfont(0);
                calLeft6->labelsize(14);
                calLeft6->labelcolor(FL_FOREGROUND_COLOR);
                calLeft6->align(FL_ALIGN_CENTER);
                calLeft6->when(FL_WHEN_RELEASE);
              } // calImageWindow* calLeft6
              o->end();
            } // Fl_Group* o
            { Fl_Group* o = new Fl_Group(345, 45, 320, 240);
              { Fl_Box* o = new Fl_Box(345, 50, 320, 235);
                o->box(FL_EMBOSSED_FRAME);
                o->labeltype(FL_NO_LABEL);
              } // Fl_Box* o
              { calRight6 = new calImageWindow(345, 45, 320, 240);
                calRight6->box(FL_NO_BOX);
                calRight6->color(FL_BACKGROUND_COLOR);
                calRight6->selection_color(FL_BACKGROUND_COLOR);
                calRight6->labeltype(FL_NO_LABEL);
                calRight6->labelfont(0);
                calRight6->labelsize(14);
                calRight6->labelcolor(FL_FOREGROUND_COLOR);
                calRight6->align(FL_ALIGN_CENTER);
                calRight6->when(FL_WHEN_RELEASE);
              } // calImageWindow* calRight6
              o->end();
            } // Fl_Group* o
            o->end();
          } // Fl_Group* o
          tab6->end();
        } // Fl_Group* tab6
        { tab7 = new Fl_Group(15, 35, 660, 260, " 7");
          tab7->labelsize(11);
          tab7->user_data((void*)(6));
          tab7->hide();
          { Fl_Group* o = new Fl_Group(20, 45, 645, 245);
            { Fl_Group* o = new Fl_Group(20, 45, 320, 245);
              { Fl_Box* o = new Fl_Box(20, 50, 320, 235);
                o->box(FL_EMBOSSED_FRAME);
                o->labeltype(FL_NO_LABEL);
              } // Fl_Box* o
              { calLeft7 = new calImageWindow(20, 45, 320, 240);
                calLeft7->box(FL_NO_BOX);
                calLeft7->color(FL_BACKGROUND_COLOR);
                calLeft7->selection_color(FL_BACKGROUND_COLOR);
                calLeft7->labeltype(FL_NO_LABEL);
                calLeft7->labelfont(0);
                calLeft7->labelsize(14);
                calLeft7->labelcolor(FL_FOREGROUND_COLOR);
                calLeft7->align(FL_ALIGN_CENTER);
                calLeft7->when(FL_WHEN_RELEASE);
              } // calImageWindow* calLeft7
              o->end();
            } // Fl_Group* o
            { Fl_Group* o = new Fl_Group(345, 45, 320, 240);
              { Fl_Box* o = new Fl_Box(345, 50, 320, 235);
                o->box(FL_EMBOSSED_FRAME);
                o->labeltype(FL_NO_LABEL);
              } // Fl_Box* o
              { calRight7 = new calImageWindow(345, 45, 320, 240);
                calRight7->box(FL_NO_BOX);
                calRight7->color(FL_BACKGROUND_COLOR);
                calRight7->selection_color(FL_BACKGROUND_COLOR);
                calRight7->labeltype(FL_NO_LABEL);
                calRight7->labelfont(0);
                calRight7->labelsize(14);
                calRight7->labelcolor(FL_FOREGROUND_COLOR);
                calRight7->align(FL_ALIGN_CENTER);
                calRight7->when(FL_WHEN_RELEASE);
              } // calImageWindow* calRight7
              o->end();
            } // Fl_Group* o
            o->end();
          } // Fl_Group* o
          tab7->end();
        } // Fl_Group* tab7
        { tab8 = new Fl_Group(15, 35, 660, 260, " 8");
          tab8->labelsize(11);
          tab8->user_data((void*)(7));
          tab8->hide();
          { Fl_Group* o = new Fl_Group(20, 45, 645, 245);
            { Fl_Group* o = new Fl_Group(20, 45, 320, 245);
              { Fl_Box* o = new Fl_Box(20, 50, 320, 235);
                o->box(FL_EMBOSSED_FRAME);
                o->labeltype(FL_NO_LABEL);
              } // Fl_Box* o
              { calLeft8 = new calImageWindow(20, 45, 320, 240);
                calLeft8->box(FL_NO_BOX);
                calLeft8->color(FL_BACKGROUND_COLOR);
                calLeft8->selection_color(FL_BACKGROUND_COLOR);
                calLeft8->labeltype(FL_NO_LABEL);
                calLeft8->labelfont(0);
                calLeft8->labelsize(14);
                calLeft8->labelcolor(FL_FOREGROUND_COLOR);
                calLeft8->align(FL_ALIGN_CENTER);
                calLeft8->when(FL_WHEN_RELEASE);
              } // calImageWindow* calLeft8
              o->end();
            } // Fl_Group* o
            { Fl_Group* o = new Fl_Group(345, 45, 320, 240);
              { Fl_Box* o = new Fl_Box(345, 50, 320, 235);
                o->box(FL_EMBOSSED_FRAME);
                o->labeltype(FL_NO_LABEL);
              } // Fl_Box* o
              { calRight8 = new calImageWindow(345, 45, 320, 240);
                calRight8->box(FL_NO_BOX);
                calRight8->color(FL_BACKGROUND_COLOR);
                calRight8->selection_color(FL_BACKGROUND_COLOR);
                calRight8->labeltype(FL_NO_LABEL);
                calRight8->labelfont(0);
                calRight8->labelsize(14);
                calRight8->labelcolor(FL_FOREGROUND_COLOR);
                calRight8->align(FL_ALIGN_CENTER);
                calRight8->when(FL_WHEN_RELEASE);
              } // calImageWindow* calRight8
              o->end();
            } // Fl_Group* o
            o->end();
          } // Fl_Group* o
          tab8->end();
        } // Fl_Group* tab8
        { tab9 = new Fl_Group(15, 35, 660, 260, " 9");
          tab9->labelsize(11);
          tab9->user_data((void*)(8));
          tab9->hide();
          { Fl_Group* o = new Fl_Group(20, 45, 645, 245);
            { Fl_Group* o = new Fl_Group(20, 45, 320, 245);
              { Fl_Box* o = new Fl_Box(20, 50, 320, 235);
                o->box(FL_EMBOSSED_FRAME);
                o->labeltype(FL_NO_LABEL);
              } // Fl_Box* o
              { calLeft9 = new calImageWindow(20, 45, 320, 240);
                calLeft9->box(FL_NO_BOX);
                calLeft9->color(FL_BACKGROUND_COLOR);
                calLeft9->selection_color(FL_BACKGROUND_COLOR);
                calLeft9->labeltype(FL_NO_LABEL);
                calLeft9->labelfont(0);
                calLeft9->labelsize(14);
                calLeft9->labelcolor(FL_FOREGROUND_COLOR);
                calLeft9->align(FL_ALIGN_CENTER);
                calLeft9->when(FL_WHEN_RELEASE);
              } // calImageWindow* calLeft9
              o->end();
            } // Fl_Group* o
            { Fl_Group* o = new Fl_Group(345, 45, 320, 240);
              { Fl_Box* o = new Fl_Box(345, 50, 320, 235);
                o->box(FL_EMBOSSED_FRAME);
                o->labeltype(FL_NO_LABEL);
              } // Fl_Box* o
              { calRight9 = new calImageWindow(345, 45, 320, 240);
                calRight9->box(FL_NO_BOX);
                calRight9->color(FL_BACKGROUND_COLOR);
                calRight9->selection_color(FL_BACKGROUND_COLOR);
                calRight9->labeltype(FL_NO_LABEL);
                calRight9->labelfont(0);
                calRight9->labelsize(14);
                calRight9->labelcolor(FL_FOREGROUND_COLOR);
                calRight9->align(FL_ALIGN_CENTER);
                calRight9->when(FL_WHEN_RELEASE);
              } // calImageWindow* calRight9
              o->end();
            } // Fl_Group* o
            o->end();
          } // Fl_Group* o
          tab9->end();
        } // Fl_Group* tab9
        { tab10 = new Fl_Group(15, 35, 660, 260, " 10");
          tab10->labelsize(11);
          tab10->user_data((void*)(9));
          tab10->hide();
          { Fl_Group* o = new Fl_Group(20, 45, 645, 245);
            { Fl_Group* o = new Fl_Group(20, 45, 320, 245);
              { Fl_Box* o = new Fl_Box(20, 50, 320, 235);
                o->box(FL_EMBOSSED_FRAME);
                o->labeltype(FL_NO_LABEL);
              } // Fl_Box* o
              { calLeft10 = new calImageWindow(20, 45, 320, 240);
                calLeft10->box(FL_NO_BOX);
                calLeft10->color(FL_BACKGROUND_COLOR);
                calLeft10->selection_color(FL_BACKGROUND_COLOR);
                calLeft10->labeltype(FL_NO_LABEL);
                calLeft10->labelfont(0);
                calLeft10->labelsize(14);
                calLeft10->labelcolor(FL_FOREGROUND_COLOR);
                calLeft10->align(FL_ALIGN_CENTER);
                calLeft10->when(FL_WHEN_RELEASE);
              } // calImageWindow* calLeft10
              o->end();
            } // Fl_Group* o
            { Fl_Group* o = new Fl_Group(345, 45, 320, 240);
              { Fl_Box* o = new Fl_Box(345, 50, 320, 235);
                o->box(FL_EMBOSSED_FRAME);
                o->labeltype(FL_NO_LABEL);
              } // Fl_Box* o
              { calRight10 = new calImageWindow(345, 45, 320, 240);
                calRight10->box(FL_NO_BOX);
                calRight10->color(FL_BACKGROUND_COLOR);
                calRight10->selection_color(FL_BACKGROUND_COLOR);
                calRight10->labeltype(FL_NO_LABEL);
                calRight10->labelfont(0);
                calRight10->labelsize(14);
                calRight10->labelcolor(FL_FOREGROUND_COLOR);
                calRight10->align(FL_ALIGN_CENTER);
                calRight10->when(FL_WHEN_RELEASE);
              } // calImageWindow* calRight10
              o->end();
            } // Fl_Group* o
            o->end();
          } // Fl_Group* o
          tab10->end();
        } // Fl_Group* tab10
        { tab11 = new Fl_Group(15, 35, 660, 260, " 11");
          tab11->labelsize(11);
          tab11->user_data((void*)(10));
          tab11->hide();
          { Fl_Group* o = new Fl_Group(20, 45, 645, 245);
            { Fl_Group* o = new Fl_Group(20, 45, 320, 245);
              { Fl_Box* o = new Fl_Box(20, 50, 320, 235);
                o->box(FL_EMBOSSED_FRAME);
                o->labeltype(FL_NO_LABEL);
              } // Fl_Box* o
              { calLeft11 = new calImageWindow(20, 45, 320, 240);
                calLeft11->box(FL_NO_BOX);
                calLeft11->color(FL_BACKGROUND_COLOR);
                calLeft11->selection_color(FL_BACKGROUND_COLOR);
                calLeft11->labeltype(FL_NO_LABEL);
                calLeft11->labelfont(0);
                calLeft11->labelsize(14);
                calLeft11->labelcolor(FL_FOREGROUND_COLOR);
                calLeft11->align(FL_ALIGN_CENTER);
                calLeft11->when(FL_WHEN_RELEASE);
              } // calImageWindow* calLeft11
              o->end();
            } // Fl_Group* o
            { Fl_Group* o = new Fl_Group(345, 45, 320, 240);
              { Fl_Box* o = new Fl_Box(345, 50, 320, 235);
                o->box(FL_EMBOSSED_FRAME);
                o->labeltype(FL_NO_LABEL);
              } // Fl_Box* o
              { calRight11 = new calImageWindow(345, 45, 320, 240);
                calRight11->box(FL_NO_BOX);
                calRight11->color(FL_BACKGROUND_COLOR);
                calRight11->selection_color(FL_BACKGROUND_COLOR);
                calRight11->labeltype(FL_NO_LABEL);
                calRight11->labelfont(0);
                calRight11->labelsize(14);
                calRight11->labelcolor(FL_FOREGROUND_COLOR);
                calRight11->align(FL_ALIGN_CENTER);
                calRight11->when(FL_WHEN_RELEASE);
              } // calImageWindow* calRight11
              o->end();
            } // Fl_Group* o
            o->end();
          } // Fl_Group* o
          tab11->end();
        } // Fl_Group* tab11
        { tab12 = new Fl_Group(15, 35, 660, 260, " 12");
          tab12->labelsize(11);
          tab12->user_data((void*)(11));
          tab12->hide();
          { Fl_Group* o = new Fl_Group(20, 45, 645, 245);
            { Fl_Group* o = new Fl_Group(20, 45, 320, 245);
              { Fl_Box* o = new Fl_Box(20, 50, 320, 235);
                o->box(FL_EMBOSSED_FRAME);
                o->labeltype(FL_NO_LABEL);
              } // Fl_Box* o
              { calLeft12 = new calImageWindow(20, 45, 320, 240);
                calLeft12->box(FL_NO_BOX);
                calLeft12->color(FL_BACKGROUND_COLOR);
                calLeft12->selection_color(FL_BACKGROUND_COLOR);
                calLeft12->labeltype(FL_NO_LABEL);
                calLeft12->labelfont(0);
                calLeft12->labelsize(14);
                calLeft12->labelcolor(FL_FOREGROUND_COLOR);
                calLeft12->align(FL_ALIGN_CENTER);
                calLeft12->when(FL_WHEN_RELEASE);
              } // calImageWindow* calLeft12
              o->end();
            } // Fl_Group* o
            { Fl_Group* o = new Fl_Group(345, 45, 320, 240);
              { Fl_Box* o = new Fl_Box(345, 50, 320, 235);
                o->box(FL_EMBOSSED_FRAME);
                o->labeltype(FL_NO_LABEL);
              } // Fl_Box* o
              { calRight12 = new calImageWindow(345, 45, 320, 240);
                calRight12->box(FL_NO_BOX);
                calRight12->color(FL_BACKGROUND_COLOR);
                calRight12->selection_color(FL_BACKGROUND_COLOR);
                calRight12->labeltype(FL_NO_LABEL);
                calRight12->labelfont(0);
                calRight12->labelsize(14);
                calRight12->labelcolor(FL_FOREGROUND_COLOR);
                calRight12->align(FL_ALIGN_CENTER);
                calRight12->when(FL_WHEN_RELEASE);
              } // calImageWindow* calRight12
              o->end();
            } // Fl_Group* o
            o->end();
          } // Fl_Group* o
          tab12->end();
        } // Fl_Group* tab12
        { tab13 = new Fl_Group(15, 35, 660, 260, " 13");
          tab13->labelsize(11);
          tab13->user_data((void*)(12));
          tab13->hide();
          { Fl_Group* o = new Fl_Group(20, 45, 645, 245);
            { Fl_Group* o = new Fl_Group(20, 45, 320, 245);
              { Fl_Box* o = new Fl_Box(20, 50, 320, 235);
                o->box(FL_EMBOSSED_FRAME);
                o->labeltype(FL_NO_LABEL);
              } // Fl_Box* o
              { calLeft13 = new calImageWindow(20, 45, 320, 240);
                calLeft13->box(FL_NO_BOX);
                calLeft13->color(FL_BACKGROUND_COLOR);
                calLeft13->selection_color(FL_BACKGROUND_COLOR);
                calLeft13->labeltype(FL_NO_LABEL);
                calLeft13->labelfont(0);
                calLeft13->labelsize(14);
                calLeft13->labelcolor(FL_FOREGROUND_COLOR);
                calLeft13->align(FL_ALIGN_CENTER);
                calLeft13->when(FL_WHEN_RELEASE);
              } // calImageWindow* calLeft13
              o->end();
            } // Fl_Group* o
            { Fl_Group* o = new Fl_Group(345, 45, 320, 240);
              { Fl_Box* o = new Fl_Box(345, 50, 320, 235);
                o->box(FL_EMBOSSED_FRAME);
                o->labeltype(FL_NO_LABEL);
              } // Fl_Box* o
              { calRight13 = new calImageWindow(345, 45, 320, 240);
                calRight13->box(FL_NO_BOX);
                calRight13->color(FL_BACKGROUND_COLOR);
                calRight13->selection_color(FL_BACKGROUND_COLOR);
                calRight13->labeltype(FL_NO_LABEL);
                calRight13->labelfont(0);
                calRight13->labelsize(14);
                calRight13->labelcolor(FL_FOREGROUND_COLOR);
                calRight13->align(FL_ALIGN_CENTER);
                calRight13->when(FL_WHEN_RELEASE);
              } // calImageWindow* calRight13
              o->end();
            } // Fl_Group* o
            o->end();
          } // Fl_Group* o
          tab13->end();
        } // Fl_Group* tab13
        { tab14 = new Fl_Group(15, 35, 660, 260, " 14");
          tab14->labelsize(11);
          tab14->user_data((void*)(13));
          tab14->hide();
          { Fl_Group* o = new Fl_Group(20, 45, 645, 245);
            { Fl_Group* o = new Fl_Group(20, 45, 320, 245);
              { Fl_Box* o = new Fl_Box(20, 50, 320, 235);
                o->box(FL_EMBOSSED_FRAME);
                o->labeltype(FL_NO_LABEL);
              } // Fl_Box* o
              { calLeft14 = new calImageWindow(20, 45, 320, 240);
                calLeft14->box(FL_NO_BOX);
                calLeft14->color(FL_BACKGROUND_COLOR);
                calLeft14->selection_color(FL_BACKGROUND_COLOR);
                calLeft14->labeltype(FL_NO_LABEL);
                calLeft14->labelfont(0);
                calLeft14->labelsize(14);
                calLeft14->labelcolor(FL_FOREGROUND_COLOR);
                calLeft14->align(FL_ALIGN_CENTER);
                calLeft14->when(FL_WHEN_RELEASE);
              } // calImageWindow* calLeft14
              o->end();
            } // Fl_Group* o
            { Fl_Group* o = new Fl_Group(345, 45, 320, 240);
              { Fl_Box* o = new Fl_Box(345, 50, 320, 235);
                o->box(FL_EMBOSSED_FRAME);
                o->labeltype(FL_NO_LABEL);
              } // Fl_Box* o
              { calRight14 = new calImageWindow(345, 45, 320, 240);
                calRight14->box(FL_NO_BOX);
                calRight14->color(FL_BACKGROUND_COLOR);
                calRight14->selection_color(FL_BACKGROUND_COLOR);
                calRight14->labeltype(FL_NO_LABEL);
                calRight14->labelfont(0);
                calRight14->labelsize(14);
                calRight14->labelcolor(FL_FOREGROUND_COLOR);
                calRight14->align(FL_ALIGN_CENTER);
                calRight14->when(FL_WHEN_RELEASE);
              } // calImageWindow* calRight14
              o->end();
            } // Fl_Group* o
            o->end();
          } // Fl_Group* o
          tab14->end();
        } // Fl_Group* tab14
        { tab15 = new Fl_Group(15, 35, 660, 260, " 15");
          tab15->labelsize(11);
          tab15->user_data((void*)(14));
          tab15->hide();
          { Fl_Group* o = new Fl_Group(20, 45, 645, 245);
            { Fl_Group* o = new Fl_Group(20, 45, 320, 245);
              { Fl_Box* o = new Fl_Box(20, 50, 320, 235);
                o->box(FL_EMBOSSED_FRAME);
                o->labeltype(FL_NO_LABEL);
              } // Fl_Box* o
              { calLeft15 = new calImageWindow(20, 45, 320, 240);
                calLeft15->box(FL_NO_BOX);
                calLeft15->color(FL_BACKGROUND_COLOR);
                calLeft15->selection_color(FL_BACKGROUND_COLOR);
                calLeft15->labeltype(FL_NO_LABEL);
                calLeft15->labelfont(0);
                calLeft15->labelsize(14);
                calLeft15->labelcolor(FL_FOREGROUND_COLOR);
                calLeft15->align(FL_ALIGN_CENTER);
                calLeft15->when(FL_WHEN_RELEASE);
              } // calImageWindow* calLeft15
              o->end();
            } // Fl_Group* o
            { Fl_Group* o = new Fl_Group(345, 45, 320, 240);
              { Fl_Box* o = new Fl_Box(345, 50, 320, 235);
                o->box(FL_EMBOSSED_FRAME);
                o->labeltype(FL_NO_LABEL);
              } // Fl_Box* o
              { calRight15 = new calImageWindow(345, 45, 320, 240);
                calRight15->box(FL_NO_BOX);
                calRight15->color(FL_BACKGROUND_COLOR);
                calRight15->selection_color(FL_BACKGROUND_COLOR);
                calRight15->labeltype(FL_NO_LABEL);
                calRight15->labelfont(0);
                calRight15->labelsize(14);
                calRight15->labelcolor(FL_FOREGROUND_COLOR);
                calRight15->align(FL_ALIGN_CENTER);
                calRight15->when(FL_WHEN_RELEASE);
              } // calImageWindow* calRight15
              o->end();
            } // Fl_Group* o
            o->end();
          } // Fl_Group* o
          tab15->end();
        } // Fl_Group* tab15
        { tab16 = new Fl_Group(15, 35, 660, 260, " 16");
          tab16->labelsize(11);
          tab16->user_data((void*)(15));
          tab16->hide();
          { Fl_Group* o = new Fl_Group(20, 45, 645, 245);
            { Fl_Group* o = new Fl_Group(20, 45, 320, 245);
              { Fl_Box* o = new Fl_Box(20, 50, 320, 235);
                o->box(FL_EMBOSSED_FRAME);
                o->labeltype(FL_NO_LABEL);
              } // Fl_Box* o
              { calLeft16 = new calImageWindow(20, 45, 320, 240);
                calLeft16->box(FL_NO_BOX);
                calLeft16->color(FL_BACKGROUND_COLOR);
                calLeft16->selection_color(FL_BACKGROUND_COLOR);
                calLeft16->labeltype(FL_NO_LABEL);
                calLeft16->labelfont(0);
                calLeft16->labelsize(14);
                calLeft16->labelcolor(FL_FOREGROUND_COLOR);
                calLeft16->align(FL_ALIGN_CENTER);
                calLeft16->when(FL_WHEN_RELEASE);
              } // calImageWindow* calLeft16
              o->end();
            } // Fl_Group* o
            { Fl_Group* o = new Fl_Group(345, 45, 320, 240);
              { Fl_Box* o = new Fl_Box(345, 50, 320, 235);
                o->box(FL_EMBOSSED_FRAME);
                o->labeltype(FL_NO_LABEL);
              } // Fl_Box* o
              { calRight16 = new calImageWindow(345, 45, 320, 240);
                calRight16->box(FL_NO_BOX);
                calRight16->color(FL_BACKGROUND_COLOR);
                calRight16->selection_color(FL_BACKGROUND_COLOR);
                calRight16->labeltype(FL_NO_LABEL);
                calRight16->labelfont(0);
                calRight16->labelsize(14);
                calRight16->labelcolor(FL_FOREGROUND_COLOR);
                calRight16->align(FL_ALIGN_CENTER);
                calRight16->when(FL_WHEN_RELEASE);
              } // calImageWindow* calRight16
              o->end();
            } // Fl_Group* o
            o->end();
          } // Fl_Group* o
          tab16->end();
        } // Fl_Group* tab16
        { tab17 = new Fl_Group(15, 35, 660, 260, " 17");
          tab17->labelsize(11);
          tab17->user_data((void*)(16));
          tab17->hide();
          { Fl_Group* o = new Fl_Group(20, 45, 645, 245);
            { Fl_Group* o = new Fl_Group(20, 45, 320, 245);
              { Fl_Box* o = new Fl_Box(20, 50, 320, 235);
                o->box(FL_EMBOSSED_FRAME);
                o->labeltype(FL_NO_LABEL);
              } // Fl_Box* o
              { calLeft17 = new calImageWindow(20, 45, 320, 240);
                calLeft17->box(FL_NO_BOX);
                calLeft17->color(FL_BACKGROUND_COLOR);
                calLeft17->selection_color(FL_BACKGROUND_COLOR);
                calLeft17->labeltype(FL_NO_LABEL);
                calLeft17->labelfont(0);
                calLeft17->labelsize(14);
                calLeft17->labelcolor(FL_FOREGROUND_COLOR);
                calLeft17->align(FL_ALIGN_CENTER);
                calLeft17->when(FL_WHEN_RELEASE);
              } // calImageWindow* calLeft17
              o->end();
            } // Fl_Group* o
            { Fl_Group* o = new Fl_Group(345, 45, 320, 240);
              { Fl_Box* o = new Fl_Box(345, 50, 320, 235);
                o->box(FL_EMBOSSED_FRAME);
                o->labeltype(FL_NO_LABEL);
              } // Fl_Box* o
              { calRight17 = new calImageWindow(345, 45, 320, 240);
                calRight17->box(FL_NO_BOX);
                calRight17->color(FL_BACKGROUND_COLOR);
                calRight17->selection_color(FL_BACKGROUND_COLOR);
                calRight17->labeltype(FL_NO_LABEL);
                calRight17->labelfont(0);
                calRight17->labelsize(14);
                calRight17->labelcolor(FL_FOREGROUND_COLOR);
                calRight17->align(FL_ALIGN_CENTER);
                calRight17->when(FL_WHEN_RELEASE);
              } // calImageWindow* calRight17
              o->end();
            } // Fl_Group* o
            o->end();
          } // Fl_Group* o
          tab17->end();
        } // Fl_Group* tab17
        { tab18 = new Fl_Group(15, 35, 660, 260, " 18");
          tab18->labelsize(11);
          tab18->user_data((void*)(17));
          tab18->hide();
          { Fl_Group* o = new Fl_Group(20, 45, 645, 245);
            { Fl_Group* o = new Fl_Group(20, 45, 320, 245);
              { Fl_Box* o = new Fl_Box(20, 50, 320, 235);
                o->box(FL_EMBOSSED_FRAME);
                o->labeltype(FL_NO_LABEL);
              } // Fl_Box* o
              { calLeft18 = new calImageWindow(20, 45, 320, 240);
                calLeft18->box(FL_NO_BOX);
                calLeft18->color(FL_BACKGROUND_COLOR);
                calLeft18->selection_color(FL_BACKGROUND_COLOR);
                calLeft18->labeltype(FL_NO_LABEL);
                calLeft18->labelfont(0);
                calLeft18->labelsize(14);
                calLeft18->labelcolor(FL_FOREGROUND_COLOR);
                calLeft18->align(FL_ALIGN_CENTER);
                calLeft18->when(FL_WHEN_RELEASE);
              } // calImageWindow* calLeft18
              o->end();
            } // Fl_Group* o
            { Fl_Group* o = new Fl_Group(345, 45, 320, 240);
              { Fl_Box* o = new Fl_Box(345, 50, 320, 235);
                o->box(FL_EMBOSSED_FRAME);
                o->labeltype(FL_NO_LABEL);
              } // Fl_Box* o
              { calRight18 = new calImageWindow(345, 45, 320, 240);
                calRight18->box(FL_NO_BOX);
                calRight18->color(FL_BACKGROUND_COLOR);
                calRight18->selection_color(FL_BACKGROUND_COLOR);
                calRight18->labeltype(FL_NO_LABEL);
                calRight18->labelfont(0);
                calRight18->labelsize(14);
                calRight18->labelcolor(FL_FOREGROUND_COLOR);
                calRight18->align(FL_ALIGN_CENTER);
                calRight18->when(FL_WHEN_RELEASE);
              } // calImageWindow* calRight18
              o->end();
            } // Fl_Group* o
            o->end();
          } // Fl_Group* o
          tab18->end();
        } // Fl_Group* tab18
        { tab19 = new Fl_Group(15, 35, 660, 260, " 19");
          tab19->labelsize(11);
          tab19->user_data((void*)(18));
          tab19->hide();
          { Fl_Group* o = new Fl_Group(20, 45, 645, 245);
            { Fl_Group* o = new Fl_Group(20, 45, 320, 245);
              { Fl_Box* o = new Fl_Box(20, 50, 320, 235);
                o->box(FL_EMBOSSED_FRAME);
                o->labeltype(FL_NO_LABEL);
              } // Fl_Box* o
              { calLeft19 = new calImageWindow(20, 45, 320, 240);
                calLeft19->box(FL_NO_BOX);
                calLeft19->color(FL_BACKGROUND_COLOR);
                calLeft19->selection_color(FL_BACKGROUND_COLOR);
                calLeft19->labeltype(FL_NO_LABEL);
                calLeft19->labelfont(0);
                calLeft19->labelsize(14);
                calLeft19->labelcolor(FL_FOREGROUND_COLOR);
                calLeft19->align(FL_ALIGN_CENTER);
                calLeft19->when(FL_WHEN_RELEASE);
              } // calImageWindow* calLeft19
              o->end();
            } // Fl_Group* o
            { Fl_Group* o = new Fl_Group(345, 45, 320, 240);
              { Fl_Box* o = new Fl_Box(345, 50, 320, 235);
                o->box(FL_EMBOSSED_FRAME);
                o->labeltype(FL_NO_LABEL);
              } // Fl_Box* o
              { calRight19 = new calImageWindow(345, 45, 320, 240);
                calRight19->box(FL_NO_BOX);
                calRight19->color(FL_BACKGROUND_COLOR);
                calRight19->selection_color(FL_BACKGROUND_COLOR);
                calRight19->labeltype(FL_NO_LABEL);
                calRight19->labelfont(0);
                calRight19->labelsize(14);
                calRight19->labelcolor(FL_FOREGROUND_COLOR);
                calRight19->align(FL_ALIGN_CENTER);
                calRight19->when(FL_WHEN_RELEASE);
              } // calImageWindow* calRight19
              o->end();
            } // Fl_Group* o
            o->end();
          } // Fl_Group* o
          tab19->end();
        } // Fl_Group* tab19
        { tab20 = new Fl_Group(15, 35, 660, 260, " 20");
          tab20->labelsize(11);
          tab20->user_data((void*)(19));
          tab20->hide();
          { Fl_Group* o = new Fl_Group(20, 45, 645, 245);
            { Fl_Group* o = new Fl_Group(20, 45, 320, 245);
              { Fl_Box* o = new Fl_Box(20, 50, 320, 235);
                o->box(FL_EMBOSSED_FRAME);
                o->labeltype(FL_NO_LABEL);
              } // Fl_Box* o
              { calLeft20 = new calImageWindow(20, 45, 320, 240);
                calLeft20->box(FL_NO_BOX);
                calLeft20->color(FL_BACKGROUND_COLOR);
                calLeft20->selection_color(FL_BACKGROUND_COLOR);
                calLeft20->labeltype(FL_NO_LABEL);
                calLeft20->labelfont(0);
                calLeft20->labelsize(14);
                calLeft20->labelcolor(FL_FOREGROUND_COLOR);
                calLeft20->align(FL_ALIGN_CENTER);
                calLeft20->when(FL_WHEN_RELEASE);
              } // calImageWindow* calLeft20
              o->end();
            } // Fl_Group* o
            { Fl_Group* o = new Fl_Group(345, 45, 320, 240);
              { Fl_Box* o = new Fl_Box(345, 50, 320, 235);
                o->box(FL_EMBOSSED_FRAME);
                o->labeltype(FL_NO_LABEL);
              } // Fl_Box* o
              { calRight20 = new calImageWindow(345, 45, 320, 240);
                calRight20->box(FL_NO_BOX);
                calRight20->color(FL_BACKGROUND_COLOR);
                calRight20->selection_color(FL_BACKGROUND_COLOR);
                calRight20->labeltype(FL_NO_LABEL);
                calRight20->labelfont(0);
                calRight20->labelsize(14);
                calRight20->labelcolor(FL_FOREGROUND_COLOR);
                calRight20->align(FL_ALIGN_CENTER);
                calRight20->when(FL_WHEN_RELEASE);
              } // calImageWindow* calRight20
              o->end();
            } // Fl_Group* o
            o->end();
          } // Fl_Group* o
          tab20->end();
        } // Fl_Group* tab20
        window_tab->end();
      } // Fl_Tabs* window_tab
      { Fl_Group* o = new Fl_Group(410, 30, 450, 300);
        { Fl_Button* o = load_button = new Fl_Button(685, 110, 90, 25, "Load both");
          load_button->down_box(FL_DOWN_BOX);
          load_button->labelsize(11);
          load_button->callback((Fl_Callback*)cal_load_cb);
          o->user_data((void *)this);
        } // Fl_Button* load_button
        { Fl_Button* o = save_button = new Fl_Button(685, 180, 90, 25, "Save");
          save_button->down_box(FL_DOWN_BOX);
          save_button->labelsize(11);
          save_button->callback((Fl_Callback*)cal_save_image_cb);
          o->user_data((void *)this);
        } // Fl_Button* save_button
        { Fl_Button* o = capture_button = new Fl_Button(685, 45, 90, 25, "Capture");
          capture_button->down_box(FL_DOWN_BOX);
          capture_button->labelsize(11);
          capture_button->callback((Fl_Callback*)cal_capture_cb);
          o->user_data((void *)this);
        } // Fl_Button* capture_button
        { Fl_Button* o = save_all_button = new Fl_Button(685, 205, 90, 25, "Save All");
          save_all_button->down_box(FL_DOWN_BOX);
          save_all_button->labelsize(11);
          save_all_button->callback((Fl_Callback*)cal_save_all_cb);
          o->user_data((void *)this);
        } // Fl_Button* save_all_button
        { Fl_Button* o = delete_button = new Fl_Button(685, 245, 90, 25, "Delete");
          delete_button->down_box(FL_DOWN_BOX);
          delete_button->labelsize(11);
          delete_button->callback((Fl_Callback*)cal_delete_image);
          o->user_data((void *)this);
        } // Fl_Button* delete_button
        { Fl_Button* o = load_left_button = new Fl_Button(685, 85, 45, 25, "Load L");
          load_left_button->down_box(FL_DOWN_BOX);
          load_left_button->labelsize(11);
          load_left_button->callback((Fl_Callback*)cal_load_left_cb);
          o->user_data((void *)this);
        } // Fl_Button* load_left_button
        { Fl_Button* o = load_right_button = new Fl_Button(730, 85, 45, 25, "Load R");
          load_right_button->down_box(FL_DOWN_BOX);
          load_right_button->labelsize(11);
          load_right_button->callback((Fl_Callback*)cal_load_right_cb);
          o->user_data((void *)this);
        } // Fl_Button* load_right_button
        { Fl_Button* o = load_seq_button = new Fl_Button(685, 135, 90, 25, "Load sequence");
          load_seq_button->down_box(FL_DOWN_BOX);
          load_seq_button->labelsize(11);
          load_seq_button->callback((Fl_Callback*)cal_load_seq_cb);
          o->user_data((void *)this);
        } // Fl_Button* load_seq_button
        { Fl_Button* o = stereo_button = new Fl_Button(685, 305, 90, 25, "Stereo");
          stereo_button->down_box(FL_DOWN_BOX);
          stereo_button->labelsize(11);
          stereo_button->callback((Fl_Callback*)do_stereo_cb);
          o->user_data((void *)this);
        } // Fl_Button* stereo_button
        o->end();
      } // Fl_Group* o
      o->end();
    } // Fl_Group* o
    { info_message = new Fl_Output(20, 305, 490, 25);
      info_message->box(FL_BORDER_BOX);
      info_message->color(FL_BACKGROUND_COLOR);
      info_message->labelsize(11);
      info_message->textsize(11);
    } // Fl_Output* info_message
    { Fl_Group* o = new Fl_Group(20, 305, 655, 85);
      { Fl_Button* o = calibrate_button = new Fl_Button(525, 305, 75, 25, "Calibrate");
        calibrate_button->down_box(FL_DOWN_BOX);
        calibrate_button->labelsize(11);
        calibrate_button->callback((Fl_Callback*)cal_calibrate_cb);
        o->user_data((void *)this);
      } // Fl_Button* calibrate_button
      { Fl_Button* o = save_params_button = new Fl_Button(610, 305, 65, 25, "Save params");
        save_params_button->down_box(FL_DOWN_BOX);
        save_params_button->labelsize(11);
        save_params_button->callback((Fl_Callback*)cal_save_params_cb);
        o->user_data((void *)this);
      } // Fl_Button* save_params_button
      { Fl_Button* o = done_button = new Fl_Button(525, 335, 60, 25, "Done");
        done_button->down_box(FL_DOWN_BOX);
        done_button->labelsize(11);
        done_button->callback((Fl_Callback*)cal_ok_cb);
        o->user_data((void *)this);
      } // Fl_Button* done_button
      { Fl_Button* o = epi_button = new Fl_Button(610, 335, 60, 25, "Epi check");
        epi_button->down_box(FL_DOWN_BOX);
        epi_button->labelsize(11);
        epi_button->callback((Fl_Callback*)cal_epipolar_cb);
        o->user_data((void *)this);
      } // Fl_Button* epi_button
      o->end();
    } // Fl_Group* o
    { Fl_Group* o = new Fl_Group(20, 340, 490, 60);
      { Fl_Box* o = new Fl_Box(20, 340, 290, 50);
        o->box(FL_ENGRAVED_FRAME);
      } // Fl_Box* o
      { fixed_aspect_button = new Fl_Check_Button(215, 340, 25, 25, "Fixed Aspect");
        fixed_aspect_button->down_box(FL_DOWN_BOX);
        fixed_aspect_button->value(1);
        fixed_aspect_button->labelsize(11);
        fixed_aspect_button->callback((Fl_Callback*)cal_fixed_aspect_cb);
      } // Fl_Check_Button* fixed_aspect_button
      { fixed_kappa2_button = new Fl_Check_Button(30, 345, 25, 25, "Kappa2");
        fixed_kappa2_button->down_box(FL_DOWN_BOX);
        fixed_kappa2_button->value(1);
        fixed_kappa2_button->labelsize(11);
        fixed_kappa2_button->callback((Fl_Callback*)cal_fixed_kappa2_cb);
      } // Fl_Check_Button* fixed_kappa2_button
      { fixed_kappa3_button = new Fl_Check_Button(85, 345, 25, 25, "Kappa3");
        fixed_kappa3_button->down_box(FL_DOWN_BOX);
        fixed_kappa3_button->labelsize(11);
        fixed_kappa3_button->callback((Fl_Callback*)cal_fixed_kappa3_cb);
      } // Fl_Check_Button* fixed_kappa3_button
      { fixed_tau_button = new Fl_Check_Button(140, 345, 25, 25, "Tau1, Tau2");
        fixed_tau_button->down_box(FL_DOWN_BOX);
        fixed_tau_button->labelsize(11);
        fixed_tau_button->callback((Fl_Callback*)cal_fixed_tau_cb);
      } // Fl_Check_Button* fixed_tau_button
      { zero_disparity_button = new Fl_Check_Button(215, 355, 25, 25, "Zero disparity");
        zero_disparity_button->down_box(FL_DOWN_BOX);
        zero_disparity_button->value(1);
        zero_disparity_button->labelsize(11);
        zero_disparity_button->callback((Fl_Callback*)cal_zero_disparity_cb);
      } // Fl_Check_Button* zero_disparity_button
      o->end();
    } // Fl_Group* o
    { Fl_Group* o = new Fl_Group(345, 340, 175, 270);
      { Fl_Box* o = new Fl_Box(345, 340, 150, 50, "label");
        o->box(FL_ENGRAVED_FRAME);
        o->labeltype(FL_NO_LABEL);
      } // Fl_Box* o
      { user_check_size = new Fl_Value_Input(360, 360, 30, 20, "Size mm");
        user_check_size->labelsize(11);
        user_check_size->maximum(1000);
        user_check_size->step(1);
        user_check_size->value(100);
        user_check_size->textsize(11);
        user_check_size->callback((Fl_Callback*)cal_check_size_cb);
        user_check_size->align(FL_ALIGN_TOP);
      } // Fl_Value_Input* user_check_size
      { user_check_x = new Fl_Value_Input(405, 360, 30, 20, "Ints X");
        user_check_x->labelsize(11);
        user_check_x->maximum(100);
        user_check_x->step(1);
        user_check_x->value(8);
        user_check_x->textsize(11);
        user_check_x->callback((Fl_Callback*)cal_check_x_cb);
        user_check_x->align(FL_ALIGN_TOP);
      } // Fl_Value_Input* user_check_x
      { user_check_y = new Fl_Value_Input(445, 360, 30, 20, "Ints Y");
        user_check_y->labelsize(11);
        user_check_y->maximum(100);
        user_check_y->step(1);
        user_check_y->value(6);
        user_check_y->textsize(11);
        user_check_y->callback((Fl_Callback*)cal_check_y_cb);
        user_check_y->align(FL_ALIGN_TOP);
      } // Fl_Value_Input* user_check_y
      o->end();
    } // Fl_Group* o
    stereo_calibration->end();
  } // Fl_Window* stereo_calibration
}
Exemple #24
0
/*     Fl_Group( X, Y, W, H, L) */
Chain::Chain ( ) : Fl_Group( 0, 0, 100, 100, "")

{
    /* not really deleting here, but reusing this variable */
    _deleting = true;

    int X = 0;
    int Y = 0;
    int W = 100;
    int H = 100;

/*     _outs = 1; */
/*     _ins = 1; */

    _configure_outputs_callback = NULL;

    _strip = NULL;

    _name = NULL;

    labelsize( 10 );
    align( FL_ALIGN_TOP );

    { Fl_Flip_Button* o  = tab_button = new Fl_Flip_Button( X, Y, W, 16, "chain/controls");
        o->type(1);
        o->labelsize( 12 );
        o->callback( cb_handle, this );
    }

    Y += 18;
    H -= 18;

    { Fl_Group *o = chain_tab = new Fl_Group( X, Y, W, H, "" );
        o->labeltype( FL_NO_LABEL );
        o->box( FL_FLAT_BOX );
//        o->color( fl_darker( FL_BACKGROUND_COLOR ) );
//        o->color( FL_BACKGROUND_COLOR );
//        o->box( FL_NO_BOX );
        { Fl_Packscroller *o = new Fl_Packscroller( X, Y, W, H );
            o->color( FL_BACKGROUND_COLOR );
//            o->box( FL_FLAT_BOX );
            o->box( FL_THIN_UP_BOX );
            o->type( Fl_Scroll::VERTICAL );
            { Fl_Pack *o = modules_pack = new Fl_Pack( X, Y, W, H );
                o->type( Fl_Pack::VERTICAL );
                o->spacing( 6 );
                o->end();
                Fl_Group::current()->resizable( o );
            }
            o->end();
        }
        o->end();
    }
    { Fl_Group *o = control_tab = new Fl_Group( X, Y, W, H, "" );
        o->box( FL_FLAT_BOX );
        o->color( FL_BACKGROUND_COLOR );
        o->labeltype( FL_NO_LABEL );
        o->hide();
        { Fl_Scroll *o = new Fl_Scroll( X, Y, W, H );
            o->color( FL_BACKGROUND_COLOR );
            o->box( FL_NO_BOX );
            o->type( Fl_Scroll::VERTICAL );
            { Fl_Pack *o = controls_pack = new Fl_Pack( X, Y, W, H );
                o->type( Fl_Pack::VERTICAL );
                o->spacing( 5 );
//            o->color( FL_RED );
                o->end();
                Fl_Group::current()->resizable( o );
            }
            o->end();
            Fl_Group::current()->resizable( o );
        }
        o->end();
        o->hide();
        Fl_Group::current()->resizable( o );
    }
    end();

    log_create();

    _deleting = false;
}
Exemple #25
0
gdEditor::gdEditor(SampleChannel *ch)
  : gWindow(640, 480),
    ch(ch)
{
  set_non_modal();

  if (G_Conf.sampleEditorX)
    resize(G_Conf.sampleEditorX, G_Conf.sampleEditorY, G_Conf.sampleEditorW, G_Conf.sampleEditorH);

  /* top bar: grid and zoom tools */

  Fl_Group *bar = new Fl_Group(8, 8, w()-16, 20);
  bar->begin();
    grid    = new gChoice(bar->x(), bar->y(), 50, 20);
    snap    = new gCheck(grid->x()+grid->w()+4, bar->y()+4, 12, 12);
    zoomOut = new gClick(bar->x()+bar->w()-20, bar->y(), 20, 20, "", zoomOutOff_xpm, zoomOutOn_xpm);
    zoomIn  = new gClick(zoomOut->x()-24, bar->y(), 20, 20, "", zoomInOff_xpm, zoomInOn_xpm);
  bar->end();
  bar->resizable(new gBox(grid->x()+grid->w()+4, bar->y(), 80, bar->h()));

  /* waveform */

  waveTools = new gWaveTools(8, 36, w()-16, h()-120, ch);
  waveTools->end();

  /* other tools */

  Fl_Group *tools = new Fl_Group(8, waveTools->y()+waveTools->h()+8, w()-16, 130);
  tools->begin();
    volume        = new gDial (tools->x()+50,                    tools->y(), 20, 20, "Volume");
    volumeNum     = new gInput(volume->x()+volume->w()+4,        tools->y(), 46, 20, "dB");

    boost         = new gDial (volumeNum->x()+volumeNum->w()+108, tools->y(), 20, 20, "Boost");
    boostNum      = new gInput(boost->x()+boost->w()+4,           tools->y(), 44, 20, "dB");

    normalize     = new gClick(boostNum->x()+boostNum->w()+54,   tools->y(), 70, 20, "Normalize");
    pan           = new gDial (normalize->x()+normalize->w()+40, tools->y(), 20, 20, "Pan");
    panNum        = new gInput(pan->x()+pan->w()+4,              tools->y(), 45, 20, "%");

    pitch         = new gDial (tools->x()+50,                       volume->y()+volume->h()+4, 20, 20, "Pitch");
    pitchNum      = new gInput(pitch->x()+pitch->w()+4,             volume->y()+volume->h()+4, 46, 20);
    pitchToBar    = new gClick(pitchNum->x()+pitchNum->w()+4,       volume->y()+volume->h()+4, 60, 20, "To bar");
    pitchToSong   = new gClick(pitchToBar->x()+pitchToBar->w()+4,   volume->y()+volume->h()+4, 60, 20, "To song");
    pitchHalf     = new gClick(pitchToSong->x()+pitchToSong->w()+4, volume->y()+volume->h()+4, 20, 20, "", divideOff_xpm, divideOn_xpm);
    pitchDouble   = new gClick(pitchHalf->x()+pitchHalf->w()+4,     volume->y()+volume->h()+4, 20, 20, "", multiplyOff_xpm, multiplyOn_xpm);
    pitchReset    = new gClick(pitchDouble->x()+pitchDouble->w()+4, volume->y()+volume->h()+4, 46, 20, "Reset");
    reload        = new gClick(pitchReset->x()+pitchReset->w()+4,   volume->y()+volume->h()+4, 70, 20, "Reload");

    chanStart     = new gInput(tools->x()+60,                   pitch->y()+pitch->h()+4, 60, 20, "Range");
    chanEnd       = new gInput(chanStart->x()+chanStart->w()+4, pitch->y()+pitch->h()+4, 60, 20, "");
    resetStartEnd = new gClick(chanEnd->x()+chanEnd->w()+4,     pitch->y()+pitch->h()+4, 60, 20, "Reset");

  tools->end();
  tools->resizable(new gBox(panNum->x()+panNum->w()+4, tools->y(), 80, tools->h()));

  /* grid tool setup */

  grid->add("(off)");
  grid->add("2");
  grid->add("3");
  grid->add("4");
  grid->add("6");
  grid->add("8");
  grid->add("16");
  grid->add("32");
  grid->add("64");
  grid->value(G_Conf.sampleEditorGridVal);
  grid->callback(cb_changeGrid, (void*)this);

  snap->value(G_Conf.sampleEditorGridOn);
  snap->callback(cb_enableSnap, (void*)this);

  /* TODO - redraw grid if != (off) */

  char buf[16];
  sprintf(buf, "%d", ch->begin / 2); // divided by 2 because stereo
  chanStart->value(buf);
  chanStart->type(FL_INT_INPUT);
  chanStart->callback(cb_setChanPos, this);

  /* inputs callback: fire when they lose focus or Enter is pressed. */

  chanStart->when(FL_WHEN_RELEASE | FL_WHEN_ENTER_KEY);
  chanEnd  ->when(FL_WHEN_RELEASE | FL_WHEN_ENTER_KEY);

  sprintf(buf, "%d", ch->end / 2);  // divided by 2 because stereo
  chanEnd->value(buf);
  chanEnd->type(FL_INT_INPUT);
  chanEnd->callback(cb_setChanPos, this);

  resetStartEnd->callback(cb_resetStartEnd, this);

  volume->callback(cb_setVolume, (void*)this);
  volume->value(ch->guiChannel->vol->value());

  float dB = 20*log10(ch->volume);   // dB = 20*log_10(linear value)
  if (dB > -INFINITY) sprintf(buf, "%.2f", dB);
  else                sprintf(buf, "-inf");
  volumeNum->value(buf);
  volumeNum->align(FL_ALIGN_RIGHT);
  volumeNum->callback(cb_setVolumeNum, (void*)this);

  boost->range(1.0f, 10.0f);
  boost->callback(cb_setBoost, (void*)this);
  if (ch->boost > 10.f)
    boost->value(10.0f);
  else
    boost->value(ch->boost);
  boost->when(FL_WHEN_CHANGED | FL_WHEN_RELEASE);

  float boost = 20*log10(ch->boost); // dB = 20*log_10(linear value)
  sprintf(buf, "%.2f", boost);
  boostNum->value(buf);
  boostNum->align(FL_ALIGN_RIGHT);
  boostNum->callback(cb_setBoostNum, (void*)this);

  normalize->callback(cb_normalize, (void*)this);

  pan->range(0.0f, 2.0f);
  pan->callback(cb_panning, (void*)this);

  pitch->range(0.01f, 4.0f);
  pitch->value(ch->pitch);
  pitch->callback(cb_setPitch, (void*)this);
  pitch->when(FL_WHEN_RELEASE);

  sprintf(buf, "%.4f", ch->pitch); // 4 digits
  pitchNum->value(buf);
  pitchNum->align(FL_ALIGN_RIGHT);
  pitchNum->callback(cb_setPitchNum, (void*)this);
  pitchNum->when(FL_WHEN_RELEASE | FL_WHEN_ENTER_KEY);

  pitchToBar->callback(cb_setPitchToBar, (void*)this);
  pitchToSong->callback(cb_setPitchToSong, (void*)this);
  pitchHalf->callback(cb_setPitchHalf, (void*)this);
  pitchDouble->callback(cb_setPitchDouble, (void*)this);
  pitchReset->callback(cb_resetPitch, (void*)this);

  reload->callback(cb_reload, (void*)this);

  zoomOut->callback(cb_zoomOut, (void*)this);
  zoomIn->callback(cb_zoomIn, (void*)this);

  /* logical samples (aka takes) cannot be reloaded. So far. */

  if (ch->wave->isLogical)
    reload->deactivate();

  if (ch->panRight < 1.0f) {
    char buf[8];
    sprintf(buf, "%d L", (int) std::abs((ch->panRight * 100.0f) - 100));
    pan->value(ch->panRight);
    panNum->value(buf);
  }
  else if (ch->panRight == 1.0f && ch->panLeft == 1.0f) {
    pan->value(1.0f);
    panNum->value("C");
  }
  else {
    char buf[8];
    sprintf(buf, "%d R", (int) std::abs((ch->panLeft * 100.0f) - 100));
    pan->value(2.0f - ch->panLeft);
    panNum->value(buf);
  }

  panNum->align(FL_ALIGN_RIGHT);
  panNum->readonly(1);
  panNum->cursor_color(FL_WHITE);

  gu_setFavicon(this);
  size_range(640, 480);
  resizable(waveTools);

  label(ch->wave->name.c_str());

  show();
}
void CInstaller::Init(int argc, char **argv)
{
    const int buttonsy = WindowH()-ButtonHeight()-ButtonHSpacing();
    
    m_pMainWindow = new Fl_Double_Window(WindowW(), WindowH(), "Nixstaller");
    m_pMainWindow->callback(CancelCB, this);

    Fl_Group *maingroup = new Fl_Group(0, 0, WindowW(), WindowH());
    maingroup->resizable(NULL);
    maingroup->box(FL_FLAT_BOX);
    maingroup->color(fl_lighter(FL_BACKGROUND_COLOR));

    Fl_Pack *mainpack = new Fl_Pack(0, 0, WindowW(), WindowH()-90);
    mainpack->resizable(NULL);
    mainpack->type(Fl_Pack::VERTICAL);
    
    CreateHeader();
    
    m_pWizard = new Fl_Wizard(0, m_pHeaderGroup->h(), WindowW(),
                              (buttonsy-m_pHeaderGroup->h()-ButtonHSpacing()));
    m_pWizard->box(FL_ENGRAVED_BOX);
    m_pWizard->end();

    mainpack->end();

    m_pCancelButton = new Fl_Button(ButtonWOffset(), buttonsy, 0, ButtonHeight(), GetTranslation("Cancel"));
    SetButtonWidth(m_pCancelButton);
    m_pCancelButton->callback(CancelCB, this);
    
    m_pButtonPack = new Fl_Pack(0, buttonsy, 0, ButtonHeight());
    m_pButtonPack->type(Fl_Pack::HORIZONTAL);
    m_pButtonPack->spacing(ButtonWSpacing());
    
    m_pBackButton = new Fl_Button(0, buttonsy, 0, ButtonHeight(),
                                  CreateText("@<-    %s", GetTranslation("Back")));
    SetButtonWidth(m_pBackButton);
    m_pBackButton->callback(BackCB, this);
    
    m_pNextButton = new Fl_Button(0, buttonsy, 0, ButtonHeight(),
                                  CreateText("%s    @->", GetTranslation("Next")));
    SetButtonWidth(m_pNextButton);
    m_pNextButton->callback(NextCB, this);
    
    m_pButtonPack->end();
    UpdateButtonPack();
    
    maingroup->end();
    
    CBaseInstall::Init(argc, argv);
    
    Fl_Shared_Image *img = Fl_Shared_Image::get(GetLogoFName());
    if (img)
    {
        m_pLogoBox = new Fl_Box(HeaderSpacing(), HeaderSpacing(), img->w()+HeaderSpacing(), img->h());
        m_pLogoBox->align(FL_ALIGN_TOP | FL_ALIGN_INSIDE);
        m_pLogoBox->image(img);
        m_pHeaderGroup->add(m_pLogoBox);
    }

    int size = m_pWizard->children();
    for (int i=0; i<size; i++)
    {
        CInstallScreen *screen = GetScreen(m_pWizard->child(i));
        if (screen->CanActivate())
        {
            ActivateScreen(screen);
            break;
        }
    }
    
    m_pMainWindow->end();
    m_pMainWindow->show(argc, argv);
}
Exemple #27
0
TrainWindow::TrainWindow(const int x, const int y) : Fl_Double_Window(x,y,800,600,"Train and Roller Coaster")
{
	// make all of the widgets
	begin();	// add to this widget
	{
		int pty=5;			// where the last widgets were drawn. From top down

		trainView = new TrainView(5,5,590,590);
		trainView->tw = this;
		trainView->world = &world;
		this->resizable(trainView);

		// to make resizing work better, put all the widgets in a group
		widgets = new Fl_Group(600,5,190,590);
		widgets->begin();

		runButton = new Fl_Button(605,pty,60,20,"Run");
		togglify(runButton);

		Fl_Button* fb = new Fl_Button(700,pty,25,20,"@>>");
		fb->callback((Fl_Callback*)forwCB,this);
		Fl_Button* rb = new Fl_Button(670,pty,25,20,"@<<");
		rb->callback((Fl_Callback*)backCB,this);
		
		arcLength = new Fl_Button(730,pty,65,20,"ArcLength");
		togglify(arcLength,1);
  
		pty+=25;
		speed = new Fl_Value_Slider(655,pty,140,20,"speed");
		speed->range(0,10);
		speed->value(2);
		speed->align(FL_ALIGN_LEFT);
		speed->type(FL_HORIZONTAL);

		pty += 30;

		// camera buttons - in a radio button group
		Fl_Group* camGroup = new Fl_Group(600,pty,195,20);
		camGroup->begin();
		worldCam = new Fl_Button(605, pty, 60, 20, "World");
        worldCam->type(FL_RADIO_BUTTON);		// radio button
        worldCam->value(1);			// turned on
        worldCam->selection_color((Fl_Color)3); // yellow when curpsed
		worldCam->callback((Fl_Callback*)damageCB,this);
		trainCam = new Fl_Button(670, pty, 60, 20, "Train");
        trainCam->type(FL_RADIO_BUTTON);
        trainCam->value(0);
        trainCam->selection_color((Fl_Color)3);
		trainCam->callback((Fl_Callback*)damageCB,this);
		topCam = new Fl_Button(735, pty, 60, 20, "Top");
        topCam->type(FL_RADIO_BUTTON);
        topCam->value(0);
        topCam->selection_color((Fl_Color)3);
		topCam->callback((Fl_Callback*)damageCB,this);
		camGroup->end();

		pty += 30;

		// browser to select spline types
		// TODO: make sure these choices are the same as what the code supports
		splineBrowser = new Fl_Browser(605,pty,120,75,"Spline Type");
		splineBrowser->type(2);		// select
		splineBrowser->add("Linear");
		splineBrowser->add("Cardinal Cubic");
		splineBrowser->select(2);
		splineBrowser->callback((Fl_Callback*)changeSmoothness,this);
		pty += 110;

		// add and delete points
		Fl_Button* ap = new Fl_Button(605,pty,80,20,"Add Point");
		ap->callback((Fl_Callback*)addPointCB,this);
		Fl_Button* dp = new Fl_Button(690,pty,80,20,"Delete Point");
		dp->callback((Fl_Callback*)deletePointCB,this);

		pty += 25;
		// reset the points
		resetButton = new Fl_Button(735,pty,60,20,"Reset");
		resetButton->callback((Fl_Callback*)resetCB,this);
		Fl_Button* loadb = new Fl_Button(605,pty,60,20,"Load");
		loadb->callback((Fl_Callback*) loadCB, this);
		Fl_Button* saveb = new Fl_Button(670,pty,60,20,"Save");
		saveb->callback((Fl_Callback*) saveCB, this);

		pty += 25;
		// roll the points
		Fl_Button* rx = new Fl_Button(605,pty,30,20,"R+X");
		rx->callback((Fl_Callback*)rpxCB,this);
		Fl_Button* rxp = new Fl_Button(635,pty,30,20,"R-X");
		rxp->callback((Fl_Callback*)rmxCB,this);
		Fl_Button* rz = new Fl_Button(670,pty,30,20,"R+Z");
		rz->callback((Fl_Callback*)rpzCB,this);
		Fl_Button* rzp = new Fl_Button(700,pty,30,20,"R-Z");
		rzp->callback((Fl_Callback*)rmzCB,this);

		pty+=40;

		// TODO: add widgets for all of your fancier features here
		tension = new Fl_Value_Slider(670,pty,120,20,"tension s");
		tension->range(0,6);
		tension->value(2);
		tension->align(FL_ALIGN_LEFT);
		tension->type(FL_HORIZONTAL);
		tension->callback((Fl_Callback*)damageCB,this);
		
		pty += 30;
		physics =  new Fl_Value_Slider(670,pty,120,20,"Physics");
		physics->range(2,15);
		physics->value(4.5);
		physics->align(FL_ALIGN_LEFT);
		physics->type(FL_HORIZONTAL);
		physics->callback((Fl_Callback*)damageCB,this);


		pty+=30;
		Physics = new Fl_Button(605, pty, 60, 20, "Physics");
		togglify(Physics);

		pty+=30;
		Fl_Button* at = new Fl_Button(605,pty,80,20,"Add Train");
		at->callback((Fl_Callback*)addTrainCB,this);

		Fl_Button* dt = new Fl_Button(690,pty,80,20,"Delete Train");
		dt->callback((Fl_Callback*)deleteTrainCB,this);
		
		pty+=20;
		carBrowser = new Fl_Browser(605,pty,120,55,"Train Type");
		carBrowser->type(2);		// select
		carBrowser->add("Classical");
		carBrowser->add("Roller Coaster");
		carBrowser->select(2);
		carBrowser->callback((Fl_Callback*)damageCB,this);
		
		pty+=80;
		Fog = new Fl_Button(605,pty,65,20,"Fog");
		togglify(Fog,0);

		pty+= 30;
		FOG_SLIDER =  new Fl_Value_Slider(655,pty,120,20,"density");
		FOG_SLIDER->range(0.5,6);
		FOG_SLIDER->value(1.5);
		FOG_SLIDER->align(FL_ALIGN_LEFT);
		FOG_SLIDER->type(FL_HORIZONTAL);
		FOG_SLIDER->callback((Fl_Callback*)damageCB,this);

		// we need to make a little phantom widget to have things resize correctly
		Fl_Box* resizebox = new Fl_Box(600,595,200,5);
		widgets->resizable(resizebox);

		widgets->end();
	}
	end();	// done adding to this widget
	// set up callback on idle
	Fl::add_idle((void (*)(void*))runButtonCB,this);
}
Exemple #28
0
Fl_Group* gdSampleEditor::createBottomBar(int x, int y, int h)
{
  Fl_Group* g = new Fl_Group(8, waveTools->y()+waveTools->h()+8, w()-16, h);
  g->begin();
    Fl_Group* previewBox = createPreviewBox(g->x(), g->y(), g->h());

    geBox* divisor1 = new geBox(previewBox->x()+previewBox->w()+8, g->y(), 1, g->h());
    divisor1->box(FL_BORDER_BOX);

    Fl_Group* opTools = createOpTools(divisor1->x()+divisor1->w()+12, g->y(), g->h());

    geBox* divisor2 = new geBox(opTools->x()+opTools->w()+8, g->y(), 1, g->h());
    divisor2->box(FL_BORDER_BOX);

    createInfoBox(divisor2->x()+divisor2->w()+8, g->y(), g->h());

  g->end();
  g->resizable(0);

  return g;
}
Exemple #29
0
Fl_Group* gdSampleEditor::createOpTools(int x, int y, int h)
{
  Fl_Group* g = new Fl_Group(x, y, 572, h);
  g->begin();
  g->resizable(0);
    volumeTool = new geVolumeTool(g->x(), g->y(), ch);
    boostTool  = new geBoostTool(volumeTool->x()+volumeTool->w()+4, g->y(), ch);
    panTool    = new gePanTool(boostTool->x()+boostTool->w()+4, g->y(), ch);
   
    pitchTool = new gePitchTool(g->x(), panTool->y()+panTool->h()+8, ch);

    rangeTool = new geRangeTool(g->x(), pitchTool->y()+pitchTool->h()+8, ch);
    shiftTool = new geShiftTool(rangeTool->x()+rangeTool->w()+4, pitchTool->y()+pitchTool->h()+8, ch);
    reload    = new geButton(g->x()+g->w()-70, shiftTool->y(), 70, 20, "Reload");
  g->end();

  if (ch->wave->isLogical()) // Logical samples (aka takes) cannot be reloaded.
    reload->deactivate();

  reload->callback(cb_reload, (void*)this);

  return g;
}
co_rc_t console_window_t::start()
{
	window = new console_main_window_t(this);
	window->callback(console_window_cb, this);

	Fl_Menu_Item console_menuitems[] = {
		{ "File", 0, 0, 0, FL_SUBMENU },
		{ "Quit", 0, (Fl_Callback *)console_quit_cb, this },
		{ 0 },

		{ "Monitor", 0, 0, 0, FL_SUBMENU },
		{ "Select", 0, (Fl_Callback *)console_select_cb, this, FL_MENU_DIVIDER },
		{ "Attach", 0, (Fl_Callback *)console_attach_cb, this, },
		{ "Detach", 0, (Fl_Callback *)console_detach_cb, this, FL_MENU_DIVIDER },
		{ "Pause", 0, (Fl_Callback *)console_pause_cb, this,  },
		{ "Resume", 0, (Fl_Callback *)console_resume_cb, this, },
		{ "Terminate", 0, (Fl_Callback *)console_terminate_cb, this, },
		{ "Send Ctrl-Alt-Del", 0, (Fl_Callback *)console_send_ctrl_alt_del_cb, this, },
		{ 0 },

		{ "Inspect", 0, 0, 0, FL_SUBMENU },
		{ 0 },

		{ "Help", 0, 0, 0, FL_SUBMENU },
		{ "About", 0, (Fl_Callback *)console_about_cb, this, },
		{ 0 },

		{ 0 }
	};

	unsigned int i;
	for (i=0; i < sizeof(console_menuitems)/sizeof(console_menuitems[0]); i++)
		console_menuitems[i].user_data((void *)this);

	int swidth = 640;
	int sheight = 480;

	menu = new Fl_Menu_Bar(0, 0, swidth, 30);
	menu->box(FL_UP_BOX);
	menu->align(FL_ALIGN_CENTER);
	menu->when(FL_WHEN_RELEASE_ALWAYS);
	menu->copy(console_menuitems, window);

	Fl_Group *tile = new Fl_Group(0, 30, swidth, sheight-30);
	widget = new console_widget_t(0, 30, swidth, sheight-120);
	text_widget = new Fl_Text_Display(0, sheight-120+30, swidth, 70);

	Fl_Group *tile2 = new Fl_Group(0, sheight-120+30, swidth, 90);
	text_widget->buffer(new Fl_Text_Buffer());
	text_widget->insert_position(0);

	Fl_Box *box = new Fl_Box(0, sheight-20, swidth, 20);
	box->label("");
	box->align(FL_ALIGN_LEFT | FL_ALIGN_INSIDE); 
	tile2->end();

	tile->resizable(widget);
	tile->end();

	window->resizable(tile);
	window->end();
	window->show();

	menu_item_activate(console_select_cb);
	menu_item_deactivate(console_pause_cb);
	menu_item_deactivate(console_resume_cb);
	menu_item_deactivate(console_terminate_cb);
	menu_item_deactivate(console_detach_cb);
	menu_item_deactivate(console_attach_cb);

	// Default Font is "Terminal" with size 18
	// Sample WinNT environment: set COLINUX_CONSOLE_FONT=Lucida Console:12
	// Change only font size:    set COLINUX_CONSOLE_FONT=:12
	char * env_font = getenv ("COLINUX_CONSOLE_FONT");
	if (env_font) {
		char *p = strchr (env_font, ':');

		if (p) {
			int size = atoi (p+1);
			if (size >= 4 && size <= 24) {
				// Set size
				widget->set_font_size(size);
			}
			*p = 0; // End for Fontname
		}
		
		// Set new font style
		if (strlen (env_font)) {
			// Remember: set_font need a non stack buffer!
			// Environment is global static.
			Fl::set_font(FL_SCREEN, env_font);

			// Now check font width
			fl_font(FL_SCREEN, 18); // Use default High for test here
			if ((int)fl_width('i') != (int)fl_width('W')) {
				Fl::set_font(FL_SCREEN, "Terminal"); // Restore standard font
				log("%s: is not fixed font. Using 'Terminal'\n", env_font);
			}
		}
	}

	log("Cooperative Linux console started\n");
	
	if (start_parameters.attach_id != CO_INVALID_ID)
		attached_id = start_parameters.attach_id;

	if (attached_id == CO_INVALID_ID)
		attached_id = find_first_monitor();

	if (attached_id != CO_INVALID_ID)
		attach(); /* Ignore errors, as we can attach latter */

	return CO_RC(OK);
}