lock_window("MWindowGUI::create_objects");
const int debug = 0;
- resource_thread = new ResourceThread(mwindow, this);
+ resource_thread = new ResourceThread(mwindow);
resource_thread->create_objects();
}
#endif
mwindow->reset_android_remote();
+ if( !cwindow_remote_handler )
+ cwindow_remote_handler = (RemoteHandler*)
+ new CWindowKeyEvHandler(mwindow->gui->remote_control);
+ if( !record_remote_handler )
+ record_remote_handler = (RemoteHandler*)
+ new RecordKeyEvHandler(mwindow->gui->remote_control);
if(debug) printf("MWindowGUI::create_objects %d\n", __LINE__);
int x1 = get_w() - MainShBtns::calculate_w(-1, 0, -1) - xS(5);
switch( get_keypress() ) {
case 'A':
- if( !ctrl_down() || !shift_down() || alt_down() ) break;
- mwindow->edl->tracks->clear_selected_edits();
- draw_overlays(1);
+ if( !alt_down() ) {
+ if( !ctrl_down() || !shift_down() ) break;
+ mwindow->edl->tracks->clear_selected_edits();
+ draw_overlays(1);
+ result = 1;
+ break;
+ } // fall thru
+ case 'a':
+ if( !alt_down() ) break;
+ stop_transport("MWindowGUI::keypress_event 1");
+ mwindow->nearest_auto_keyframe(shift_down(),
+ !ctrl_down() ? PLAY_FORWARD : PLAY_REVERSE);
result = 1;
break;
+
case 'e':
mwindow->toggle_editing_mode();
result = 1;
case 'k': case 'K':
if( alt_down() ) break;
- stop_transport("MWindowGUI::keypress_event 1");
+ stop_transport("MWindowGUI::keypress_event 2");
mwindow->nearest_plugin_keyframe(shift_down(),
!ctrl_down() ? PLAY_FORWARD : PLAY_REVERSE);
result = 1;
if( (this_track = pane[i]->over_patchbay()) != 0 ) break;
}
- if( get_keypress() == TAB ) { // Switch the record button
+ if( get_keypress() == TAB ) { // Switch the armed button
if( this_track )
- this_track->record = !this_track->record ? 1 : 0;
+ this_track->armed = !this_track->armed ? 1 : 0;
}
else {
int total_selected = mwindow->edl->tracks->total_of(Tracks::RECORD);
// all selected if nothing previously selected or
// if this patch was previously the only one selected and armed
int selected = !total_selected || (total_selected == 1 &&
- this_track && this_track->record ) ? 1 : 0;
+ this_track && this_track->armed ) ? 1 : 0;
mwindow->edl->tracks->select_all(Tracks::RECORD, selected);
- if( !selected && this_track ) this_track->record = 1;
+ if( !selected && this_track ) this_track->armed = 1;
}
update(0, NORMAL_DRAW, 0, 0, 1, 0, 1);
void MWindowGUI::stop_pane_drag()
{
+ if( !dragging_pane ) return;
dragging_pane = 0;
resource_thread->stop_draw(0);