#include "tracks.h"
#include "transportque.h"
#include "vtrack.h"
+#include "zoombar.h"
static double my_zoom_table[] =
if( current_operation == CWINDOW_NONE &&
mwindow->edl != 0 && canvas->get_canvas() &&
mwindow->edl->session->cwindow_click2play &&
- canvas->get_canvas()->get_cursor_over_window() ) {
+ canvas->get_canvas()->cursor_above() ) {
switch( get_buttonpress() ) {
case LEFT_BUTTON:
if( !cwindow->playback_engine->is_playing_back ) {
mwindow->theme->cedit_x, mwindow->theme->cedit_y,
mwindow->edl->session->editing_mode,
0, // use_editing_mode
- 1, // use_keyframe
+ 0, // use_keyframe
0, // use_splice
0, // use_overwrite
1, // use_copy
int CWindowCanvas::scope_on()
{
- return !gui->edit_panel->scope_dialog ? 0 :
- gui->edit_panel->scope_dialog->running();
+ EditPanelScopeDialog *scope_dialog = gui->edit_panel->scope_dialog;
+ if( !scope_dialog || !scope_dialog->scope_gui ) return 0;
+ if( scope_dialog->scope_gui->use_refresh ) return 0;
+ return scope_dialog->running();
}
-void CWindowCanvas::draw_scope(VFrame *output)
+void CWindowCanvas::draw_scope(VFrame *output, int refresh)
{
- if( gui->edit_panel->scope_dialog && output )
- gui->edit_panel->scope_dialog->process(output);
+ if( !output ) return;
+ EditPanelScopeDialog *scope_dialog = gui->edit_panel->scope_dialog;
+ if( !scope_dialog || !scope_dialog->scope_gui ) return;
+ if( scope_dialog->scope_gui->use_refresh && !refresh ) return;
+ scope_dialog->process(output);
}
void CWindowCanvas::draw_refresh(int flush)
z_keyframe->set_value(1);
gui->sync_parameters(CHANGE_PARAMS, 1, 1);
+ MWindowGUI *mgui = mwindow->gui;
+ mgui->lock_window("CWindowCanvas::reset_keyframe");
+ gui->mwindow->edl->local_session->reset_view_limits();
+ gui->mwindow->gui->zoombar->update_autozoom();
+ mgui->unlock_window();
}
}