|
- // generated by Fast Light User Interface Designer (fluid) version 1.0300
-
- #include "external/zynaddsubfx/UI/PartUI.h"
- //Copyright (c) 2002-2005 Nasca Octavian Paul
- //License: GNU GPL version 2 or later
-
- Fl_Group* PartSysEffSend::make_window() {
- { syseffsend = new Fl_Group(0, 0, 100, 100);
- syseffsend->box(FL_NO_BOX);
- syseffsend->color(FL_BACKGROUND_COLOR);
- syseffsend->selection_color(FL_BACKGROUND_COLOR);
- syseffsend->labeltype(FL_NO_LABEL);
- syseffsend->labelfont(0);
- syseffsend->labelsize(14);
- syseffsend->labelcolor(FL_FOREGROUND_COLOR);
- syseffsend->user_data((void*)(this));
- syseffsend->align(Fl_Align(FL_ALIGN_TOP));
- syseffsend->when(FL_WHEN_RELEASE);
- { Fl_Osc_Dial* o = widget = new Fl_Osc_Dial(0, 0, 25, 25, "01");
- widget->box(FL_ROUND_UP_BOX);
- widget->color(FL_BACKGROUND_COLOR);
- widget->selection_color(FL_INACTIVE_COLOR);
- widget->labeltype(FL_NORMAL_LABEL);
- widget->labelfont(1);
- widget->labelsize(10);
- widget->labelcolor(FL_FOREGROUND_COLOR);
- widget->maximum(127);
- widget->step(1);
- widget->align(Fl_Align(130));
- widget->when(FL_WHEN_CHANGED);
- o->size(25,25);
- o->alt_init("/","Psysefxvol"+to_s(neff)+"/part"+to_s(npart));
- o->mark_dead();
- char tmp[10];snprintf(tmp,10,"%d",neff+1);o->copy_label(tmp);
- } // Fl_Osc_Dial* widget
- syseffsend->end();
- } // Fl_Group* syseffsend
- return syseffsend;
- }
-
- PartSysEffSend::PartSysEffSend(int x,int y, int w, int h, const char *label):Fl_Group(x,y,w,h,label) {
- neff=0;
- npart=0;
- }
-
- void PartSysEffSend::init(int npart_,int neff_) {
- npart=npart_;
- neff=neff_;
- make_window();
- syseffsend->show();
- end();
- }
-
- void PartSysEffSend::rebase(int part) {
- auto *osc = widget->osc;
- std::string old = "Psysefxvol"+to_s(neff)+"/part"+to_s(npart);
- std::string next = "Psysefxvol"+to_s(neff)+"/part"+to_s(part);
- widget->ext = next;
- osc->renameLink("/"+old, "/"+next, widget);
- osc->requestValue("/"+next);
- npart = part;
- }
-
- PartSysEffSend::~PartSysEffSend() {
- syseffsend->hide();
- //delete(syseffsend);
- }
-
- void PartKitItem::cb_m_i(Fl_Osc_Button* o, void*) {
- o->oscWrite("captureMin");
- minkcounter->update();
- maxkcounter->update();
- }
- void PartKitItem::cb_m(Fl_Osc_Button* o, void* v) {
- ((PartKitItem*)(o->parent()->parent()->user_data()))->cb_m_i(o,v);
- }
-
- void PartKitItem::cb_M_i(Fl_Osc_Button* o, void*) {
- o->oscWrite("captureMax");
- minkcounter->update();
- maxkcounter->update();
- }
- void PartKitItem::cb_M(Fl_Osc_Button* o, void* v) {
- ((PartKitItem*)(o->parent()->parent()->user_data()))->cb_M_i(o,v);
- }
-
- void PartKitItem::cb_R_i(Fl_Button*, void*) {
- minkcounter->value(0);
- minkcounter->do_callback();
- maxkcounter->value(127);
- maxkcounter->do_callback();
- }
- void PartKitItem::cb_R(Fl_Button* o, void* v) {
- ((PartKitItem*)(o->parent()->parent()->user_data()))->cb_R_i(o,v);
- }
-
- void PartKitItem::cb_adeditbutton_i(Fl_Button*, void*) {
- if (Fl::event_shift())
- partui->showvoiceparams(n, true);
- else if (Fl::event_ctrl())
- partui->showvoiceparams(n, false);
- else
- partui->showparameters(n,0);
- }
- void PartKitItem::cb_adeditbutton(Fl_Button* o, void* v) {
- ((PartKitItem*)(o->parent()->parent()->user_data()))->cb_adeditbutton_i(o,v);
- }
-
- void PartKitItem::cb_subeditbutton_i(Fl_Button*, void*) {
- partui->showparameters(n,1);
- }
- void PartKitItem::cb_subeditbutton(Fl_Button* o, void* v) {
- ((PartKitItem*)(o->parent()->parent()->user_data()))->cb_subeditbutton_i(o,v);
- }
-
- void PartKitItem::cb_labelbutton_i(Fl_Osc_Input* o, void*) {
- o->oscWrite(o->ext, "s", o->value());
- }
- void PartKitItem::cb_labelbutton(Fl_Osc_Input* o, void* v) {
- ((PartKitItem*)(o->parent()->parent()->user_data()))->cb_labelbutton_i(o,v);
- }
-
- void PartKitItem::cb_adcheck_i(Fl_Osc_Check* o, void*) {
- if (o->value()!=0) adeditbutton->activate();
- else adeditbutton->deactivate();
- }
- void PartKitItem::cb_adcheck(Fl_Osc_Check* o, void* v) {
- ((PartKitItem*)(o->parent()->parent()->user_data()))->cb_adcheck_i(o,v);
- }
-
- void PartKitItem::cb_subcheck_i(Fl_Osc_Check* o, void*) {
- if(o->value()!=0) subeditbutton->activate();
- else subeditbutton->deactivate();
- }
- void PartKitItem::cb_subcheck(Fl_Osc_Check* o, void* v) {
- ((PartKitItem*)(o->parent()->parent()->user_data()))->cb_subcheck_i(o,v);
- }
-
- void PartKitItem::cb_padeditbutton_i(Fl_Button*, void*) {
- partui->showparameters(n,2);
- }
- void PartKitItem::cb_padeditbutton(Fl_Button* o, void* v) {
- ((PartKitItem*)(o->parent()->parent()->user_data()))->cb_padeditbutton_i(o,v);
- }
-
- void PartKitItem::cb_padcheck_i(Fl_Osc_Check* o, void*) {
- if (o->value()!=0) padeditbutton->activate();
- else padeditbutton->deactivate();
- }
- void PartKitItem::cb_padcheck(Fl_Osc_Check* o, void* v) {
- ((PartKitItem*)(o->parent()->parent()->user_data()))->cb_padcheck_i(o,v);
- }
-
- void PartKitItem::cb_enabledcheck_i(Fl_Osc_Check* o, void*) {
- int answer=1;
- //TODO special case
- if (o->value()==0 && !o->is_osc)
- answer=fl_choice("Delete the item?","No","Yes",NULL);
- if(!answer)
- o->value(true);
-
- if (o->value()==0) partkititemgroup->deactivate();
- else partkititemgroup->activate();
- o->redraw();
- partui->showparameters(n,-1);//use to delete the ui, if it is not to item 0;
- }
- void PartKitItem::cb_enabledcheck(Fl_Osc_Check* o, void* v) {
- ((PartKitItem*)(o->parent()->user_data()))->cb_enabledcheck_i(o,v);
- }
-
- Fl_Osc_Group* PartKitItem::make_window() {
- { partkititem = new Fl_Osc_Group(0, 0, 670, 100);
- partkititem->box(FL_NO_BOX);
- partkititem->color(FL_BACKGROUND_COLOR);
- partkititem->selection_color(FL_BACKGROUND_COLOR);
- partkititem->labeltype(FL_NO_LABEL);
- partkititem->labelfont(0);
- partkititem->labelsize(14);
- partkititem->labelcolor(FL_FOREGROUND_COLOR);
- partkititem->user_data((void*)(this));
- partkititem->align(Fl_Align(FL_ALIGN_TOP));
- partkititem->when(FL_WHEN_RELEASE);
- { partkititemgroup = new Fl_Osc_Group(55, 0, 605, 20);
- partkititemgroup->box(FL_NO_BOX);
- partkititemgroup->color(FL_BACKGROUND_COLOR);
- partkititemgroup->selection_color(FL_BACKGROUND_COLOR);
- partkititemgroup->labeltype(FL_NORMAL_LABEL);
- partkititemgroup->labelfont(0);
- partkititemgroup->labelsize(14);
- partkititemgroup->labelcolor(FL_FOREGROUND_COLOR);
- partkititemgroup->align(Fl_Align(FL_ALIGN_TOP));
- partkititemgroup->when(FL_WHEN_RELEASE);
- { Fl_Osc_Counter* o = minkcounter = new Fl_Osc_Counter(225, 0, 55, 15);
- minkcounter->type(1);
- minkcounter->box(FL_UP_BOX);
- minkcounter->color(FL_BACKGROUND_COLOR);
- minkcounter->selection_color(FL_INACTIVE_COLOR);
- minkcounter->labeltype(FL_NORMAL_LABEL);
- minkcounter->labelfont(0);
- minkcounter->labelsize(14);
- minkcounter->labelcolor(FL_FOREGROUND_COLOR);
- minkcounter->minimum(0);
- minkcounter->maximum(128);
- minkcounter->step(1);
- minkcounter->align(Fl_Align(FL_ALIGN_BOTTOM));
- minkcounter->when(FL_WHEN_CHANGED);
- o->init("Pminkey");
- } // Fl_Osc_Counter* minkcounter
- { Fl_Osc_Button* o = new Fl_Osc_Button(285, 3, 15, 12, "m");
- o->tooltip("set the minimum key to the last pressed key");
- o->box(FL_THIN_UP_BOX);
- o->color(FL_BACKGROUND_COLOR);
- o->selection_color(FL_BACKGROUND_COLOR);
- o->labeltype(FL_NORMAL_LABEL);
- o->labelfont(0);
- o->labelsize(10);
- o->labelcolor(FL_FOREGROUND_COLOR);
- o->callback((Fl_Callback*)cb_m);
- o->align(Fl_Align(FL_ALIGN_CENTER));
- o->when(FL_WHEN_RELEASE);
- } // Fl_Osc_Button* o
- { Fl_Osc_Button* o = new Fl_Osc_Button(315, 3, 15, 12, "M");
- o->tooltip("set the maximum key to the last pressed key");
- o->box(FL_THIN_UP_BOX);
- o->color(FL_BACKGROUND_COLOR);
- o->selection_color(FL_BACKGROUND_COLOR);
- o->labeltype(FL_NORMAL_LABEL);
- o->labelfont(0);
- o->labelsize(10);
- o->labelcolor(FL_FOREGROUND_COLOR);
- o->callback((Fl_Callback*)cb_M);
- o->align(Fl_Align(FL_ALIGN_CENTER));
- o->when(FL_WHEN_RELEASE);
- } // Fl_Osc_Button* o
- { Fl_Button* o = new Fl_Button(300, 3, 15, 12, "R");
- o->tooltip("reset the minimum key to 0 and maximum key to 127");
- o->box(FL_THIN_UP_BOX);
- o->labelfont(1);
- o->labelsize(10);
- o->callback((Fl_Callback*)cb_R);
- } // Fl_Button* o
- { adeditbutton = new Fl_Button(420, 0, 40, 15, "edit");
- adeditbutton->box(FL_THIN_UP_BOX);
- adeditbutton->labelsize(11);
- adeditbutton->callback((Fl_Callback*)cb_adeditbutton);
- } // Fl_Button* adeditbutton
- { subeditbutton = new Fl_Button(490, 0, 40, 15, "edit");
- subeditbutton->box(FL_THIN_UP_BOX);
- subeditbutton->labelsize(11);
- subeditbutton->callback((Fl_Callback*)cb_subeditbutton);
- } // Fl_Button* subeditbutton
- { Fl_Osc_Check* o = mutedcheck = new Fl_Osc_Check(60, 0, 20, 15);
- mutedcheck->box(FL_NO_BOX);
- mutedcheck->down_box(FL_DOWN_BOX);
- mutedcheck->color(FL_BACKGROUND_COLOR);
- mutedcheck->selection_color(FL_FOREGROUND_COLOR);
- mutedcheck->labeltype(FL_NORMAL_LABEL);
- mutedcheck->labelfont(1);
- mutedcheck->labelsize(11);
- mutedcheck->labelcolor(FL_FOREGROUND_COLOR);
- mutedcheck->align(Fl_Align(FL_ALIGN_LEFT));
- mutedcheck->when(FL_WHEN_RELEASE);
- o->init("Pmuted");
- } // Fl_Osc_Check* mutedcheck
- { Fl_Osc_Counter* o = maxkcounter = new Fl_Osc_Counter(335, 0, 55, 15);
- maxkcounter->type(1);
- maxkcounter->box(FL_UP_BOX);
- maxkcounter->color(FL_BACKGROUND_COLOR);
- maxkcounter->selection_color(FL_INACTIVE_COLOR);
- maxkcounter->labeltype(FL_NORMAL_LABEL);
- maxkcounter->labelfont(0);
- maxkcounter->labelsize(14);
- maxkcounter->labelcolor(FL_FOREGROUND_COLOR);
- maxkcounter->minimum(0);
- maxkcounter->maximum(128);
- maxkcounter->step(1);
- maxkcounter->align(Fl_Align(FL_ALIGN_BOTTOM));
- maxkcounter->when(FL_WHEN_CHANGED);
- o->init("Pmaxkey");
- } // Fl_Osc_Counter* maxkcounter
- { Fl_Osc_Input* o = labelbutton = new Fl_Osc_Input(90, 0, 130, 15, "Bass Drum");
- labelbutton->box(FL_THIN_DOWN_BOX);
- labelbutton->color(FL_BACKGROUND2_COLOR);
- labelbutton->selection_color(FL_SELECTION_COLOR);
- labelbutton->labeltype(FL_NORMAL_LABEL);
- labelbutton->labelfont(1);
- labelbutton->labelsize(10);
- labelbutton->labelcolor(FL_FOREGROUND_COLOR);
- labelbutton->callback((Fl_Callback*)cb_labelbutton);
- labelbutton->align(Fl_Align(FL_ALIGN_LEFT|FL_ALIGN_INSIDE));
- labelbutton->when(FL_WHEN_RELEASE);
- o->init("Pname");
- } // Fl_Osc_Input* labelbutton
- { Fl_Osc_Check* o = adcheck = new Fl_Osc_Check(400, 0, 20, 15);
- adcheck->box(FL_NO_BOX);
- adcheck->down_box(FL_DOWN_BOX);
- adcheck->color(FL_BACKGROUND_COLOR);
- adcheck->selection_color(FL_FOREGROUND_COLOR);
- adcheck->labeltype(FL_NORMAL_LABEL);
- adcheck->labelfont(1);
- adcheck->labelsize(11);
- adcheck->labelcolor(FL_FOREGROUND_COLOR);
- adcheck->callback((Fl_Callback*)cb_adcheck);
- adcheck->align(Fl_Align(FL_ALIGN_LEFT));
- adcheck->when(FL_WHEN_RELEASE);
- o->init("Padenabled");
- } // Fl_Osc_Check* adcheck
- { Fl_Osc_Check* o = subcheck = new Fl_Osc_Check(470, 0, 20, 15);
- subcheck->box(FL_NO_BOX);
- subcheck->down_box(FL_DOWN_BOX);
- subcheck->color(FL_BACKGROUND_COLOR);
- subcheck->selection_color(FL_FOREGROUND_COLOR);
- subcheck->labeltype(FL_NORMAL_LABEL);
- subcheck->labelfont(1);
- subcheck->labelsize(11);
- subcheck->labelcolor(FL_FOREGROUND_COLOR);
- subcheck->callback((Fl_Callback*)cb_subcheck);
- subcheck->align(Fl_Align(FL_ALIGN_LEFT));
- subcheck->when(FL_WHEN_RELEASE);
- o->init("Psubenabled");
- } // Fl_Osc_Check* subcheck
- { Fl_Osc_Choice* o = sendtoeffect = new Fl_Osc_Choice(615, 0, 45, 15);
- sendtoeffect->box(FL_UP_BOX);
- sendtoeffect->down_box(FL_BORDER_BOX);
- sendtoeffect->color(FL_BACKGROUND_COLOR);
- sendtoeffect->selection_color(FL_SELECTION_COLOR);
- sendtoeffect->labeltype(FL_NORMAL_LABEL);
- sendtoeffect->labelfont(0);
- sendtoeffect->labelsize(10);
- sendtoeffect->labelcolor(FL_FOREGROUND_COLOR);
- sendtoeffect->textfont(1);
- sendtoeffect->textsize(10);
- sendtoeffect->align(Fl_Align(FL_ALIGN_TOP_LEFT));
- sendtoeffect->when(FL_WHEN_RELEASE);
- char nrstr[10]; for(int i=0;i<NUM_PART_EFX;i++){sprintf(nrstr,"FX%d",i+1);o->add(nrstr);};o->add("OFF");
- o->init("Psendtoparteffect");//TODO check semantics
- } // Fl_Osc_Choice* sendtoeffect
- { padeditbutton = new Fl_Button(560, 0, 40, 15, "edit");
- padeditbutton->box(FL_THIN_UP_BOX);
- padeditbutton->labelsize(11);
- padeditbutton->callback((Fl_Callback*)cb_padeditbutton);
- } // Fl_Button* padeditbutton
- { Fl_Osc_Check* o = padcheck = new Fl_Osc_Check(540, 0, 20, 15);
- padcheck->box(FL_NO_BOX);
- padcheck->down_box(FL_DOWN_BOX);
- padcheck->color(FL_BACKGROUND_COLOR);
- padcheck->selection_color(FL_FOREGROUND_COLOR);
- padcheck->labeltype(FL_NORMAL_LABEL);
- padcheck->labelfont(1);
- padcheck->labelsize(11);
- padcheck->labelcolor(FL_FOREGROUND_COLOR);
- padcheck->callback((Fl_Callback*)cb_padcheck);
- padcheck->align(Fl_Align(FL_ALIGN_LEFT));
- padcheck->when(FL_WHEN_RELEASE);
- o->init("Ppadenabled");
- } // Fl_Osc_Check* padcheck
- partkititemgroup->end();
- } // Fl_Osc_Group* partkititemgroup
- { Fl_Osc_Check* o = enabledcheck = new Fl_Osc_Check(30, 0, 20, 15, "01");
- enabledcheck->box(FL_NO_BOX);
- enabledcheck->down_box(FL_DOWN_BOX);
- enabledcheck->color(FL_BACKGROUND_COLOR);
- enabledcheck->selection_color(FL_FOREGROUND_COLOR);
- enabledcheck->labeltype(FL_EMBOSSED_LABEL);
- enabledcheck->labelfont(1);
- enabledcheck->labelsize(13);
- enabledcheck->labelcolor(FL_FOREGROUND_COLOR);
- enabledcheck->callback((Fl_Callback*)cb_enabledcheck);
- enabledcheck->align(Fl_Align(FL_ALIGN_LEFT));
- enabledcheck->when(FL_WHEN_RELEASE);
- snprintf(label,10,"%d",n+1);o->label(label);
- o->init("Penabled");
- if (n==0) o->deactivate();
- } // Fl_Osc_Check* enabledcheck
- partkititem->end();
- } // Fl_Osc_Group* partkititem
- return partkititem;
- }
-
- PartKitItem::PartKitItem(int x,int y, int w, int h, const char *label):Fl_Osc_Group(x,y,w,h,label) {
- n=0;
- }
-
- void PartKitItem::refresh() {
- this->redraw();
- }
-
- void PartKitItem::init(int n_,class PartUI *partui_) {
- n=n_;
- ext = "kit"+to_s(n)+"/";
- partui=partui_;
- make_window();
- if (n == 0)
- mutedcheck->deactivate();
- else
- deactivate();
-
- //partkititem->show();
- end();
- }
-
- PartKitItem::~PartKitItem() {
- }
-
- void PartUI::cb_Grand_i(PartNameButton* o, void*) {
- int event=Fl::event_button();
- if (event==FL_RIGHT_MOUSE){
- const char *tmp=fl_input("Instrument name:",o->label());
- if (tmp!=NULL)
- o->oscWrite("Pname", "s", tmp);
- } else {
- if (event==FL_LEFT_MOUSE) bankui->show();
- else instrumenteditwindow->show();
- };
- }
- void PartUI::cb_Grand(PartNameButton* o, void* v) {
- ((PartUI*)(o->parent()->parent()->user_data()))->cb_Grand_i(o,v);
- }
-
- void PartUI::cb_minkcounter_i(Fl_Osc_Counter* o, void*) {
- if (minkcounter->value() > maxkcounter->value()) o->textcolor(FL_RED);
- else o->textcolor(FL_BLACK);
- }
- void PartUI::cb_minkcounter(Fl_Osc_Counter* o, void* v) {
- ((PartUI*)(o->parent()->parent()->user_data()))->cb_minkcounter_i(o,v);
- }
-
- void PartUI::cb_maxkcounter_i(Fl_Osc_Counter* o, void*) {
- if (minkcounter->value() > maxkcounter->value()) o->textcolor(FL_RED);
- else o->textcolor(FL_BLACK);
- }
- void PartUI::cb_maxkcounter(Fl_Osc_Counter* o, void* v) {
- ((PartUI*)(o->parent()->parent()->user_data()))->cb_maxkcounter_i(o,v);
- }
-
- void PartUI::cb_Controllers_i(Fl_Button*, void*) {
- ctlwindow->show();
- }
- void PartUI::cb_Controllers(Fl_Button* o, void* v) {
- ((PartUI*)(o->parent()->parent()->user_data()))->cb_Controllers_i(o,v);
- }
-
- void PartUI::cb_Edit_i(Fl_Button*, void*) {
- if (Fl::event_shift() || Fl::event_ctrl())
- instrumentkitlist->show();
- else
- instrumenteditwindow->show();
- }
- void PartUI::cb_Edit(Fl_Button* o, void* v) {
- ((PartUI*)(o->parent()->parent()->user_data()))->cb_Edit_i(o,v);
- }
-
- void PartUI::cb_m1_i(Fl_Osc_Button* o, void*) {
- o->oscWrite("captureMin");
- o->oscWrite("Pminkey");
- o->oscWrite("Pmaxkey");
- }
- void PartUI::cb_m1(Fl_Osc_Button* o, void* v) {
- ((PartUI*)(o->parent()->parent()->user_data()))->cb_m1_i(o,v);
- }
-
- void PartUI::cb_M1_i(Fl_Osc_Button* o, void*) {
- o->oscWrite("captureMax");
- o->oscWrite("Pminkey");
- o->oscWrite("Pmaxkey");
- }
- void PartUI::cb_M1(Fl_Osc_Button* o, void* v) {
- ((PartUI*)(o->parent()->parent()->user_data()))->cb_M1_i(o,v);
- }
-
- void PartUI::cb_R1_i(Fl_Osc_Button* o, void*) {
- o->oscWrite("Pminkey", "i", 0);
- o->oscWrite("Pmaxkey", "i", 127);
- }
- void PartUI::cb_R1(Fl_Osc_Button* o, void* v) {
- ((PartUI*)(o->parent()->parent()->user_data()))->cb_R1_i(o,v);
- }
-
- void PartUI::cb_partenablebutton_i(Fl_Osc_Check* o, void*) {
- if (o->value()==0) partgroupui->deactivate();
- else partgroupui->activate();
- }
- void PartUI::cb_partenablebutton(Fl_Osc_Check* o, void* v) {
- ((PartUI*)(o->parent()->user_data()))->cb_partenablebutton_i(o,v);
- }
-
- void PartUI::cb_benddir_i(Fl_Check_Button* o, void*) {
- if (o->value()) {bendrng->oscMove("pitchwheel.bendrange_down");}
- else {bendrng->oscMove("pitchwheel.bendrange");};
- }
- void PartUI::cb_benddir(Fl_Check_Button* o, void* v) {
- ((PartUI*)(o->parent()->user_data()))->cb_benddir_i(o,v);
- }
-
- void PartUI::cb_bendsplt_i(Fl_Osc_Check* o, void*) {
- if(o->value()) {benddir->activate();}
- else {benddir->deactivate(); benddir->value(0); benddir->do_callback();};
- }
- void PartUI::cb_bendsplt(Fl_Osc_Check* o, void* v) {
- ((PartUI*)(o->parent()->user_data()))->cb_bendsplt_i(o,v);
- }
-
- void PartUI::cb_Sustain_i(Fl_Osc_Check*, void*) {
- //TODO
- /*if (ctl.sustain.receive==0) {
- ReleaseSustainedKeys();
- ctl.setsustain(0);
- };*/;
- }
- void PartUI::cb_Sustain(Fl_Osc_Check* o, void* v) {
- ((PartUI*)(o->parent()->user_data()))->cb_Sustain_i(o,v);
- }
-
- void PartUI::cb_Close_i(Fl_Button*, void*) {
- ctlwindow->hide();
- }
- void PartUI::cb_Close(Fl_Button* o, void* v) {
- ((PartUI*)(o->parent()->user_data()))->cb_Close_i(o,v);
- }
-
- void PartUI::cb_Reset_i(Fl_Osc_Button* o, void*) {
- o->oscWrite("defaults");//part->SetController(C_resetallcontrollers,0);
- ctlwindow->update();
- }
- void PartUI::cb_Reset(Fl_Osc_Button* o, void* v) {
- ((PartUI*)(o->parent()->user_data()))->cb_Reset_i(o,v);
- }
-
- void PartUI::cb_Proprt_i(Fl_Osc_Check* o, void*) {
- if(o->value()){propta->activate();proptb->activate();}
- else {propta->deactivate();proptb->deactivate();};
- }
- void PartUI::cb_Proprt(Fl_Osc_Check* o, void* v) {
- ((PartUI*)(o->parent()->parent()->user_data()))->cb_Proprt_i(o,v);
- }
-
- void PartUI::cb_inseffnocounter_i(Fl_Counter* o, void*) {
- ninseff=(int) o->value()-1;
- insefftype->oscMove("partefx"+to_s(ninseff)+"/efftype");
- inseffectuigroup->reext("partefx"+to_s(ninseff)+"/");
- bypasseff->oscMove("Pefxbypass"+to_s(ninseff));
- sendtochoice->oscMove("Pefxroute"+to_s(ninseff));
- /*insefftype->value(part->partefx[ninseff]->geteffect());*/
- //insefftype->do_callback();
- inseffectui->refresh();
- int x=127;/*part->Pefxroute[ninseff];*/
- if (x==127) x=1;
-
- sendtochoice->value(x);
- }
- void PartUI::cb_inseffnocounter(Fl_Counter* o, void* v) {
- ((PartUI*)(o->parent()->user_data()))->cb_inseffnocounter_i(o,v);
- }
-
- void PartUI::cb_insefftype_i(Fl_Osc_Choice* o, void*) {
- inseffectui->efftype = o->value();
- inseffectui->refresh();
- }
- void PartUI::cb_insefftype(Fl_Osc_Choice* o, void* v) {
- ((PartUI*)(o->parent()->user_data()))->cb_insefftype_i(o,v);
- }
-
- Fl_Menu_Item PartUI::menu_insefftype[] = {
- {"No Effect", 0, 0, 0, 0, FL_NORMAL_LABEL, 1, 10, 0},
- {"Reverb", 0, 0, 0, 0, FL_NORMAL_LABEL, 1, 10, 0},
- {"Echo", 0, 0, 0, 0, FL_NORMAL_LABEL, 1, 10, 0},
- {"Chorus", 0, 0, 0, 0, FL_NORMAL_LABEL, 1, 10, 0},
- {"Phaser", 0, 0, 0, 0, FL_NORMAL_LABEL, 1, 10, 0},
- {"AlienWah", 0, 0, 0, 0, FL_NORMAL_LABEL, 1, 10, 0},
- {"Distortion", 0, 0, 0, 0, FL_NORMAL_LABEL, 1, 10, 0},
- {"EQ", 0, 0, 0, 0, FL_NORMAL_LABEL, 1, 10, 0},
- {"DynFilter", 0, 0, 0, 0, FL_NORMAL_LABEL, 1, 10, 0},
- {0,0,0,0,0,0,0,0,0}
- };
-
- void PartUI::cb_Close1_i(Fl_Button*, void*) {
- partfx->hide();
- }
- void PartUI::cb_Close1(Fl_Button* o, void* v) {
- ((PartUI*)(o->parent()->user_data()))->cb_Close1_i(o,v);
- }
-
- void PartUI::cb_sendtochoice_i(Fl_Osc_Choice* o, void*) {
- (void)o;/*int x=(int) o->value();
- part->Pefxroute[ninseff]=x;
- if (x==2) part->partefx[ninseff]->setdryonly(true);
- else part->partefx[ninseff]->setdryonly(false);*/;
- }
- void PartUI::cb_sendtochoice(Fl_Osc_Choice* o, void* v) {
- ((PartUI*)(o->parent()->user_data()))->cb_sendtochoice_i(o,v);
- }
-
- Fl_Menu_Item PartUI::menu_sendtochoice[] = {
- {"Next Effect", 0, 0, 0, 0, FL_NORMAL_LABEL, 1, 10, 0},
- {"Part Out", 0, 0, 0, 0, FL_NORMAL_LABEL, 1, 10, 0},
- {"Dry Out", 0, 0, 0, 0, FL_NORMAL_LABEL, 1, 10, 0},
- {0,0,0,0,0,0,0,0,0}
- };
-
- void PartUI::cb_C_i(Fl_Button*, void*) {
- presetsui->copy(partfx->loc()+"partefx"+to_s(ninseff)+"/");
- }
- void PartUI::cb_C(Fl_Button* o, void* v) {
- ((PartUI*)(o->parent()->user_data()))->cb_C_i(o,v);
- }
-
- void PartUI::cb_P_i(Fl_Button*, void*) {
- presetsui->paste(partfx->loc()+"partefx"+to_s(ninseff)+"/",inseffectui);
- }
- void PartUI::cb_P(Fl_Button* o, void* v) {
- ((PartUI*)(o->parent()->user_data()))->cb_P_i(o,v);
- }
-
- void PartUI::cb_Close2_i(Fl_Button*, void*) {
- instrumentkitlist->hide();
- }
- void PartUI::cb_Close2(Fl_Button* o, void* v) {
- ((PartUI*)(o->parent()->user_data()))->cb_Close2_i(o,v);
- }
-
- void PartUI::cb_Mode_i(Fl_Osc_Choice* o, void*) {
- if (o->value()==0) {
- for (int i=1;i<NUM_KIT_ITEMS;i++)
- partkititem[i]->deactivate();
- partkititem[0]->mutedcheck->deactivate();
- } else {
- for (int i=1;i<NUM_KIT_ITEMS;i++)
- partkititem[i]->activate();
- partkititem[0]->mutedcheck->activate(); };
- }
- void PartUI::cb_Mode(Fl_Osc_Choice* o, void* v) {
- ((PartUI*)(o->parent()->user_data()))->cb_Mode_i(o,v);
- }
-
- Fl_Menu_Item PartUI::menu_Mode[] = {
- {"OFF", 0, 0, 0, 0, FL_NORMAL_LABEL, 1, 11, 0},
- {"MULTI", 0, 0, 0, 0, FL_NORMAL_LABEL, 1, 11, 0},
- {"SINGLE", 0, 0, 0, 0, FL_NORMAL_LABEL, 1, 11, 0},
- {0,0,0,0,0,0,0,0,0}
- };
-
- void PartUI::cb_Comments_i(Fl_Button*, void*) {
- instrumenteditwindow->show();
- }
- void PartUI::cb_Comments(Fl_Button* o, void* v) {
- ((PartUI*)(o->parent()->user_data()))->cb_Comments_i(o,v);
- }
-
- void PartUI::cb_Effects_i(Fl_Button*, void*) {
- partfx->show();
- }
- void PartUI::cb_Effects(Fl_Button* o, void* v) {
- ((PartUI*)(o->parent()->user_data()))->cb_Effects_i(o,v);
- }
-
- void PartUI::cb_padeditbutton1_i(Fl_Button*, void*) {
- showparameters(0,2);
- }
- void PartUI::cb_padeditbutton1(Fl_Button* o, void* v) {
- ((PartUI*)(o->parent()->parent()->parent()->user_data()))->cb_padeditbutton1_i(o,v);
- }
-
- void PartUI::cb_padsynenabledcheck_i(Fl_Osc_Check* o, void*) {
- if (o->value()==0) padeditbutton->deactivate();
- else padeditbutton->activate();
- }
- void PartUI::cb_padsynenabledcheck(Fl_Osc_Check* o, void* v) {
- ((PartUI*)(o->parent()->parent()->parent()->user_data()))->cb_padsynenabledcheck_i(o,v);
- }
-
- void PartUI::cb_adsynenabledcheck_i(Fl_Osc_Check* o, void*) {
- if (o->value()==0) adeditbutton->deactivate();
- else adeditbutton->activate();
- }
- void PartUI::cb_adsynenabledcheck(Fl_Osc_Check* o, void* v) {
- ((PartUI*)(o->parent()->parent()->parent()->user_data()))->cb_adsynenabledcheck_i(o,v);
- }
-
- void PartUI::cb_adeditbutton1_i(Fl_Button*, void*) {
- if (Fl::event_shift()) {
- showvoiceparams(0, true);
- } else if (Fl::event_ctrl()) {
- showvoiceparams(0, false);
- } else
- showparameters(0,0);
- }
- void PartUI::cb_adeditbutton1(Fl_Button* o, void* v) {
- ((PartUI*)(o->parent()->parent()->parent()->user_data()))->cb_adeditbutton1_i(o,v);
- }
-
- void PartUI::cb_subsynenabledcheck_i(Fl_Osc_Check* o, void*) {
- if (o->value()==0) subeditbutton->deactivate();
- else subeditbutton->activate();
- }
- void PartUI::cb_subsynenabledcheck(Fl_Osc_Check* o, void* v) {
- ((PartUI*)(o->parent()->parent()->parent()->user_data()))->cb_subsynenabledcheck_i(o,v);
- }
-
- void PartUI::cb_subeditbutton1_i(Fl_Button*, void*) {
- showparameters(0,1);
- }
- void PartUI::cb_subeditbutton1(Fl_Button* o, void* v) {
- ((PartUI*)(o->parent()->parent()->parent()->user_data()))->cb_subeditbutton1_i(o,v);
- }
-
- void PartUI::cb_Kit_i(Fl_Button*, void*) {
- instrumentkitlist->show();
- }
- void PartUI::cb_Kit(Fl_Button* o, void* v) {
- ((PartUI*)(o->parent()->parent()->user_data()))->cb_Kit_i(o,v);
- }
-
- void PartUI::cb_Effects1_i(Fl_Button*, void*) {
- partfx->show();
- }
- void PartUI::cb_Effects1(Fl_Button* o, void* v) {
- ((PartUI*)(o->parent()->parent()->user_data()))->cb_Effects1_i(o,v);
- }
-
- void PartUI::cb_Author_i(Fl_Osc_Input* o, void*) {
- o->oscWrite(o->ext, "s", o->value());
- }
- void PartUI::cb_Author(Fl_Osc_Input* o, void* v) {
- ((PartUI*)(o->parent()->parent()->user_data()))->cb_Author_i(o,v);
- }
-
- void PartUI::cb_Comments1_i(Fl_Osc_Input* o, void*) {
- o->oscWrite(o->ext, "s", o->value());
- }
- void PartUI::cb_Comments1(Fl_Osc_Input* o, void* v) {
- ((PartUI*)(o->parent()->parent()->user_data()))->cb_Comments1_i(o,v);
- }
-
- Fl_Menu_Item PartUI::menu_Type[] = {
- {"--------------------------", 0, 0, 0, 0, FL_NORMAL_LABEL, 1, 11, 0},
- {"Piano", 0, 0, 0, 0, FL_NORMAL_LABEL, 1, 11, 0},
- {"Chromatic Percussion", 0, 0, 0, 0, FL_NORMAL_LABEL, 1, 11, 0},
- {"Organ", 0, 0, 0, 0, FL_NORMAL_LABEL, 1, 11, 0},
- {"Guitar", 0, 0, 0, 0, FL_NORMAL_LABEL, 1, 11, 0},
- {"Bass", 0, 0, 0, 0, FL_NORMAL_LABEL, 1, 11, 0},
- {"Solo Strings", 0, 0, 0, 0, FL_NORMAL_LABEL, 1, 11, 0},
- {"Ensemble", 0, 0, 0, 0, FL_NORMAL_LABEL, 1, 11, 0},
- {"Brass", 0, 0, 0, 0, FL_NORMAL_LABEL, 1, 11, 0},
- {"Reed", 0, 0, 0, 0, FL_NORMAL_LABEL, 1, 11, 0},
- {"Pipe", 0, 0, 0, 0, FL_NORMAL_LABEL, 1, 11, 0},
- {"Synth Lead", 0, 0, 0, 0, FL_NORMAL_LABEL, 1, 11, 0},
- {"Synth Pad", 0, 0, 0, 0, FL_NORMAL_LABEL, 1, 11, 0},
- {"Synth Effects", 0, 0, 0, 0, FL_NORMAL_LABEL, 1, 11, 0},
- {"Ethnic", 0, 0, 0, 0, FL_NORMAL_LABEL, 1, 11, 0},
- {"Percussive", 0, 0, 0, 0, FL_NORMAL_LABEL, 1, 11, 0},
- {"Sound Effects", 0, 0, 0, 0, FL_NORMAL_LABEL, 1, 11, 0},
- {0,0,0,0,0,0,0,0,0}
- };
-
- void PartUI::cb_Close3_i(Fl_Button*, void*) {
- instrumenteditwindow->hide();
- }
- void PartUI::cb_Close3(Fl_Button* o, void* v) {
- ((PartUI*)(o->parent()->user_data()))->cb_Close3_i(o,v);
- }
-
- Fl_Group* PartUI::make_window() {
- { partgroup = new Fl_Group(0, 0, 385, 180);
- partgroup->box(FL_NO_BOX);
- partgroup->color(FL_BACKGROUND_COLOR);
- partgroup->selection_color(FL_BACKGROUND_COLOR);
- partgroup->labeltype(FL_NO_LABEL);
- partgroup->labelfont(0);
- partgroup->labelsize(14);
- partgroup->labelcolor(FL_FOREGROUND_COLOR);
- partgroup->user_data((void*)(this));
- partgroup->align(Fl_Align(FL_ALIGN_TOP));
- partgroup->when(FL_WHEN_RELEASE);
- { partgroupui = new Fl_Osc_Group(0, 0, 385, 180);
- partgroupui->box(FL_NO_BOX);
- partgroupui->color(FL_BACKGROUND_COLOR);
- partgroupui->selection_color(FL_BACKGROUND_COLOR);
- partgroupui->labeltype(FL_NORMAL_LABEL);
- partgroupui->labelfont(0);
- partgroupui->labelsize(14);
- partgroupui->labelcolor(FL_FOREGROUND_COLOR);
- partgroupui->align(Fl_Align(FL_ALIGN_TOP));
- partgroupui->when(FL_WHEN_RELEASE);
- { Fl_Osc_Dial* o = new Fl_Osc_Dial(50, 40, 25, 25, "Pan");
- o->box(FL_ROUND_UP_BOX);
- o->color(FL_BACKGROUND_COLOR);
- o->selection_color(FL_INACTIVE_COLOR);
- o->labeltype(FL_NORMAL_LABEL);
- o->labelfont(0);
- o->labelsize(11);
- o->labelcolor(FL_FOREGROUND_COLOR);
- o->maximum(127);
- o->step(1);
- o->align(Fl_Align(FL_ALIGN_BOTTOM));
- o->when(FL_WHEN_CHANGED);
- o->init("Ppanning"); o->reset_value=64;
- } // Fl_Osc_Dial* o
- { Fl_Osc_Counter* o = new Fl_Osc_Counter(195, 45, 90, 20, "KeyShift");
- o->box(FL_UP_BOX);
- o->color(FL_BACKGROUND_COLOR);
- o->selection_color(FL_INACTIVE_COLOR);
- o->labeltype(FL_NORMAL_LABEL);
- o->labelfont(0);
- o->labelsize(11);
- o->labelcolor(FL_FOREGROUND_COLOR);
- o->minimum(-64);
- o->maximum(64);
- o->step(1);
- o->align(Fl_Align(FL_ALIGN_TOP));
- o->when(FL_WHEN_CHANGED);
- o->lstep(12);
- o->init("Pkeyshift", 'i', -64);
- } // Fl_Osc_Counter* o
- { Fl_Scroll* o = new Fl_Scroll(166, 91, 125, 49);
- o->box(FL_UP_BOX);
- o->labelfont(1);
- o->labelsize(10);
- o->align(Fl_Align(FL_ALIGN_TOP_LEFT|FL_ALIGN_INSIDE));
- { Fl_Pack* o = new Fl_Pack(171, 96, 115, 35);
- o->type(1);
- o->spacing(5);
- for (int i=0;i<NUM_SYS_EFX;i++){psyef[i]=new PartSysEffSend(0,0,25,35,"");psyef[i]->init(npart,i);}
- o->end();
- } // Fl_Pack* o
- o->end();
- } // Fl_Scroll* o
- { PartNameButton* o = new PartNameButton(195, 5, 185, 20, "Grand Piano");
- o->tooltip("left mousebutton - to choose/save/.. from/to bank or right mousebutton to cha\
- nge the name or middle button to change the instrument information");
- o->box(FL_UP_FRAME);
- o->down_box(FL_DOWN_FRAME);
- o->color(FL_BACKGROUND_COLOR);
- o->selection_color(FL_BACKGROUND_COLOR);
- o->labeltype(FL_NORMAL_LABEL);
- o->labelfont(1);
- o->labelsize(11);
- o->labelcolor(FL_FOREGROUND_COLOR);
- o->callback((Fl_Callback*)cb_Grand);
- o->align(Fl_Align(68|FL_ALIGN_INSIDE));
- o->when(FL_WHEN_RELEASE);
- /*o->label((char *)part->Pname);*/
- o->ext = "Pname";o->oscRegister("Pname");
- } // PartNameButton* o
- { Fl_Box* o = new Fl_Box(166, 81, 95, 10, "To Sys.Efx.");
- o->labelfont(1);
- o->labelsize(10);
- } // Fl_Box* o
- { Fl_Osc_Check* o = new Fl_Osc_Check(10, 155, 65, 20, "NoteOn");
- o->tooltip("set if the part receives NoteOn messages");
- o->box(FL_NO_BOX);
- o->down_box(FL_DOWN_BOX);
- o->color(FL_BACKGROUND_COLOR);
- o->selection_color(FL_FOREGROUND_COLOR);
- o->labeltype(FL_NORMAL_LABEL);
- o->labelfont(1);
- o->labelsize(11);
- o->labelcolor(FL_FOREGROUND_COLOR);
- o->align(Fl_Align(FL_ALIGN_LEFT|FL_ALIGN_INSIDE));
- o->when(FL_WHEN_RELEASE);
- o->init("Pnoteon");
- } // Fl_Osc_Check* o
- { Fl_Osc_Counter* o = minkcounter = new Fl_Osc_Counter(295, 125, 40, 15, "Min.k");
- minkcounter->tooltip("Minimum key (that the part receives NoteOn messages)");
- minkcounter->type(1);
- minkcounter->box(FL_UP_BOX);
- minkcounter->color(FL_BACKGROUND_COLOR);
- minkcounter->selection_color(FL_INACTIVE_COLOR);
- minkcounter->labeltype(FL_NORMAL_LABEL);
- minkcounter->labelfont(1);
- minkcounter->labelsize(10);
- minkcounter->labelcolor(FL_FOREGROUND_COLOR);
- minkcounter->minimum(0);
- minkcounter->maximum(127);
- minkcounter->step(1);
- minkcounter->textsize(10);
- minkcounter->callback((Fl_Callback*)cb_minkcounter);
- minkcounter->align(Fl_Align(FL_ALIGN_BOTTOM));
- minkcounter->when(FL_WHEN_CHANGED);
- o->init("Pminkey");
- } // Fl_Osc_Counter* minkcounter
- { Fl_Osc_Counter* o = maxkcounter = new Fl_Osc_Counter(340, 125, 40, 15, "Max.k");
- maxkcounter->tooltip("Maximum key (that the part receives NoteOn messages)");
- maxkcounter->type(1);
- maxkcounter->box(FL_UP_BOX);
- maxkcounter->color(FL_BACKGROUND_COLOR);
- maxkcounter->selection_color(FL_INACTIVE_COLOR);
- maxkcounter->labeltype(FL_NORMAL_LABEL);
- maxkcounter->labelfont(1);
- maxkcounter->labelsize(10);
- maxkcounter->labelcolor(FL_FOREGROUND_COLOR);
- maxkcounter->minimum(0);
- maxkcounter->maximum(127);
- maxkcounter->step(1);
- maxkcounter->textsize(10);
- maxkcounter->callback((Fl_Callback*)cb_maxkcounter);
- maxkcounter->align(Fl_Align(FL_ALIGN_BOTTOM));
- maxkcounter->when(FL_WHEN_CHANGED);
- o->init("Pmaxkey");
- } // Fl_Osc_Counter* maxkcounter
- { Fl_Osc_Dial* o = new Fl_Osc_Dial(10, 35, 30, 30, "Volume");
- o->tooltip("Part Volume");
- o->box(FL_ROUND_UP_BOX);
- o->color(FL_BACKGROUND_COLOR);
- o->selection_color(FL_INACTIVE_COLOR);
- o->labeltype(FL_NORMAL_LABEL);
- o->labelfont(0);
- o->labelsize(11);
- o->labelcolor(FL_FOREGROUND_COLOR);
- o->maximum(127);
- o->step(1);
- o->align(Fl_Align(FL_ALIGN_BOTTOM));
- o->when(FL_WHEN_CHANGED);
- o->init("Pvolume"); o->reset_value=96;
- } // Fl_Osc_Dial* o
- { Fl_Osc_Dial* o = new Fl_Osc_Dial(135, 40, 25, 25, "Vel.Ofs.");
- o->tooltip("Velocity Offset");
- o->box(FL_ROUND_UP_BOX);
- o->color(FL_BACKGROUND_COLOR);
- o->selection_color(FL_INACTIVE_COLOR);
- o->labeltype(FL_NORMAL_LABEL);
- o->labelfont(0);
- o->labelsize(10);
- o->labelcolor(FL_FOREGROUND_COLOR);
- o->maximum(127);
- o->step(1);
- o->align(Fl_Align(FL_ALIGN_BOTTOM));
- o->when(FL_WHEN_CHANGED);
- o->init("Pveloffs"); o->reset_value=64;
- } // Fl_Osc_Dial* o
- { Fl_Osc_Dial* o = new Fl_Osc_Dial(95, 40, 25, 25, "Vel.Sns.");
- o->tooltip("Velocity Sensing Function");
- o->box(FL_ROUND_UP_BOX);
- o->color(FL_BACKGROUND_COLOR);
- o->selection_color(FL_INACTIVE_COLOR);
- o->labeltype(FL_NORMAL_LABEL);
- o->labelfont(0);
- o->labelsize(10);
- o->labelcolor(FL_FOREGROUND_COLOR);
- o->maximum(127);
- o->step(1);
- o->align(Fl_Align(FL_ALIGN_BOTTOM));
- o->when(FL_WHEN_CHANGED);
- o->init("Pvelsns"); o->reset_value=64;
- } // Fl_Osc_Dial* o
- { Fl_Button* o = new Fl_Button(295, 90, 85, 30, "Controllers");
- o->labelfont(1);
- o->labelsize(11);
- o->callback((Fl_Callback*)cb_Controllers);
- } // Fl_Button* o
- { Fl_Osc_Check* o = new Fl_Osc_Check(95, 155, 88, 20, "Portamento");
- o->tooltip("Enable/Disable the portamento");
- o->box(FL_NO_BOX);
- o->down_box(FL_DOWN_BOX);
- o->color(FL_BACKGROUND_COLOR);
- o->selection_color(FL_FOREGROUND_COLOR);
- o->labeltype(FL_NORMAL_LABEL);
- o->labelfont(1);
- o->labelsize(11);
- o->labelcolor(FL_FOREGROUND_COLOR);
- o->align(Fl_Align(FL_ALIGN_LEFT|FL_ALIGN_INSIDE));
- o->when(FL_WHEN_RELEASE);
- o->init("ctl/portamento.portamento");
- } // Fl_Osc_Check* o
- { Fl_Button* o = new Fl_Button(15, 90, 130, 30, "Edit instrument");
- o->color(FL_LIGHT2);
- o->labelfont(1);
- o->labelsize(13);
- o->callback((Fl_Callback*)cb_Edit);
- } // Fl_Button* o
- { Fl_Osc_Button* o = new Fl_Osc_Button(315, 155, 15, 12, "m");
- o->tooltip("set the minimum key to the last pressed key");
- o->box(FL_THIN_UP_BOX);
- o->color(FL_BACKGROUND_COLOR);
- o->selection_color(FL_BACKGROUND_COLOR);
- o->labeltype(FL_NORMAL_LABEL);
- o->labelfont(0);
- o->labelsize(10);
- o->labelcolor(FL_FOREGROUND_COLOR);
- o->callback((Fl_Callback*)cb_m1);
- o->align(Fl_Align(FL_ALIGN_CENTER));
- o->when(FL_WHEN_RELEASE);
- } // Fl_Osc_Button* o
- { Fl_Osc_Button* o = new Fl_Osc_Button(345, 155, 15, 12, "M");
- o->tooltip("set the maximum key to the last pressed key");
- o->box(FL_THIN_UP_BOX);
- o->color(FL_BACKGROUND_COLOR);
- o->selection_color(FL_BACKGROUND_COLOR);
- o->labeltype(FL_NORMAL_LABEL);
- o->labelfont(0);
- o->labelsize(10);
- o->labelcolor(FL_FOREGROUND_COLOR);
- o->callback((Fl_Callback*)cb_M1);
- o->align(Fl_Align(FL_ALIGN_CENTER));
- o->when(FL_WHEN_RELEASE);
- } // Fl_Osc_Button* o
- { Fl_Osc_Button* o = new Fl_Osc_Button(330, 155, 15, 12, "R");
- o->tooltip("reset the minimum key to 0 and maximum key to 127");
- o->box(FL_THIN_UP_BOX);
- o->color(FL_BACKGROUND_COLOR);
- o->selection_color(FL_BACKGROUND_COLOR);
- o->labeltype(FL_NORMAL_LABEL);
- o->labelfont(1);
- o->labelsize(10);
- o->labelcolor(FL_FOREGROUND_COLOR);
- o->callback((Fl_Callback*)cb_R1);
- o->align(Fl_Align(FL_ALIGN_CENTER));
- o->when(FL_WHEN_RELEASE);
- } // Fl_Osc_Button* o
- { Fl_Osc_Choice* o = new Fl_Osc_Choice(310, 45, 70, 20, "MIDI Chn.Rcv.");
- o->tooltip("receive from Midi channel");
- o->box(FL_UP_BOX);
- o->down_box(FL_BORDER_BOX);
- o->color(FL_BACKGROUND_COLOR);
- o->selection_color(FL_SELECTION_COLOR);
- o->labeltype(FL_NORMAL_LABEL);
- o->labelfont(0);
- o->labelsize(10);
- o->labelcolor(FL_FOREGROUND_COLOR);
- o->textfont(1);
- o->textsize(10);
- o->align(Fl_Align(FL_ALIGN_TOP_LEFT));
- o->when(FL_WHEN_RELEASE);
- char nrstr[10]; for(int i=0;i<NUM_MIDI_CHANNELS;i++){sprintf(nrstr,"Chn%d",i+1);if (i!=9) o->add(nrstr); else o->add("Drms10");};
- o->init("Prcvchn");
- } // Fl_Osc_Choice* o
- { Fl_Osc_Counter* o = keylimitlist = new Fl_Osc_Counter(215, 155, 50, 20, "KLmt");
- keylimitlist->tooltip("Key Limit");
- keylimitlist->box(FL_UP_BOX);
- keylimitlist->color(FL_BACKGROUND_COLOR);
- keylimitlist->selection_color(FL_INACTIVE_COLOR);
- keylimitlist->labeltype(FL_NORMAL_LABEL);
- keylimitlist->labelfont(0);
- keylimitlist->labelsize(10);
- keylimitlist->labelcolor(FL_FOREGROUND_COLOR);
- keylimitlist->textfont(1);
- keylimitlist->textsize(10);
- keylimitlist->align(Fl_Align(FL_ALIGN_RIGHT));
- keylimitlist->when(FL_WHEN_CHANGED);
- o->init("Pkeylimit",'i');
- o->step(1.0,10.0);
- o->range(0,127);
- } // Fl_Osc_Counter* keylimitlist
- { Fl_Osc_Choice* o = new Fl_Osc_Choice(80, 130, 64, 18, "Mode :");
- o->tooltip("Poly, Mono or Legato mode");
- o->box(FL_UP_BOX);
- o->down_box(FL_BORDER_BOX);
- o->color(FL_BACKGROUND_COLOR);
- o->selection_color(FL_SELECTION_COLOR);
- o->labeltype(FL_NORMAL_LABEL);
- o->labelfont(1);
- o->labelsize(11);
- o->labelcolor(FL_FOREGROUND_COLOR);
- o->textfont(1);
- o->textsize(10);
- o->align(Fl_Align(FL_ALIGN_LEFT));
- o->when(FL_WHEN_RELEASE);
- o->add("Poly"); o->add("Mono"); o->add("Legato");
- o->init("polyType");
- } // Fl_Osc_Choice* o
- partgroupui->end();
- } // Fl_Osc_Group* partgroupui
- { Fl_Osc_Check* o = partenablebutton = new Fl_Osc_Check(90, 5, 75, 20, "Enabled");
- partenablebutton->box(FL_NO_BOX);
- partenablebutton->down_box(FL_DOWN_BOX);
- partenablebutton->color(FL_BACKGROUND_COLOR);
- partenablebutton->selection_color(FL_FOREGROUND_COLOR);
- partenablebutton->labeltype(FL_NORMAL_LABEL);
- partenablebutton->labelfont(1);
- partenablebutton->labelsize(11);
- partenablebutton->labelcolor(FL_FOREGROUND_COLOR);
- partenablebutton->callback((Fl_Callback*)cb_partenablebutton);
- partenablebutton->align(Fl_Align(FL_ALIGN_LEFT|FL_ALIGN_INSIDE));
- partenablebutton->when(FL_WHEN_RELEASE);
- o->init("Penabled");
- } // Fl_Osc_Check* partenablebutton
- partgroup->end();
- } // Fl_Group* partgroup
- { ctlwindow = new Fl_Osc_Window(500, 135, "Controllers");
- ctlwindow->box(FL_NO_BOX);
- ctlwindow->color(FL_BACKGROUND_COLOR);
- ctlwindow->selection_color(FL_BACKGROUND_COLOR);
- ctlwindow->labeltype(FL_NO_LABEL);
- ctlwindow->labelfont(0);
- ctlwindow->labelsize(14);
- ctlwindow->labelcolor(FL_FOREGROUND_COLOR);
- ctlwindow->user_data((void*)(this));
- ctlwindow->align(Fl_Align(FL_ALIGN_TOP));
- ctlwindow->when(FL_WHEN_RELEASE);
- { new Fl_Box(0, 0, 0, 0);
- ctlwindow->init(osc,"/part"+to_s(npart)+"/ctl/");
- } // Fl_Box* o
- { Fl_Osc_Check* o = new Fl_Osc_Check(155, 58, 45, 20, "Expr");
- o->tooltip("Expression enable");
- o->box(FL_THIN_UP_BOX);
- o->down_box(FL_DOWN_BOX);
- o->color(FL_BACKGROUND_COLOR);
- o->selection_color(FL_FOREGROUND_COLOR);
- o->labeltype(FL_NORMAL_LABEL);
- o->labelfont(0);
- o->labelsize(10);
- o->labelcolor(FL_FOREGROUND_COLOR);
- o->align(Fl_Align(FL_ALIGN_LEFT|FL_ALIGN_INSIDE));
- o->when(FL_WHEN_RELEASE);
- o->init("expression.receive");
- } // Fl_Osc_Check* o
- { Fl_Osc_Dial* o = new Fl_Osc_Dial(10, 55, 30, 30, "PanDpth");
- o->tooltip("Panning Depth");
- o->box(FL_NO_BOX);
- o->color(FL_BACKGROUND_COLOR);
- o->selection_color(FL_INACTIVE_COLOR);
- o->labeltype(FL_NORMAL_LABEL);
- o->labelfont(0);
- o->labelsize(10);
- o->labelcolor(FL_FOREGROUND_COLOR);
- o->maximum(127);
- o->step(1);
- o->align(Fl_Align(FL_ALIGN_BOTTOM));
- o->when(FL_WHEN_CHANGED);
- o->init("panning.depth");o->reset_value=64;
- } // Fl_Osc_Dial* o
- { Fl_Osc_Dial* o = new Fl_Osc_Dial(90, 55, 30, 30, "FltCut");
- o->tooltip("Filter Cutoff depth");
- o->box(FL_NO_BOX);
- o->color(FL_BACKGROUND_COLOR);
- o->selection_color(FL_INACTIVE_COLOR);
- o->labeltype(FL_NORMAL_LABEL);
- o->labelfont(0);
- o->labelsize(10);
- o->labelcolor(FL_FOREGROUND_COLOR);
- o->maximum(127);
- o->step(1);
- o->align(Fl_Align(FL_ALIGN_BOTTOM));
- o->when(FL_WHEN_CHANGED);
- o->init("filtercutoff.depth");o->reset_value=64;
- } // Fl_Osc_Dial* o
- { Fl_Osc_Dial* o = new Fl_Osc_Dial(50, 55, 30, 30, "FltQ");
- o->tooltip("Filter Q depth");
- o->box(FL_NO_BOX);
- o->color(FL_BACKGROUND_COLOR);
- o->selection_color(FL_INACTIVE_COLOR);
- o->labeltype(FL_NORMAL_LABEL);
- o->labelfont(0);
- o->labelsize(10);
- o->labelcolor(FL_FOREGROUND_COLOR);
- o->maximum(127);
- o->step(1);
- o->align(Fl_Align(FL_ALIGN_BOTTOM));
- o->when(FL_WHEN_CHANGED);
- o->init("filterq.depth");o->reset_value=64;
- } // Fl_Osc_Dial* o
- { Fl_Osc_Dial* o = new Fl_Osc_Dial(125, 10, 30, 30, "BwDpth");
- o->tooltip("BandWidth depth");
- o->box(FL_NO_BOX);
- o->color(FL_BACKGROUND_COLOR);
- o->selection_color(FL_INACTIVE_COLOR);
- o->labeltype(FL_NORMAL_LABEL);
- o->labelfont(0);
- o->labelsize(10);
- o->labelcolor(FL_FOREGROUND_COLOR);
- o->maximum(127);
- o->step(1);
- o->align(Fl_Align(FL_ALIGN_BOTTOM));
- o->when(FL_WHEN_CHANGED);
- o->init("bandwidth.depth");o->reset_value=64;
- } // Fl_Osc_Dial* o
- { Fl_Osc_Dial* o = new Fl_Osc_Dial(50, 10, 30, 30, "ModWh");
- o->tooltip("Modulation Wheel depth");
- o->box(FL_NO_BOX);
- o->color(FL_BACKGROUND_COLOR);
- o->selection_color(FL_INACTIVE_COLOR);
- o->labeltype(FL_NORMAL_LABEL);
- o->labelfont(0);
- o->labelsize(10);
- o->labelcolor(FL_FOREGROUND_COLOR);
- o->maximum(127);
- o->step(1);
- o->align(Fl_Align(FL_ALIGN_BOTTOM));
- o->when(FL_WHEN_CHANGED);
- o->init("modwheel.depth");o->reset_value=80;
- } // Fl_Osc_Dial* o
- { benddir = new Fl_Check_Button(205, 37, 69, 15, "Downward");
- benddir->down_box(FL_DOWN_BOX);
- benddir->labelsize(10);
- benddir->callback((Fl_Callback*)cb_benddir);
- } // Fl_Check_Button* benddir
- { Fl_Osc_Counter* o = bendrng = new Fl_Osc_Counter(165, 15, 110, 20, "PWheelB.Rng (cents)");
- bendrng->tooltip("Pitch Wheel Bend Range (cents)");
- bendrng->box(FL_UP_BOX);
- bendrng->color(FL_BACKGROUND_COLOR);
- bendrng->selection_color(FL_INACTIVE_COLOR);
- bendrng->labeltype(FL_NORMAL_LABEL);
- bendrng->labelfont(0);
- bendrng->labelsize(10);
- bendrng->labelcolor(FL_FOREGROUND_COLOR);
- bendrng->minimum(-6400);
- bendrng->maximum(6400);
- bendrng->step(1);
- bendrng->align(Fl_Align(FL_ALIGN_TOP));
- bendrng->when(FL_WHEN_CHANGED);
- o->init("pitchwheel.bendrange", 'i');
- o->lstep(100);
- } // Fl_Osc_Counter* bendrng
- { Fl_Osc_Check* o = bendsplt = new Fl_Osc_Check(167, 37, 38, 15, "Split");
- bendsplt->box(FL_NO_BOX);
- bendsplt->down_box(FL_DOWN_BOX);
- bendsplt->color(FL_BACKGROUND_COLOR);
- bendsplt->selection_color(FL_FOREGROUND_COLOR);
- bendsplt->labeltype(FL_NORMAL_LABEL);
- bendsplt->labelfont(0);
- bendsplt->labelsize(10);
- bendsplt->labelcolor(FL_FOREGROUND_COLOR);
- bendsplt->callback((Fl_Callback*)cb_bendsplt);
- bendsplt->align(Fl_Align(FL_ALIGN_LEFT|FL_ALIGN_INSIDE));
- bendsplt->when(FL_WHEN_RELEASE);
- o->init("pitchwheel.is_split");
- } // Fl_Osc_Check* bendsplt
- { Fl_Osc_Check* o = new Fl_Osc_Check(205, 58, 60, 20, "FMamp");
- o->tooltip("FM amplitude enable");
- o->box(FL_THIN_UP_BOX);
- o->down_box(FL_DOWN_BOX);
- o->color(FL_BACKGROUND_COLOR);
- o->selection_color(FL_FOREGROUND_COLOR);
- o->labeltype(FL_NORMAL_LABEL);
- o->labelfont(0);
- o->labelsize(10);
- o->labelcolor(FL_FOREGROUND_COLOR);
- o->align(Fl_Align(FL_ALIGN_LEFT|FL_ALIGN_INSIDE));
- o->when(FL_WHEN_RELEASE);
- o->init("fmamp.receive");
- } // Fl_Osc_Check* o
- { Fl_Osc_Check* o = new Fl_Osc_Check(155, 83, 45, 20, "Vol");
- o->tooltip("Volume enable");
- o->box(FL_THIN_UP_BOX);
- o->down_box(FL_DOWN_BOX);
- o->color(FL_BACKGROUND_COLOR);
- o->selection_color(FL_FOREGROUND_COLOR);
- o->labeltype(FL_NORMAL_LABEL);
- o->labelfont(0);
- o->labelsize(10);
- o->labelcolor(FL_FOREGROUND_COLOR);
- o->align(Fl_Align(FL_ALIGN_LEFT|FL_ALIGN_INSIDE));
- o->when(FL_WHEN_RELEASE);
- o->init("volume.receive");
- } // Fl_Osc_Check* o
- { Fl_Osc_Check* o = new Fl_Osc_Check(205, 83, 60, 20, "Sustain");
- o->tooltip("Sustain pedal enable");
- o->box(FL_THIN_UP_BOX);
- o->down_box(FL_DOWN_BOX);
- o->color(FL_BACKGROUND_COLOR);
- o->selection_color(FL_FOREGROUND_COLOR);
- o->labeltype(FL_NORMAL_LABEL);
- o->labelfont(0);
- o->labelsize(10);
- o->labelcolor(FL_FOREGROUND_COLOR);
- o->callback((Fl_Callback*)cb_Sustain);
- o->align(Fl_Align(FL_ALIGN_LEFT|FL_ALIGN_INSIDE));
- o->when(FL_WHEN_RELEASE);
- o->init("sustain.receive");
- } // Fl_Osc_Check* o
- { Fl_Button* o = new Fl_Button(400, 110, 95, 20, "Close");
- o->box(FL_THIN_UP_BOX);
- o->callback((Fl_Callback*)cb_Close);
- } // Fl_Button* o
- { Fl_Osc_Button* o = new Fl_Osc_Button(5, 110, 210, 20, "Reset all controllers");
- o->box(FL_THIN_UP_BOX);
- o->color(FL_BACKGROUND_COLOR);
- o->selection_color(FL_BACKGROUND_COLOR);
- o->labeltype(FL_NORMAL_LABEL);
- o->labelfont(0);
- o->labelsize(14);
- o->labelcolor(FL_FOREGROUND_COLOR);
- o->callback((Fl_Callback*)cb_Reset);
- o->align(Fl_Align(FL_ALIGN_CENTER));
- o->when(FL_WHEN_RELEASE);
- } // Fl_Osc_Button* o
- { Fl_Osc_Group* o = new Fl_Osc_Group(280, 15, 160, 90, "Portamento");
- o->box(FL_UP_FRAME);
- o->color(FL_BACKGROUND_COLOR);
- o->selection_color(FL_BACKGROUND_COLOR);
- o->labeltype(FL_NORMAL_LABEL);
- o->labelfont(0);
- o->labelsize(10);
- o->labelcolor(FL_FOREGROUND_COLOR);
- o->align(Fl_Align(FL_ALIGN_TOP));
- o->when(FL_WHEN_RELEASE);
- { Fl_Osc_Check* o = new Fl_Osc_Check(285, 20, 40, 20, "Rcv");
- o->tooltip("Receive Portamento Controllers");
- o->box(FL_THIN_UP_BOX);
- o->down_box(FL_DOWN_BOX);
- o->color(FL_BACKGROUND_COLOR);
- o->selection_color(FL_FOREGROUND_COLOR);
- o->labeltype(FL_NORMAL_LABEL);
- o->labelfont(0);
- o->labelsize(10);
- o->labelcolor(FL_FOREGROUND_COLOR);
- o->align(Fl_Align(FL_ALIGN_LEFT|FL_ALIGN_INSIDE));
- o->when(FL_WHEN_RELEASE);
- o->init("portamento.receive");
- } // Fl_Osc_Check* o
- { Fl_Osc_Dial* o = new Fl_Osc_Dial(285, 60, 25, 25, "time");
- o->tooltip("Portamento time");
- o->box(FL_NO_BOX);
- o->color(FL_BACKGROUND_COLOR);
- o->selection_color(FL_INACTIVE_COLOR);
- o->labeltype(FL_NORMAL_LABEL);
- o->labelfont(0);
- o->labelsize(10);
- o->labelcolor(FL_FOREGROUND_COLOR);
- o->maximum(127);
- o->step(1);
- o->align(Fl_Align(FL_ALIGN_BOTTOM));
- o->when(FL_WHEN_CHANGED);
- o->init("portamento.time");o->reset_value=64;
- } // Fl_Osc_Dial* o
- { Fl_Osc_Counter* o = new Fl_Osc_Counter(340, 20, 50, 20, "thresh");
- o->tooltip("Minimum or max. difference of the notes in order to do the portamento (x 100 \
- cents)");
- o->type(1);
- o->box(FL_UP_BOX);
- o->color(FL_BACKGROUND_COLOR);
- o->selection_color(FL_INACTIVE_COLOR);
- o->labeltype(FL_NORMAL_LABEL);
- o->labelfont(0);
- o->labelsize(10);
- o->labelcolor(FL_FOREGROUND_COLOR);
- o->minimum(0);
- o->maximum(127);
- o->step(1);
- o->align(Fl_Align(FL_ALIGN_BOTTOM));
- o->when(FL_WHEN_CHANGED);
- o->init("portamento.pitchthresh");
- } // Fl_Osc_Counter* o
- { Fl_Osc_Check* o = new Fl_Osc_Check(365, 70, 15, 15, "th.type");
- o->tooltip("Threshold type (min/max)");
- o->box(FL_NO_BOX);
- o->down_box(FL_DOWN_BOX);
- o->color(FL_BACKGROUND_COLOR);
- o->selection_color(FL_FOREGROUND_COLOR);
- o->labeltype(FL_NORMAL_LABEL);
- o->labelfont(0);
- o->labelsize(10);
- o->labelcolor(FL_FOREGROUND_COLOR);
- o->align(Fl_Align(FL_ALIGN_BOTTOM));
- o->when(FL_WHEN_RELEASE);
- o->init("portamento.pitchthreshtype");
- } // Fl_Osc_Check* o
- { Fl_Box* o = new Fl_Box(340, 50, 55, 15, "x100 cnt.");
- o->labelsize(10);
- o->align(Fl_Align(FL_ALIGN_CENTER|FL_ALIGN_INSIDE));
- } // Fl_Box* o
- { Fl_Osc_Dial* o = new Fl_Osc_Dial(315, 60, 25, 25, "t.dn/up");
- o->tooltip("Portamento time stretch (up/down)");
- o->box(FL_NO_BOX);
- o->color(FL_BACKGROUND_COLOR);
- o->selection_color(FL_INACTIVE_COLOR);
- o->labeltype(FL_NORMAL_LABEL);
- o->labelfont(0);
- o->labelsize(10);
- o->labelcolor(FL_FOREGROUND_COLOR);
- o->maximum(127);
- o->step(1);
- o->align(Fl_Align(FL_ALIGN_BOTTOM));
- o->when(FL_WHEN_CHANGED);
- o->init("portamento.updowntimestretch");o->reset_value=64;
- } // Fl_Osc_Dial* o
- { Fl_Osc_Dial* o = propta = new Fl_Osc_Dial(405, 20, 25, 25, "Prp.Rate");
- propta->tooltip("Distance required to double change from nonpropotinal portamento time");
- propta->box(FL_NO_BOX);
- propta->color(FL_BACKGROUND_COLOR);
- propta->selection_color(FL_INACTIVE_COLOR);
- propta->labeltype(FL_NORMAL_LABEL);
- propta->labelfont(0);
- propta->labelsize(9);
- propta->labelcolor(FL_FOREGROUND_COLOR);
- propta->maximum(127);
- propta->step(1);
- propta->align(Fl_Align(FL_ALIGN_BOTTOM));
- propta->when(FL_WHEN_CHANGED);
- o->init("portamento.propRate");o->reset_value=80;
- } // Fl_Osc_Dial* propta
- { Fl_Osc_Dial* o = proptb = new Fl_Osc_Dial(405, 60, 25, 25, "Prp.Dpth");
- proptb->tooltip("The difference from nonproportinal portamento");
- proptb->box(FL_NO_BOX);
- proptb->color(FL_BACKGROUND_COLOR);
- proptb->selection_color(FL_INACTIVE_COLOR);
- proptb->labeltype(FL_NORMAL_LABEL);
- proptb->labelfont(0);
- proptb->labelsize(9);
- proptb->labelcolor(FL_FOREGROUND_COLOR);
- proptb->maximum(127);
- proptb->step(1);
- proptb->align(Fl_Align(FL_ALIGN_BOTTOM));
- proptb->when(FL_WHEN_CHANGED);
- o->init("portamento.propDepth");o->reset_value=90;
- } // Fl_Osc_Dial* proptb
- { Fl_Osc_Check* o = new Fl_Osc_Check(285, 40, 50, 15, "Proprt.");
- o->tooltip("Enable Proportinal Portamento (over fixed Portamento)");
- o->box(FL_THIN_UP_BOX);
- o->down_box(FL_DOWN_BOX);
- o->color(FL_BACKGROUND_COLOR);
- o->selection_color(FL_FOREGROUND_COLOR);
- o->labeltype(FL_NORMAL_LABEL);
- o->labelfont(0);
- o->labelsize(9);
- o->labelcolor(FL_FOREGROUND_COLOR);
- o->callback((Fl_Callback*)cb_Proprt);
- o->align(Fl_Align(FL_ALIGN_LEFT|FL_ALIGN_INSIDE));
- o->when(FL_WHEN_RELEASE);
- o->init("portamento.proportional");
- } // Fl_Osc_Check* o
- o->end();
- } // Fl_Osc_Group* o
- { Fl_Osc_Group* o = new Fl_Osc_Group(445, 15, 50, 90, "Resonance");
- o->box(FL_UP_FRAME);
- o->color(FL_BACKGROUND_COLOR);
- o->selection_color(FL_BACKGROUND_COLOR);
- o->labeltype(FL_NORMAL_LABEL);
- o->labelfont(0);
- o->labelsize(10);
- o->labelcolor(FL_FOREGROUND_COLOR);
- o->align(Fl_Align(FL_ALIGN_TOP));
- o->when(FL_WHEN_RELEASE);
- { Fl_Osc_Dial* o = new Fl_Osc_Dial(455, 60, 25, 25, "BWdpth");
- o->tooltip("BandWidth controller depth");
- o->box(FL_NO_BOX);
- o->color(FL_BACKGROUND_COLOR);
- o->selection_color(FL_INACTIVE_COLOR);
- o->labeltype(FL_NORMAL_LABEL);
- o->labelfont(0);
- o->labelsize(10);
- o->labelcolor(FL_FOREGROUND_COLOR);
- o->maximum(127);
- o->step(1);
- o->align(Fl_Align(FL_ALIGN_BOTTOM));
- o->when(FL_WHEN_CHANGED);
- o->init("resonancebandwidth.depth");o->reset_value=64;
- } // Fl_Osc_Dial* o
- { Fl_Osc_Dial* o = new Fl_Osc_Dial(455, 20, 25, 25, "CFdpth");
- o->tooltip("Center Frequency controller Depth");
- o->box(FL_NO_BOX);
- o->color(FL_BACKGROUND_COLOR);
- o->selection_color(FL_INACTIVE_COLOR);
- o->labeltype(FL_NORMAL_LABEL);
- o->labelfont(0);
- o->labelsize(10);
- o->labelcolor(FL_FOREGROUND_COLOR);
- o->maximum(127);
- o->step(1);
- o->align(Fl_Align(FL_ALIGN_BOTTOM));
- o->when(FL_WHEN_CHANGED);
- o->init("resonancecenter.depth");o->reset_value=64;
- } // Fl_Osc_Dial* o
- o->end();
- } // Fl_Osc_Group* o
- { Fl_Osc_Check* o = new Fl_Osc_Check(10, 15, 40, 25, "Exp MWh");
- o->tooltip("Exponential modulation wheel");
- o->box(FL_NO_BOX);
- o->down_box(FL_DOWN_BOX);
- o->color(FL_BACKGROUND_COLOR);
- o->selection_color(FL_FOREGROUND_COLOR);
- o->labeltype(FL_NORMAL_LABEL);
- o->labelfont(0);
- o->labelsize(10);
- o->labelcolor(FL_FOREGROUND_COLOR);
- o->align(Fl_Align(132|FL_ALIGN_INSIDE));
- o->when(FL_WHEN_RELEASE);
- o->init("modwheel.exponential");
- } // Fl_Osc_Check* o
- { Fl_Osc_Check* o = new Fl_Osc_Check(85, 15, 35, 25, "Exp BW");
- o->tooltip("Exponential BandWidth Controller");
- o->box(FL_NO_BOX);
- o->down_box(FL_DOWN_BOX);
- o->color(FL_BACKGROUND_COLOR);
- o->selection_color(FL_FOREGROUND_COLOR);
- o->labeltype(FL_NORMAL_LABEL);
- o->labelfont(0);
- o->labelsize(10);
- o->labelcolor(FL_FOREGROUND_COLOR);
- o->align(Fl_Align(132|FL_ALIGN_INSIDE));
- o->when(FL_WHEN_RELEASE);
- o->init("bandwidth.exponential");
- } // Fl_Osc_Check* o
- ctlwindow->end();
- } // Fl_Osc_Window* ctlwindow
- { partfx = new Fl_Osc_Window(390, 145, "Part\'s Insert Effects");
- partfx->box(FL_NO_BOX);
- partfx->color(FL_BACKGROUND_COLOR);
- partfx->selection_color(FL_BACKGROUND_COLOR);
- partfx->labeltype(FL_NO_LABEL);
- partfx->labelfont(0);
- partfx->labelsize(14);
- partfx->labelcolor(FL_FOREGROUND_COLOR);
- partfx->user_data((void*)(this));
- partfx->align(Fl_Align(FL_ALIGN_TOP));
- partfx->when(FL_WHEN_RELEASE);
- { new Fl_Box(0, 0, 0, 0);
- partfx->init(osc, part_path);
- } // Fl_Box* o
- { Fl_Counter* o = inseffnocounter = new Fl_Counter(5, 110, 80, 20, "FX No.");
- inseffnocounter->type(1);
- inseffnocounter->labelfont(1);
- inseffnocounter->minimum(1);
- inseffnocounter->maximum(127);
- inseffnocounter->step(1);
- inseffnocounter->textfont(1);
- inseffnocounter->callback((Fl_Callback*)cb_inseffnocounter);
- inseffnocounter->align(Fl_Align(FL_ALIGN_BOTTOM_LEFT));
- o->bounds(1,NUM_PART_EFX);
- o->value(ninseff+1);
- } // Fl_Counter* inseffnocounter
- { Fl_Osc_Choice* o = insefftype = new Fl_Osc_Choice(155, 110, 70, 15, "EffType");
- insefftype->box(FL_UP_BOX);
- insefftype->down_box(FL_BORDER_BOX);
- insefftype->color(FL_BACKGROUND_COLOR);
- insefftype->selection_color(FL_SELECTION_COLOR);
- insefftype->labeltype(FL_NORMAL_LABEL);
- insefftype->labelfont(0);
- insefftype->labelsize(10);
- insefftype->labelcolor(FL_FOREGROUND_COLOR);
- insefftype->callback((Fl_Callback*)cb_insefftype);
- insefftype->align(Fl_Align(FL_ALIGN_BOTTOM_LEFT));
- insefftype->when(FL_WHEN_RELEASE);
- insefftype->menu(menu_insefftype);
- o->init(("partefx"+to_s(ninseff)+"/efftype").c_str());
- } // Fl_Osc_Choice* insefftype
- { inseffectuigroup = new Fl_Osc_Group(5, 5, 380, 100);
- inseffectuigroup->box(FL_FLAT_BOX);
- inseffectuigroup->color((Fl_Color)48);
- inseffectuigroup->selection_color(FL_BACKGROUND_COLOR);
- inseffectuigroup->labeltype(FL_NORMAL_LABEL);
- inseffectuigroup->labelfont(0);
- inseffectuigroup->labelsize(14);
- inseffectuigroup->labelcolor(FL_FOREGROUND_COLOR);
- inseffectuigroup->align(Fl_Align(FL_ALIGN_TOP));
- inseffectuigroup->when(FL_WHEN_RELEASE);
- { new Fl_Box(0, 0, 0, 0);
- inseffectuigroup->ext = "partefx0/";
- } // Fl_Box* o
- { EffUI* o = inseffectui = new EffUI(5, 5, 380, 95);
- inseffectui->box(FL_NO_BOX);
- inseffectui->color(FL_BACKGROUND_COLOR);
- inseffectui->selection_color(FL_BACKGROUND_COLOR);
- inseffectui->labeltype(FL_NORMAL_LABEL);
- inseffectui->labelfont(0);
- inseffectui->labelsize(14);
- inseffectui->labelcolor(FL_FOREGROUND_COLOR);
- inseffectui->align(Fl_Align(FL_ALIGN_TOP));
- inseffectui->when(FL_WHEN_RELEASE);
- o->init(true);
- inseffectui->end();
- } // EffUI* inseffectui
- inseffectuigroup->end();
- } // Fl_Osc_Group* inseffectuigroup
- { Fl_Button* o = new Fl_Button(325, 115, 60, 20, "Close");
- o->box(FL_THIN_UP_BOX);
- o->callback((Fl_Callback*)cb_Close1);
- } // Fl_Button* o
- { Fl_Osc_Choice* o = sendtochoice = new Fl_Osc_Choice(235, 110, 80, 15, "Send To.");
- sendtochoice->box(FL_UP_BOX);
- sendtochoice->down_box(FL_BORDER_BOX);
- sendtochoice->color(FL_BACKGROUND_COLOR);
- sendtochoice->selection_color(FL_SELECTION_COLOR);
- sendtochoice->labeltype(FL_NORMAL_LABEL);
- sendtochoice->labelfont(0);
- sendtochoice->labelsize(10);
- sendtochoice->labelcolor(FL_FOREGROUND_COLOR);
- sendtochoice->callback((Fl_Callback*)cb_sendtochoice);
- sendtochoice->align(Fl_Align(FL_ALIGN_BOTTOM_LEFT));
- sendtochoice->when(FL_WHEN_RELEASE);
- sendtochoice->menu(menu_sendtochoice);
- /*int x=part->Pefxroute[ninseff]; if (x==127) x=1;*/
- o->init(("Pefxroute"+to_s(ninseff)).c_str());
- } // Fl_Osc_Choice* sendtochoice
- { Fl_Osc_Check* o = bypasseff = new Fl_Osc_Check(90, 110, 60, 15, "bypass");
- bypasseff->tooltip("if the effect is not used (is bypassed)");
- bypasseff->box(FL_NO_BOX);
- bypasseff->down_box(FL_DOWN_BOX);
- bypasseff->color(FL_BACKGROUND_COLOR);
- bypasseff->selection_color(FL_FOREGROUND_COLOR);
- bypasseff->labeltype(FL_NORMAL_LABEL);
- bypasseff->labelfont(0);
- bypasseff->labelsize(11);
- bypasseff->labelcolor(FL_FOREGROUND_COLOR);
- bypasseff->align(Fl_Align(FL_ALIGN_LEFT|FL_ALIGN_INSIDE));
- bypasseff->when(FL_WHEN_RELEASE);
- o->init("Pefxbypass"+to_s(ninseff));
- } // Fl_Osc_Check* bypasseff
- { Fl_Button* o = new Fl_Button(90, 127, 25, 15, "C");
- o->box(FL_THIN_UP_BOX);
- o->color((Fl_Color)179);
- o->labelfont(1);
- o->labelsize(11);
- o->labelcolor((Fl_Color)55);
- o->callback((Fl_Callback*)cb_C);
- } // Fl_Button* o
- { Fl_Button* o = new Fl_Button(120, 127, 25, 15, "P");
- o->box(FL_THIN_UP_BOX);
- o->color((Fl_Color)179);
- o->labelfont(1);
- o->labelsize(11);
- o->labelcolor((Fl_Color)55);
- o->callback((Fl_Callback*)cb_P);
- } // Fl_Button* o
- partfx->end();
- } // Fl_Osc_Window* partfx
- { instrumentkitlist = new Fl_Osc_Window(670, 370, "Instrument Kit");
- instrumentkitlist->box(FL_NO_BOX);
- instrumentkitlist->color(FL_BACKGROUND_COLOR);
- instrumentkitlist->selection_color(FL_BACKGROUND_COLOR);
- instrumentkitlist->labeltype(FL_NO_LABEL);
- instrumentkitlist->labelfont(0);
- instrumentkitlist->labelsize(14);
- instrumentkitlist->labelcolor(FL_FOREGROUND_COLOR);
- instrumentkitlist->user_data((void*)(this));
- instrumentkitlist->align(Fl_Align(FL_ALIGN_TOP));
- instrumentkitlist->when(FL_WHEN_RELEASE);
- { new Fl_Box(0, 0, 0, 0);
- instrumentkitlist->init(osc, "/part"+to_s(npart)+"/");
- } // Fl_Box* o
- { Fl_Button* o = new Fl_Button(255, 350, 160, 20, "Close Window");
- o->box(FL_THIN_UP_BOX);
- o->callback((Fl_Callback*)cb_Close2);
- } // Fl_Button* o
- { kitlist = new Fl_Scroll(0, 15, 670, 330);
- kitlist->type(2);
- kitlist->box(FL_UP_FRAME);
- { Fl_Pack* o = new Fl_Pack(0, 20, 670, 320);
- for (int i=0;i<NUM_KIT_ITEMS;i++){partkititem[i]=new PartKitItem(0,0,670,20);partkititem[i]->init(i,this);}
- o->end();
- } // Fl_Pack* o
- kitlist->end();
- } // Fl_Scroll* kitlist
- { Fl_Box* o = new Fl_Box(5, 0, 25, 15, "No.");
- o->labelfont(1);
- o->labelsize(11);
- o->align(Fl_Align(FL_ALIGN_BOTTOM|FL_ALIGN_INSIDE));
- } // Fl_Box* o
- { Fl_Box* o = new Fl_Box(55, 0, 25, 15, "M.");
- o->labelfont(1);
- o->labelsize(11);
- o->align(Fl_Align(FL_ALIGN_BOTTOM|FL_ALIGN_INSIDE));
- } // Fl_Box* o
- { Fl_Box* o = new Fl_Box(235, 0, 40, 15, "Min.k");
- o->labelfont(1);
- o->labelsize(11);
- o->align(Fl_Align(FL_ALIGN_BOTTOM|FL_ALIGN_INSIDE));
- } // Fl_Box* o
- { Fl_Box* o = new Fl_Box(345, 0, 40, 15, "Max.k");
- o->labelfont(1);
- o->labelsize(11);
- o->align(Fl_Align(FL_ALIGN_BOTTOM|FL_ALIGN_INSIDE));
- } // Fl_Box* o
- { Fl_Box* o = new Fl_Box(405, 0, 50, 15, "ADsynth");
- o->labelfont(1);
- o->labelsize(11);
- o->align(Fl_Align(FL_ALIGN_BOTTOM|FL_ALIGN_INSIDE));
- } // Fl_Box* o
- { Fl_Box* o = new Fl_Box(470, 0, 60, 15, "SUBsynth");
- o->labelfont(1);
- o->labelsize(11);
- o->align(Fl_Align(FL_ALIGN_BOTTOM|FL_ALIGN_INSIDE));
- } // Fl_Box* o
- { Fl_Osc_Choice* o = new Fl_Osc_Choice(35, 350, 70, 15, "Mode");
- o->box(FL_UP_BOX);
- o->down_box(FL_BORDER_BOX);
- o->color(FL_BACKGROUND_COLOR);
- o->selection_color(FL_SELECTION_COLOR);
- o->labeltype(FL_NORMAL_LABEL);
- o->labelfont(0);
- o->labelsize(11);
- o->labelcolor(FL_FOREGROUND_COLOR);
- o->textfont(1);
- o->textsize(11);
- o->callback((Fl_Callback*)cb_Mode);
- o->align(Fl_Align(FL_ALIGN_LEFT));
- o->when(FL_WHEN_RELEASE);
- o->menu(menu_Mode);
- o->init("Pkitmode");
- } // Fl_Osc_Choice* o
- { Fl_Osc_Check* o = new Fl_Osc_Check(125, 350, 80, 15, "Drum mode");
- o->box(FL_NO_BOX);
- o->down_box(FL_DOWN_BOX);
- o->color(FL_BACKGROUND_COLOR);
- o->selection_color(FL_FOREGROUND_COLOR);
- o->labeltype(FL_NORMAL_LABEL);
- o->labelfont(0);
- o->labelsize(10);
- o->labelcolor(FL_FOREGROUND_COLOR);
- o->align(Fl_Align(FL_ALIGN_LEFT|FL_ALIGN_INSIDE));
- o->when(FL_WHEN_RELEASE);
- o->init("Pdrummode");
- } // Fl_Osc_Check* o
- { Fl_Button* o = new Fl_Button(481, 350, 106, 20, "Comments");
- o->box(FL_THIN_UP_BOX);
- o->callback((Fl_Callback*)cb_Comments);
- } // Fl_Button* o
- { Fl_Button* o = new Fl_Button(600, 350, 70, 20, "Effects");
- o->box(FL_THIN_UP_BOX);
- o->callback((Fl_Callback*)cb_Effects);
- } // Fl_Button* o
- { Fl_Box* o = new Fl_Box(620, 0, 30, 15, "FX.r.");
- o->labelfont(1);
- o->labelsize(11);
- o->align(Fl_Align(FL_ALIGN_BOTTOM|FL_ALIGN_INSIDE));
- } // Fl_Box* o
- { Fl_Box* o = new Fl_Box(540, 0, 60, 15, "PADsynth");
- o->labelfont(1);
- o->labelsize(11);
- o->align(Fl_Align(FL_ALIGN_BOTTOM|FL_ALIGN_INSIDE));
- } // Fl_Box* o
- instrumentkitlist->end();
- } // Fl_Osc_Window* instrumentkitlist
- { instrumenteditwindow = new Fl_Osc_Window(395, 360, "Instrument Edit");
- instrumenteditwindow->box(FL_NO_BOX);
- instrumenteditwindow->color(FL_BACKGROUND_COLOR);
- instrumenteditwindow->selection_color(FL_BACKGROUND_COLOR);
- instrumenteditwindow->labeltype(FL_NO_LABEL);
- instrumenteditwindow->labelfont(0);
- instrumenteditwindow->labelsize(14);
- instrumenteditwindow->labelcolor(FL_FOREGROUND_COLOR);
- instrumenteditwindow->user_data((void*)(this));
- instrumenteditwindow->align(Fl_Align(FL_ALIGN_TOP));
- instrumenteditwindow->when(FL_WHEN_RELEASE);
- { new Fl_Box(0, 0, 0, 0);
- instrumenteditwindow->init(osc, "/part"+to_s(npart)+"/");
- } // Fl_Box* o
- { editgroup = new Fl_Osc_Group(0, 220, 395, 110);
- editgroup->box(FL_UP_FRAME);
- editgroup->color(FL_BACKGROUND_COLOR);
- editgroup->selection_color(FL_BACKGROUND_COLOR);
- editgroup->labeltype(FL_NORMAL_LABEL);
- editgroup->labelfont(0);
- editgroup->labelsize(14);
- editgroup->labelcolor(FL_FOREGROUND_COLOR);
- editgroup->align(Fl_Align(FL_ALIGN_TOP));
- editgroup->when(FL_WHEN_RELEASE);
- { new Fl_Box(0, 220, 0, 0);
- editgroup->ext = "kit0/";
- } // Fl_Box* o
- { Fl_Group* o = new Fl_Group(205, 245, 100, 80, "PADsynth");
- o->box(FL_ENGRAVED_FRAME);
- o->labelfont(1);
- { padeditbutton = new Fl_Button(215, 280, 80, 35, "Edit");
- padeditbutton->color((Fl_Color)51);
- padeditbutton->selection_color((Fl_Color)51);
- padeditbutton->labelfont(1);
- padeditbutton->labelsize(13);
- padeditbutton->callback((Fl_Callback*)cb_padeditbutton1);
- padeditbutton->align(Fl_Align(FL_ALIGN_WRAP));
- } // Fl_Button* padeditbutton
- { Fl_Osc_Check* o = padsynenabledcheck = new Fl_Osc_Check(215, 255, 80, 20, "Enabled");
- padsynenabledcheck->tooltip("enable/disable PADsynth");
- padsynenabledcheck->box(FL_UP_BOX);
- padsynenabledcheck->down_box(FL_DOWN_BOX);
- padsynenabledcheck->color((Fl_Color)51);
- padsynenabledcheck->selection_color(FL_FOREGROUND_COLOR);
- padsynenabledcheck->labeltype(FL_NORMAL_LABEL);
- padsynenabledcheck->labelfont(1);
- padsynenabledcheck->labelsize(11);
- padsynenabledcheck->labelcolor(FL_FOREGROUND_COLOR);
- padsynenabledcheck->callback((Fl_Callback*)cb_padsynenabledcheck);
- padsynenabledcheck->align(Fl_Align(FL_ALIGN_LEFT|FL_ALIGN_INSIDE));
- padsynenabledcheck->when(FL_WHEN_RELEASE);
- o->init("Ppadenabled");
- } // Fl_Osc_Check* padsynenabledcheck
- o->end();
- } // Fl_Group* o
- { Fl_Group* o = new Fl_Group(5, 245, 100, 80, "ADsynth");
- o->box(FL_ENGRAVED_FRAME);
- o->labelfont(1);
- { Fl_Osc_Check* o = adsynenabledcheck = new Fl_Osc_Check(15, 255, 80, 20, "Enabled");
- adsynenabledcheck->tooltip("enable/disable ADsynth");
- adsynenabledcheck->box(FL_UP_BOX);
- adsynenabledcheck->down_box(FL_DOWN_BOX);
- adsynenabledcheck->color((Fl_Color)51);
- adsynenabledcheck->selection_color(FL_FOREGROUND_COLOR);
- adsynenabledcheck->labeltype(FL_NORMAL_LABEL);
- adsynenabledcheck->labelfont(1);
- adsynenabledcheck->labelsize(11);
- adsynenabledcheck->labelcolor(FL_FOREGROUND_COLOR);
- adsynenabledcheck->callback((Fl_Callback*)cb_adsynenabledcheck);
- adsynenabledcheck->align(Fl_Align(FL_ALIGN_LEFT|FL_ALIGN_INSIDE));
- adsynenabledcheck->when(FL_WHEN_RELEASE);
- o->init("Padenabled");
- } // Fl_Osc_Check* adsynenabledcheck
- { adeditbutton = new Fl_Button(15, 281, 80, 34, "Edit");
- adeditbutton->color((Fl_Color)51);
- adeditbutton->selection_color((Fl_Color)51);
- adeditbutton->labelfont(1);
- adeditbutton->labelsize(13);
- adeditbutton->callback((Fl_Callback*)cb_adeditbutton1);
- adeditbutton->align(Fl_Align(FL_ALIGN_WRAP));
- } // Fl_Button* adeditbutton
- o->end();
- } // Fl_Group* o
- { Fl_Group* o = new Fl_Group(105, 245, 100, 80, "SUBsynth");
- o->box(FL_ENGRAVED_FRAME);
- o->labelfont(1);
- { Fl_Osc_Check* o = subsynenabledcheck = new Fl_Osc_Check(115, 255, 80, 20, "Enabled");
- subsynenabledcheck->tooltip("enable/disable SUBsynth");
- subsynenabledcheck->box(FL_UP_BOX);
- subsynenabledcheck->down_box(FL_DOWN_BOX);
- subsynenabledcheck->color((Fl_Color)51);
- subsynenabledcheck->selection_color(FL_FOREGROUND_COLOR);
- subsynenabledcheck->labeltype(FL_NORMAL_LABEL);
- subsynenabledcheck->labelfont(1);
- subsynenabledcheck->labelsize(11);
- subsynenabledcheck->labelcolor(FL_FOREGROUND_COLOR);
- subsynenabledcheck->callback((Fl_Callback*)cb_subsynenabledcheck);
- subsynenabledcheck->align(Fl_Align(FL_ALIGN_LEFT|FL_ALIGN_INSIDE));
- subsynenabledcheck->when(FL_WHEN_RELEASE);
- o->init("Psubenabled");
- } // Fl_Osc_Check* subsynenabledcheck
- { subeditbutton = new Fl_Button(115, 280, 80, 35, "Edit");
- subeditbutton->color((Fl_Color)51);
- subeditbutton->selection_color((Fl_Color)51);
- subeditbutton->labelfont(1);
- subeditbutton->labelsize(13);
- subeditbutton->callback((Fl_Callback*)cb_subeditbutton1);
- subeditbutton->align(Fl_Align(FL_ALIGN_WRAP));
- } // Fl_Button* subeditbutton
- o->end();
- } // Fl_Group* o
- { Fl_Button* o = new Fl_Button(310, 245, 80, 35, "Kit Edit");
- o->color((Fl_Color)51);
- o->selection_color((Fl_Color)51);
- o->labelfont(1);
- o->callback((Fl_Callback*)cb_Kit);
- o->align(Fl_Align(FL_ALIGN_WRAP));
- } // Fl_Button* o
- { Fl_Button* o = new Fl_Button(310, 290, 80, 35, "Effects");
- o->color((Fl_Color)51);
- o->selection_color((Fl_Color)51);
- o->labelfont(1);
- o->labelsize(13);
- o->callback((Fl_Callback*)cb_Effects1);
- } // Fl_Button* o
- editgroup->end();
- } // Fl_Osc_Group* editgroup
- { Fl_Group* o = new Fl_Group(0, 5, 395, 215);
- o->box(FL_UP_FRAME);
- { Fl_Osc_Input* o = new Fl_Osc_Input(5, 60, 385, 50, "Author and Copyright");
- o->type(4);
- o->box(FL_DOWN_BOX);
- o->color((Fl_Color)124);
- o->selection_color(FL_SELECTION_COLOR);
- o->labeltype(FL_NORMAL_LABEL);
- o->labelfont(0);
- o->labelsize(10);
- o->labelcolor(FL_FOREGROUND_COLOR);
- o->callback((Fl_Callback*)cb_Author);
- o->align(Fl_Align(FL_ALIGN_TOP_LEFT));
- o->when(FL_WHEN_RELEASE);
- o->maximum_size(MAX_INFO_TEXT_SIZE);
- o->init("info.Pauthor");
- } // Fl_Osc_Input* o
- { Fl_Osc_Input* o = new Fl_Osc_Input(5, 125, 385, 90, "Comments");
- o->type(4);
- o->box(FL_DOWN_BOX);
- o->color((Fl_Color)124);
- o->selection_color(FL_SELECTION_COLOR);
- o->labeltype(FL_NORMAL_LABEL);
- o->labelfont(0);
- o->labelsize(11);
- o->labelcolor(FL_FOREGROUND_COLOR);
- o->callback((Fl_Callback*)cb_Comments1);
- o->align(Fl_Align(FL_ALIGN_TOP_LEFT));
- o->when(FL_WHEN_RELEASE);
- o->maximum_size(MAX_INFO_TEXT_SIZE);
- o->init("info.Pcomments");
- } // Fl_Osc_Input* o
- { Fl_Osc_Choice* o = new Fl_Osc_Choice(5, 25, 155, 20, "Type:");
- o->box(FL_UP_BOX);
- o->down_box(FL_BORDER_BOX);
- o->color(FL_BACKGROUND_COLOR);
- o->selection_color(FL_SELECTION_COLOR);
- o->labeltype(FL_NORMAL_LABEL);
- o->labelfont(1);
- o->labelsize(11);
- o->labelcolor(FL_FOREGROUND_COLOR);
- o->textsize(10);
- o->align(Fl_Align(FL_ALIGN_TOP_LEFT));
- o->when(FL_WHEN_RELEASE);
- o->menu(menu_Type);
- o->init("info.Ptype");
- } // Fl_Osc_Choice* o
- o->end();
- } // Fl_Group* o
- { Fl_Button* o = new Fl_Button(150, 335, 95, 25, "Close");
- o->box(FL_THIN_UP_BOX);
- o->callback((Fl_Callback*)cb_Close3);
- } // Fl_Button* o
- instrumenteditwindow->end();
- } // Fl_Osc_Window* instrumenteditwindow
- return instrumenteditwindow;
- }
-
- PartUI::PartUI(int x,int y, int w, int h, const char *label):Fl_Osc_Group(x,y,w,h,label) {
- adnoteui=NULL;
- subnoteui=NULL;
- padnoteui=NULL;
- lastkititem=-1;
- }
-
- void PartUI::init(std::string part_path_, int npart_,BankUI *bankui_, std::string loc_, Fl_Osc_Interface *osc_) {
- assert(osc_);
- assert(!loc_.empty());
-
- bankui=bankui_;
- part_path = part_path_;
- base = part_path;
- npart=npart_;
- ninseff=0;
- osc=osc_;
- loc=loc_;
-
- make_window();
- #ifdef NTK_GUI
- adsynenabledcheck->selection_color(55);
- subsynenabledcheck->selection_color(55);
- padsynenabledcheck->selection_color(55);
- #endif
- partgroup->position(this->parent()->x()+2,this->parent()->y()+2);
- partgroup->show();
- end();
-
-
- //if (config.ui.showinstrumentinfo!=0) instrumenteditwindow->show();
- }
-
- int PartUI::cleanuplastkit(int kititem) {
- if (kititem==lastkititem)
- return 0;
- delete adnoteui;
- delete subnoteui;
- delete padnoteui;
- adnoteui=NULL;subnoteui=NULL;padnoteui=NULL;
- lastkititem=kititem;
-
- if(kititem>=NUM_KIT_ITEMS) return 1;//bad kit item
- if(kititem<0) return 1;
- return 0;
- }
-
- void PartUI::showparameters(int kititem,int engine) {
- if (engine==-1){//this is used if I want to clear the engine from the part
- //if (kititem==lastkititem) kititem=-1;
- //else kititem=lastkititem;
- delete adnoteui;
- delete subnoteui;
- delete padnoteui;
- adnoteui=NULL;subnoteui=NULL;padnoteui=NULL;
- return;
- }
-
- if (cleanuplastkit(kititem))
- return;
-
- if(!adnoteui && engine==0)//adsynenabledcheck->value())
- adnoteui=new ADnoteUI(loc+"kit"+to_s(kititem)+"/adpars/", osc);
-
- if(!subnoteui && engine==1)//subsynenabledcheck->value())
- subnoteui=new SUBnoteUI(osc, loc+"kit"+to_s(kititem)+"/subpars/");
-
- if(!padnoteui && engine==2)//padsynenabledcheck->value())
- padnoteui=new PADnoteUI(loc+"kit"+to_s(kititem)+"/padpars/", osc);
-
- if (engine==0&&adnoteui) adnoteui->ADnoteGlobalParameters->show();
- if (engine==1&&subnoteui) subnoteui->SUBparameters->show();
- if (engine==2&&padnoteui) padnoteui->padnotewindow->show();
- }
-
- void PartUI::showvoiceparams(int kititem, bool voicelist) {
- if (cleanuplastkit(kititem))
- return;
- if(adnoteui ||
- (adnoteui=new ADnoteUI(loc+"kit"+to_s(kititem)+"/adpars/", osc))) {
- if(voicelist)
- adnoteui->ADnoteVoiceList->show();
- else {
- if (adnoteui->advoice->mod_type->value() == 0)
- adnoteui->advoice->voiceFMparametersgroup->deactivate();
- else
- adnoteui->advoice->voiceFMparametersgroup->activate();
- adnoteui->ADnoteVoice->show();
- }}
- }
-
- PartUI::~PartUI() {
- delete adnoteui;
- delete subnoteui;
- delete padnoteui;
-
- partgroup->hide();
- //delete(partgroup);
-
- ctlwindow->hide();
- delete(ctlwindow);
-
- partfx->hide();
- delete(partfx);
-
- instrumentkitlist->hide();
- delete(instrumentkitlist);
-
- instrumenteditwindow->hide();
- delete(instrumenteditwindow);
- }
-
- void PartUI::rebase(std::string new_loc) {
- loc = new_loc;
- partgroupui->rebase(new_loc);
- ctlwindow->rebase(new_loc+"ctl/");
- partfx->rebase(new_loc);
- instrumentkitlist->rebase(new_loc);
- instrumenteditwindow->rebase(new_loc);
- partenablebutton->rebase(new_loc);
- int next_part = 0;
- const char *tmp = new_loc.c_str();
- while(*tmp && !isdigit(*tmp)) tmp++;
- next_part = atoi(tmp);
- for (int i=0;i<NUM_SYS_EFX;i++)
- psyef[i]->rebase(next_part);
- }
|