canvas_auxwindow = aux;
}
-void Canvas::use_cwindow()
-{
- canvas_menu->use_cwindow();
- fullscreen_menu->use_cwindow();
-}
-
-void Canvas::use_rwindow()
-{
- canvas_menu->use_rwindow();
-}
-
-void Canvas::use_vwindow()
-{
- canvas_menu->use_vwindow();
-}
-
int Canvas::get_fullscreen()
{
return is_fullscreen;
return 1;
}
+// process_scope uses the refresh frame for opengl
void Canvas::update_refresh(VideoDevice *device, VFrame *output_frame)
{
int best_color_model = output_frame->get_color_model();
}
else
refresh_frame->transfer_from(output_frame, -1);
+ draw_scope(refresh_frame, 1);
+}
+
+void Canvas::process_scope(VideoDevice *video, VFrame *frame)
+{
+ if( !scope_on() ) return;
+ int use_opengl =
+ video->out_config->driver == PLAYBACK_X11_GL &&
+ frame->get_opengl_state() != VFrame::RAM;
+ if( use_opengl ) {
+ update_refresh(video, frame);
+ frame = refresh_frame;
+ }
+ if( frame )
+ draw_scope(frame, 0);
}
void Canvas::clear(int flash)
add_item(new CanvasSubWindowItem(canvas));
}
-void CanvasFullScreenPopup::use_cwindow()
-{
- add_item(new CanvasPopupAuto(canvas));
-}
-
CanvasSubWindowItem::CanvasSubWindowItem(Canvas *canvas)
: BC_MenuItem(_("Windowed"), "f", 'f')
{
}
CanvasZoomSize::CanvasZoomSize(Canvas *canvas)
- : BC_MenuItem(_("Zoom..."))
+ : BC_MenuItem(_("Resize Window..."))
{
this->canvas = canvas;
}
submenu->add_submenuitem(new CanvasPopupSize(canvas, _("Zoom 400%"), 4.0));
}
-void CanvasPopup::use_cwindow()
-{
- add_item(new CanvasPopupAuto(canvas));
- add_item(new CanvasPopupResetCamera(canvas));
- add_item(new CanvasPopupResetProjector(canvas));
- add_item(new CanvasPopupCameraKeyframe(canvas));
- add_item(new CanvasPopupProjectorKeyframe(canvas));
- add_item(toggle_controls = new CanvasToggleControls(canvas));
-}
-
-void CanvasPopup::use_rwindow()
-{
- add_item(new CanvasPopupResetTranslation(canvas));
-}
-
-void CanvasPopup::use_vwindow()
-{
- add_item(new CanvasPopupRemoveSource(canvas));
-}
-
CanvasPopupAuto::CanvasPopupAuto(Canvas *canvas)
: BC_MenuItem(_("Zoom Auto"))
}
-
CanvasPopupResetTranslation::CanvasPopupResetTranslation(Canvas *canvas)
: BC_MenuItem(_("Reset translation"))
{
}
-
-CanvasToggleControls::CanvasToggleControls(Canvas *canvas)
- : BC_MenuItem(calculate_text(canvas->get_cwindow_controls()))
-{
- this->canvas = canvas;
-}
-int CanvasToggleControls::handle_event()
-{
- canvas->toggle_controls();
- set_text(calculate_text(canvas->get_cwindow_controls()));
- return 1;
-}
-
-char* CanvasToggleControls::calculate_text(int cwindow_controls)
-{
- return !cwindow_controls ? _("Show controls") : _("Hide controls");
-}
-
-
CanvasFullScreenItem::CanvasFullScreenItem(Canvas *canvas)
: BC_MenuItem(_("Fullscreen"), "f", 'f')
{