void VWindowGUI::create_objects()
{
+ lock_window("VWindowGUI::create_objects");
in_point = 0;
out_point = 0;
- lock_window("VWindowGUI::create_objects");
set_icon(mwindow->theme->get_image("vwindow_icon"));
//printf("VWindowGUI::create_objects 1\n");
int VWindowGUI::drag_stop()
{
- if(get_hidden()) return 0;
+ if( get_hidden() ) return 0;
- if(highlighted &&
- mwindow->session->current_operation == DRAG_ASSET)
- {
+ if( highlighted &&
+ mwindow->session->current_operation == DRAG_ASSET ) {
highlighted = 0;
canvas->draw_refresh();
unlock_window();
- Indexable *indexable = mwindow->session->drag_assets->size() ?
- mwindow->session->drag_assets->get(0) :
- 0;
- EDL *edl = mwindow->session->drag_clips->size() ?
- mwindow->session->drag_clips->get(0) :
- 0;
- if(indexable)
+ Indexable *indexable =
+ mwindow->session->drag_assets->size() > 0 ?
+ (Indexable *)mwindow->session->drag_assets->get(0) :
+ mwindow->session->drag_clips->size() > 0 ?
+ (Indexable *)mwindow->session->drag_clips->get(0) : 0;
+ if( indexable )
vwindow->change_source(indexable);
- else
- if(edl)
- vwindow->change_source(edl);
+
lock_window("VWindowGUI::drag_stop");
return 1;
}
}
}
-void VWindowEditing::prev_label()
+void VWindowEditing::prev_label(int cut)
{
if(vwindow->get_edl())
{
}
}
-void VWindowEditing::next_label()
+void VWindowEditing::next_label(int cut)
{
if(vwindow->get_edl())
{
float in_x1, in_y1, in_x2, in_y2;
float out_x1, out_y1, out_x2, out_y2;
get_transfers(edl,
- in_x1,
- in_y1,
- in_x2,
- in_y2,
- out_x1,
- out_y1,
- out_x2,
- out_y2);
+ in_x1, in_y1, in_x2, in_y2,
+ out_x1, out_y1, out_x2, out_y2);
+// input scaled from session to refresh frame coordinates
+ int ow = get_output_w(edl);
+ int oh = get_output_h(edl);
+ int rw = refresh_frame->get_w();
+ int rh = refresh_frame->get_h();
+ float xs = (float)rw / ow;
+ float ys = (float)rh / oh;
+ in_x1 *= xs; in_x2 *= xs;
+ in_y1 *= ys; in_y2 *= ys;
get_canvas()->draw_vframe(refresh_frame,
(int)out_x1,
(int)out_y1,
}
}
+int VWindowCanvas::need_overlays()
+{
+ if( gui->highlighted ) return 1;
+ return 0;
+}
+
void VWindowCanvas::draw_overlays()
{
if( gui->highlighted )