case KEY_F8: cwindow_operation = CWINDOW_EYEDROP; break;
case KEY_F9: cwindow_operation = CWINDOW_TOOL_WINDOW; break;
case KEY_F10: cwindow_operation = CWINDOW_TITLESAFE; break;
+ case KEY_F11: canvas->reset_camera(); break;
+ case KEY_F12: canvas->reset_projector(); break;
}
if( cwindow_operation >= 0 ) {
if(mwindow->session->drag_assets->total ||
mwindow->session->drag_clips->total)
{
- mwindow->gui->lock_window("CWindowGUI::drag_stop 5");
+ mwindow->gui->lock_window("CWindowGUI::drag_stop 1");
mwindow->undo->update_undo_before(_("insert assets"), 0);
- mwindow->gui->unlock_window();
}
if(mwindow->session->drag_assets->total)
{
- mwindow->gui->lock_window("CWindowGUI::drag_stop 1");
mwindow->clear(0);
mwindow->load_assets(mwindow->session->drag_assets,
mwindow->edl->local_session->get_selectionstart(),
if(mwindow->session->drag_clips->total)
{
- mwindow->gui->lock_window("CWindowGUI::drag_stop 2");
mwindow->clear(0);
mwindow->paste_edls(mwindow->session->drag_clips,
LOADMODE_PASTE,
mwindow->gui->update(1, 1, 1, 1, 0, 1, 0);
mwindow->undo->update_undo_after(_("insert assets"), LOAD_ALL);
mwindow->gui->unlock_window();
- mwindow->sync_parameters(LOAD_ALL);
+ mwindow->sync_parameters(CHANGE_ALL);
}
}
void CWindowEditing::to_clip()
{
- mwindow->to_clip(mwindow->edl, _("composer window: "), 0);
+ mwindow->to_clip(mwindow->edl, _("composer window: "), 0);
}
void CWindowSlider::set_position()
{
double new_length = mwindow->edl->tracks->total_length();
-// if(mwindow->edl->local_session->preview_end <= 0 ||
-// mwindow->edl->local_session->preview_end > new_length)
-// mwindow->edl->local_session->preview_end = new_length;
-// if(mwindow->edl->local_session->preview_start >
-// mwindow->edl->local_session->preview_end)
-// mwindow->edl->local_session->preview_start = 0;
-
-
update(mwindow->theme->cslider_w,
mwindow->edl->local_session->get_selectionstart(1),
- 0,
- new_length);
-// mwindow->edl->local_session->preview_start,
-// mwindow->edl->local_session->preview_end);
+ 0, new_length);
}
(int)out_x1,
(int)out_y1,
(int)(out_x2 - out_x1),
- (int)(out_y2 - out_y1),
- (int)in_x1,
- (int)in_y1,
- (int)(in_x2 - in_x1),
- (int)(in_y2 - in_y1),
- 0);
+ (int)(out_y2 - out_y1));
+// if refresh_frame session geometry...
+// (int)in_x1,
+// (int)in_y1,
+// (int)(in_x2 - in_x1),
+// (int)(in_y2 - in_y1),
+// 0);
}
}
else
}
draw_overlays();
+// allow last opengl write to complete before redraw
+// tried sync_display, glFlush, glxMake*Current(0..)
+usleep(20000);
get_canvas()->flash(flush);
}
//printf("CWindowCanvas::draw_refresh 10\n");
return result;
}
+int CWindowCanvas::need_overlays()
+{
+ if( mwindow->edl->session->safe_regions ) return 1;
+ if( mwindow->edl->session->cwindow_scrollbars ) return 1;
+ if( gui->highlighted ) return 1;
+ switch( mwindow->edl->session->cwindow_operation ) {
+ case CWINDOW_EYEDROP:
+ if( ! gui->eyedrop_visible ) break;
+ case CWINDOW_CAMERA:
+ case CWINDOW_PROJECTOR:
+ case CWINDOW_CROP:
+ case CWINDOW_MASK:
+ case CWINDOW_RULER:
+ return 1;
+ }
+ return 0;
+}
+
void CWindowCanvas::draw_overlays()
{
if(mwindow->edl->session->safe_regions)
redraw = 1;
}
}
- else
+ else
// Translate all 4 points
if(gui->current_operation == CWINDOW_CROP && gui->crop_translate)
{