Sequencer: Fix layering of controls.
This commit is contained in:
parent
0cc0bf2f00
commit
c9a7e56b80
|
@ -226,142 +226,6 @@ if ( maybe_save_song() )
|
||||||
xywh {798 131 865 805} type Double color 47 resizable
|
xywh {798 131 865 805} type Double color 47 resizable
|
||||||
code0 {o->color( FL_BACKGROUND_COLOR );} xclass non size_range {700 509 0 0} visible
|
code0 {o->color( FL_BACKGROUND_COLOR );} xclass non size_range {700 509 0 0} visible
|
||||||
} {
|
} {
|
||||||
Fl_Group {} {open
|
|
||||||
xywh {0 30 865 70}
|
|
||||||
} {
|
|
||||||
Fl_Pack {} {
|
|
||||||
label Meter open
|
|
||||||
xywh {214 72 175 25} type HORIZONTAL labeltype NO_LABEL labelsize 9 align 0
|
|
||||||
code0 {o->spacing( 3 );}
|
|
||||||
} {
|
|
||||||
Fl_Box {} {
|
|
||||||
label {BPM:}
|
|
||||||
xywh {220 68 35 27} resizable
|
|
||||||
}
|
|
||||||
Fl_Value_Input {} {
|
|
||||||
callback {transport.set_beats_per_minute( o->value() );}
|
|
||||||
xywh {265 68 55 27} when 8
|
|
||||||
code1 {transport.signal_tempo_change.connect( sigc::mem_fun( o, static_cast<int (Fl_Valuator::*)(double)>(&Fl_Valuator::value) ) );}
|
|
||||||
code2 {o->value( transport.beats_per_minute );}
|
|
||||||
}
|
|
||||||
Fl_Value_Input {} {
|
|
||||||
callback {transport.set_beats_per_bar( o->value() );}
|
|
||||||
xywh {325 68 26 27}
|
|
||||||
code0 {transport.signal_bpb_change.connect( sigc::mem_fun( o, static_cast<int (Fl_Valuator::*)(double)>(&Fl_Valuator::value) ) );}
|
|
||||||
code1 {o->value( transport.beats_per_bar );}
|
|
||||||
}
|
|
||||||
Fl_Box {} {
|
|
||||||
label {/}
|
|
||||||
xywh {346 68 19 27}
|
|
||||||
}
|
|
||||||
Fl_Value_Input {} {
|
|
||||||
callback {transport.set_beat_type( o->value() );}
|
|
||||||
xywh {365 68 24 27}
|
|
||||||
code0 {transport.signal_beat_change.connect( sigc::mem_fun( o, static_cast<int (Fl_Valuator::*)(double)>(&Fl_Valuator::value) ) );}
|
|
||||||
code1 {o->value( transport.beat_type );}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
Fl_Pack vmetro_widget {
|
|
||||||
label Metronome
|
|
||||||
xywh {395 34 461 60} type HORIZONTAL box UP_BOX color 40 selection_color 48 labelsize 33 align 0 resizable
|
|
||||||
code0 {\#include "widgets.H"}
|
|
||||||
code1 {o->box( FL_FLAT_BOX );}
|
|
||||||
class Visual_Metronome
|
|
||||||
} {}
|
|
||||||
Fl_Pack transport_controls_group {open
|
|
||||||
xywh {4 32 160 44} type HORIZONTAL
|
|
||||||
code0 {o->spacing( 2 );}
|
|
||||||
class Fl_Scalepack
|
|
||||||
} {
|
|
||||||
Fl_Button play_button {
|
|
||||||
label {@>}
|
|
||||||
callback {transport.toggle();}
|
|
||||||
xywh {10 34 43 40} shortcut 0x20 labeltype ENGRAVED_LABEL
|
|
||||||
}
|
|
||||||
Fl_Button rec_button {
|
|
||||||
label {@circle}
|
|
||||||
callback {transport.recording = o->value();
|
|
||||||
|
|
||||||
|
|
||||||
if ( o->value() )
|
|
||||||
{
|
|
||||||
if ( config.record_mode == NEW )
|
|
||||||
{
|
|
||||||
pattern *p = new pattern;
|
|
||||||
p->length( -1 );
|
|
||||||
|
|
||||||
pattern_c->grid( p );
|
|
||||||
}
|
|
||||||
|
|
||||||
((pattern*)pattern_c->grid())->record( 0 );
|
|
||||||
|
|
||||||
o->labelcolor( FL_RED );
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
pattern::recording()->record_stop();
|
|
||||||
|
|
||||||
o->labelcolor( FL_WHITE );
|
|
||||||
}}
|
|
||||||
xywh {60 34 43 40} type Toggle shortcut 0x80072 selection_color 47 labeltype ENGRAVED_LABEL when 1
|
|
||||||
}
|
|
||||||
Fl_Button home_button {
|
|
||||||
label {@|<}
|
|
||||||
callback {transport.locate( 0 );}
|
|
||||||
xywh {110 34 43 40} shortcut 0xff50 labeltype ENGRAVED_LABEL
|
|
||||||
}
|
|
||||||
}
|
|
||||||
Fl_Choice record_mode_menu {
|
|
||||||
label {&Record Mode}
|
|
||||||
callback {if ( ! transport.recording )
|
|
||||||
config.record_mode = (record_mode_e)o->value();
|
|
||||||
else
|
|
||||||
o->value( config.record_mode );} open
|
|
||||||
xywh {171 41 100 27} box DOWN_BOX down_box BORDER_BOX color 37 labelsize 9 align 1
|
|
||||||
} {
|
|
||||||
MenuItem {} {
|
|
||||||
label Merge
|
|
||||||
xywh {15 15 40 25}
|
|
||||||
}
|
|
||||||
MenuItem {} {
|
|
||||||
label Overwrite
|
|
||||||
xywh {25 25 40 25}
|
|
||||||
}
|
|
||||||
MenuItem {} {
|
|
||||||
label Layer
|
|
||||||
xywh {35 35 40 25}
|
|
||||||
}
|
|
||||||
MenuItem {} {
|
|
||||||
label New
|
|
||||||
xywh {45 45 40 25}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
Fl_Choice playback_mode_menu {
|
|
||||||
label {Playback &Mode} open
|
|
||||||
xywh {285 41 100 26} box DOWN_BOX down_box BORDER_BOX color 37 labelsize 9 align 1
|
|
||||||
} {
|
|
||||||
MenuItem {} {
|
|
||||||
label Pattern
|
|
||||||
callback {song.play_mode = PATTERN;}
|
|
||||||
xywh {5 5 40 25}
|
|
||||||
}
|
|
||||||
MenuItem {} {
|
|
||||||
label Sequence
|
|
||||||
callback {song.play_mode = SEQUENCE;}
|
|
||||||
xywh {15 15 40 25}
|
|
||||||
}
|
|
||||||
MenuItem {} {
|
|
||||||
label Trigger
|
|
||||||
callback {song.play_mode = TRIGGER;}
|
|
||||||
xywh {25 25 40 25}
|
|
||||||
}
|
|
||||||
MenuItem {} {
|
|
||||||
label Queue
|
|
||||||
callback {song.play_mode = QUEUE;}
|
|
||||||
xywh {0 0 40 24}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
Fl_Tabs tabs {
|
Fl_Tabs tabs {
|
||||||
callback {((Fl_Group*)o->value())->child( 0 )->take_focus();
|
callback {((Fl_Group*)o->value())->child( 0 )->take_focus();
|
||||||
|
|
||||||
|
@ -383,7 +247,7 @@ else
|
||||||
edit_menu->activate();
|
edit_menu->activate();
|
||||||
}
|
}
|
||||||
|
|
||||||
menu_bar->redraw();} open
|
menu_bar->redraw();}
|
||||||
xywh {0 79 865 698} color 37 labeltype SHADOW_LABEL labelsize 19 when 1 resizable
|
xywh {0 79 865 698} color 37 labeltype SHADOW_LABEL labelsize 19 when 1 resizable
|
||||||
code0 {canvas_background_color = fl_rgb_color( 18, 18, 18 );}
|
code0 {canvas_background_color = fl_rgb_color( 18, 18, 18 );}
|
||||||
} {
|
} {
|
||||||
|
@ -843,6 +707,142 @@ pattern_c->changed_mapping();}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
Fl_Group {} {
|
||||||
|
xywh {0 30 865 70}
|
||||||
|
} {
|
||||||
|
Fl_Pack {} {
|
||||||
|
label Meter open
|
||||||
|
xywh {214 72 175 25} type HORIZONTAL labeltype NO_LABEL labelsize 9 align 0
|
||||||
|
code0 {o->spacing( 3 );}
|
||||||
|
} {
|
||||||
|
Fl_Box {} {
|
||||||
|
label {BPM:}
|
||||||
|
xywh {220 68 35 27} resizable
|
||||||
|
}
|
||||||
|
Fl_Value_Input {} {
|
||||||
|
callback {transport.set_beats_per_minute( o->value() );}
|
||||||
|
xywh {265 68 55 27} when 8
|
||||||
|
code1 {transport.signal_tempo_change.connect( sigc::mem_fun( o, static_cast<int (Fl_Valuator::*)(double)>(&Fl_Valuator::value) ) );}
|
||||||
|
code2 {o->value( transport.beats_per_minute );}
|
||||||
|
}
|
||||||
|
Fl_Value_Input {} {
|
||||||
|
callback {transport.set_beats_per_bar( o->value() );}
|
||||||
|
xywh {325 68 26 27}
|
||||||
|
code0 {transport.signal_bpb_change.connect( sigc::mem_fun( o, static_cast<int (Fl_Valuator::*)(double)>(&Fl_Valuator::value) ) );}
|
||||||
|
code1 {o->value( transport.beats_per_bar );}
|
||||||
|
}
|
||||||
|
Fl_Box {} {
|
||||||
|
label {/}
|
||||||
|
xywh {346 68 19 27}
|
||||||
|
}
|
||||||
|
Fl_Value_Input {} {
|
||||||
|
callback {transport.set_beat_type( o->value() );}
|
||||||
|
xywh {365 68 24 27}
|
||||||
|
code0 {transport.signal_beat_change.connect( sigc::mem_fun( o, static_cast<int (Fl_Valuator::*)(double)>(&Fl_Valuator::value) ) );}
|
||||||
|
code1 {o->value( transport.beat_type );}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
Fl_Pack vmetro_widget {
|
||||||
|
label Metronome
|
||||||
|
xywh {395 34 461 60} type HORIZONTAL box UP_BOX color 40 selection_color 48 labelsize 33 align 0 resizable
|
||||||
|
code0 {\#include "widgets.H"}
|
||||||
|
code1 {o->box( FL_FLAT_BOX );}
|
||||||
|
class Visual_Metronome
|
||||||
|
} {}
|
||||||
|
Fl_Pack transport_controls_group {open
|
||||||
|
xywh {4 32 160 44} type HORIZONTAL
|
||||||
|
code0 {o->spacing( 2 );}
|
||||||
|
class Fl_Scalepack
|
||||||
|
} {
|
||||||
|
Fl_Button play_button {
|
||||||
|
label {@>}
|
||||||
|
callback {transport.toggle();}
|
||||||
|
xywh {10 34 43 40} shortcut 0x20 labeltype ENGRAVED_LABEL
|
||||||
|
}
|
||||||
|
Fl_Button rec_button {
|
||||||
|
label {@circle}
|
||||||
|
callback {transport.recording = o->value();
|
||||||
|
|
||||||
|
|
||||||
|
if ( o->value() )
|
||||||
|
{
|
||||||
|
if ( config.record_mode == NEW )
|
||||||
|
{
|
||||||
|
pattern *p = new pattern;
|
||||||
|
p->length( -1 );
|
||||||
|
|
||||||
|
pattern_c->grid( p );
|
||||||
|
}
|
||||||
|
|
||||||
|
((pattern*)pattern_c->grid())->record( 0 );
|
||||||
|
|
||||||
|
o->labelcolor( FL_RED );
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
pattern::recording()->record_stop();
|
||||||
|
|
||||||
|
o->labelcolor( FL_WHITE );
|
||||||
|
}}
|
||||||
|
xywh {60 34 43 40} type Toggle shortcut 0x80072 selection_color 47 labeltype ENGRAVED_LABEL when 1
|
||||||
|
}
|
||||||
|
Fl_Button home_button {
|
||||||
|
label {@|<}
|
||||||
|
callback {transport.locate( 0 );}
|
||||||
|
xywh {110 34 43 40} shortcut 0xff50 labeltype ENGRAVED_LABEL
|
||||||
|
}
|
||||||
|
}
|
||||||
|
Fl_Choice record_mode_menu {
|
||||||
|
label {&Record Mode}
|
||||||
|
callback {if ( ! transport.recording )
|
||||||
|
config.record_mode = (record_mode_e)o->value();
|
||||||
|
else
|
||||||
|
o->value( config.record_mode );} open
|
||||||
|
xywh {171 41 100 27} box DOWN_BOX down_box BORDER_BOX color 37 labelsize 9 align 1
|
||||||
|
} {
|
||||||
|
MenuItem {} {
|
||||||
|
label Merge
|
||||||
|
xywh {15 15 40 25}
|
||||||
|
}
|
||||||
|
MenuItem {} {
|
||||||
|
label Overwrite
|
||||||
|
xywh {25 25 40 25}
|
||||||
|
}
|
||||||
|
MenuItem {} {
|
||||||
|
label Layer
|
||||||
|
xywh {35 35 40 25}
|
||||||
|
}
|
||||||
|
MenuItem {} {
|
||||||
|
label New
|
||||||
|
xywh {45 45 40 25}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
Fl_Choice playback_mode_menu {
|
||||||
|
label {Playback &Mode} open
|
||||||
|
xywh {285 41 100 26} box DOWN_BOX down_box BORDER_BOX color 37 labelsize 9 align 1
|
||||||
|
} {
|
||||||
|
MenuItem {} {
|
||||||
|
label Pattern
|
||||||
|
callback {song.play_mode = PATTERN;}
|
||||||
|
xywh {5 5 40 25}
|
||||||
|
}
|
||||||
|
MenuItem {} {
|
||||||
|
label Sequence
|
||||||
|
callback {song.play_mode = SEQUENCE;}
|
||||||
|
xywh {15 15 40 25}
|
||||||
|
}
|
||||||
|
MenuItem {} {
|
||||||
|
label Trigger
|
||||||
|
callback {song.play_mode = TRIGGER;}
|
||||||
|
xywh {25 25 40 25}
|
||||||
|
}
|
||||||
|
MenuItem {} {
|
||||||
|
label Queue
|
||||||
|
callback {song.play_mode = QUEUE;}
|
||||||
|
xywh {0 0 40 24}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
Fl_Group {} {open
|
Fl_Group {} {open
|
||||||
xywh {0 776 865 31}
|
xywh {0 776 865 31}
|
||||||
} {
|
} {
|
||||||
|
|
Loading…
Reference in New Issue