X-Git-Url: https://git.cinelerra-gg.org/git/?p=goodguy%2Fcinelerra.git;a=blobdiff_plain;f=cinelerra-5.1%2Fcinelerra%2Fplaytransport.C;h=d9d9a48af851b5ed30df9bb1cdd323dac2e60a7a;hp=94b70dcdc139f9dc79b8aa1000481e43bc5213e6;hb=1529091cdf16df199a901aabe6e8fa1813a933af;hpb=3bf30d220f7855b995b887dc10812ae3780e6805 diff --git a/cinelerra-5.1/cinelerra/playtransport.C b/cinelerra-5.1/cinelerra/playtransport.C index 94b70dcd..d9d9a48a 100644 --- a/cinelerra-5.1/cinelerra/playtransport.C +++ b/cinelerra-5.1/cinelerra/playtransport.C @@ -132,7 +132,7 @@ int PlayTransport::get_w() int PlayTransport::is_stopped() { - return engine->command->command == STOP ? 1 : 0; + return engine->is_playing_back ? 0 : 1; } int PlayTransport::flip_vertical(int vertical, int &x, int &y) @@ -210,7 +210,7 @@ int PlayTransport::do_keypress(int key) int loop_play = shft_key & ctrl_key; float speed = 0; int command = -1; - int curr_command = engine->command->command; + int curr_command = engine->is_playing_back ? engine->command->command : STOP; subwindow->unlock_window(); result = 0; @@ -315,7 +315,7 @@ void PlayTransport::handle_transport(int command, int wait_tracking, if( !edl ) return; using_inout = use_inout; - if( !is_vwindow() ) + if( use_mixers() ) mwindow->handle_mixers(edl, command, wait_tracking, use_inout, toggle_audio, 0, speed); engine->next_command->toggle_audio = toggle_audio; @@ -502,11 +502,7 @@ void PlayTransport::change_position(double position) if( !get_edl() ) return; int command = engine->command->command; // stop transport - if( command != STOP && command != COMMAND_NONE && - command != SINGLE_FRAME_FWD && command != SINGLE_FRAME_REWIND ) { - engine->transport_stop(); - engine->interrupt_playback(0); - } + engine->stop_playback(0); mwindow->gui->lock_window("PlayTransport::change_position"); mwindow->goto_position(position); mwindow->gui->unlock_window();