#include <canvas.h>
Inherited by CWindowCanvas, RecordMonitorCanvas, and VWindowCanvas.

Public Member Functions | |
| Canvas (MWindow *mwindow, BC_WindowBase *subwindow, int x, int y, int w, int h, int output_w, int output_h, int use_scrollbars, int use_cwindow=0, int use_rwindow=0, int use_vwindow=0) | |
| virtual | ~Canvas () |
| void | reset () |
| void | calculate_sizes (float aspect_ratio, int output_w, int output_h, float zoom, int &w, int &h) |
| void | lock_canvas (char *location) |
| void | unlock_canvas () |
| int | is_locked () |
| int | create_objects (EDL *edl) |
| void | set_cursor (int cursor) |
| void | start_video () |
| void | stop_video () |
| void | start_single () |
| void | stop_single () |
| void | start_fullscreen () |
| void | stop_fullscreen () |
| void | create_canvas () |
| virtual void | status_event () |
| virtual void | reset_camera () |
| virtual void | reset_projector () |
| virtual void | zoom_resize_window (float percentage) |
| virtual void | zoom_auto () |
| virtual int | cursor_leave_event () |
| virtual int | cursor_enter_event () |
| virtual int | button_release_event () |
| virtual int | button_press_event () |
| virtual int | cursor_motion_event () |
| virtual void | draw_overlays () |
| virtual void | toggle_controls () |
| virtual int | get_cwindow_controls () |
| virtual int | get_fullscreen () |
| virtual void | set_fullscreen (int value) |
| int | cursor_leave_event_base (BC_WindowBase *caller) |
| int | cursor_enter_event_base (BC_WindowBase *caller) |
| int | button_press_event_base (BC_WindowBase *caller) |
| int | keypress_event (BC_WindowBase *caller) |
| void | get_transfers (EDL *edl, float &output_x1, float &output_y1, float &output_x2, float &output_y2, float &canvas_x1, float &canvas_y1, float &canvas_x2, float &canvas_y2, int canvas_w=-1, int canvas_h=-1) |
| void | reposition_window (EDL *edl, int x, int y, int w, int h) |
| virtual void | reset_translation () |
| virtual void | close_source () |
| virtual void | update_zoom (int x, int y, float zoom) |
| void | check_boundaries (EDL *edl, int &x, int &y, float &zoom) |
| void | update_scrollbars () |
| virtual int | get_xscroll () |
| virtual int | get_yscroll () |
| virtual float | get_zoom () |
| virtual void | draw_refresh () |
| float | get_x_offset (EDL *edl, int single_channel, float zoom_x, float conformed_w, float conformed_h) |
| float | get_y_offset (EDL *edl, int single_channel, float zoom_y, float conformed_w, float conformed_h) |
| void | get_zooms (EDL *edl, int single_channel, float &zoom_x, float &zoom_y, float &conformed_w, float &conformed_h) |
| void | output_to_canvas (EDL *edl, int single_channel, float &x, float &y) |
| void | canvas_to_output (EDL *edl, int single_channel, float &x, float &y) |
| virtual int | get_output_w (EDL *edl) |
| virtual int | get_output_h (EDL *edl) |
| int | scrollbars_exist () |
| int | get_cursor_x () |
| int | get_cursor_y () |
| int | get_buttonpress () |
| BC_WindowBase * | get_canvas () |
Data Fields | |
| BC_WindowBase * | subwindow |
| CanvasOutput * | canvas_subwindow |
| CanvasFullScreen * | canvas_fullscreen |
| CanvasXScroll * | xscroll |
| CanvasYScroll * | yscroll |
| CanvasPopup * | canvas_menu |
| CanvasFullScreenPopup * | fullscreen_menu |
| int | x |
| int | y |
| int | w |
| int | h |
| int | use_scrollbars |
| int | use_cwindow |
| int | use_rwindow |
| int | use_vwindow |
| int | output_w |
| int | output_h |
| VFrame * | refresh_frame |
| int | w_needed |
| int | h_needed |
| int | w_visible |
| int | h_visible |
| int | is_processing |
| int | cursor_inside |
| int | view_x |
| int | view_y |
| int | view_w |
| int | view_h |
| int | root_w |
| int | root_h |
| MWindow * | mwindow |
Private Member Functions | |
| void | get_scrollbars (EDL *edl, int &canvas_x, int &canvas_y, int &canvas_w, int &canvas_h) |
Private Attributes | |
| Mutex * | canvas_lock |
Definition at line 19 of file canvas.h.
| Canvas::Canvas | ( | MWindow * | mwindow, | |
| BC_WindowBase * | subwindow, | |||
| int | x, | |||
| int | y, | |||
| int | w, | |||
| int | h, | |||
| int | output_w, | |||
| int | output_h, | |||
| int | use_scrollbars, | |||
| int | use_cwindow = 0, |
|||
| int | use_rwindow = 0, |
|||
| int | use_vwindow = 0 | |||
| ) |
Definition at line 15 of file canvas.C.
References canvas_lock, BC_WindowBase::get_root_h(), BC_WindowBase::get_root_w(), reset(), root_h, and root_w.

| Canvas::~Canvas | ( | ) | [virtual] |
Definition at line 49 of file canvas.C.
References canvas_fullscreen, canvas_lock, canvas_menu, canvas_subwindow, refresh_frame, xscroll, and yscroll.
| void Canvas::reset | ( | ) |
Definition at line 60 of file canvas.C.
References canvas_fullscreen, canvas_subwindow, cursor_inside, is_processing, output_h, output_w, refresh_frame, use_scrollbars, xscroll, and yscroll.
Referenced by Canvas().
| void Canvas::calculate_sizes | ( | float | aspect_ratio, | |
| int | output_w, | |||
| int | output_h, | |||
| float | zoom, | |||
| int & | w, | |||
| int & | h | |||
| ) |
Definition at line 100 of file canvas.C.
Referenced by VWindowCanvas::zoom_resize_window(), RecordMonitorCanvas::zoom_resize_window(), and CWindowCanvas::zoom_resize_window().
| void Canvas::lock_canvas | ( | char * | location | ) |
Definition at line 74 of file canvas.C.
References canvas_lock, and Mutex::lock().
Referenced by Playback3D::clear_input_sync(), Playback3D::clear_output_sync(), VDeviceX11::close_all(), Playback3D::copy_from_sync(), create_canvas(), Playback3D::do_camera_sync(), Playback3D::do_fade_sync(), Playback3D::do_mask_sync(), VDeviceX11::get_best_colormodel(), VDeviceX11::new_output_buffer(), VDeviceX11::open_output(), VDeviceX11::output_visible(), VDeviceX11::overlay(), Playback3D::overlay_sync(), Playback3D::run_plugin_sync(), VDeviceX11::write_buffer(), and Playback3D::write_buffer_sync().

| void Canvas::unlock_canvas | ( | ) |
Definition at line 79 of file canvas.C.
References canvas_lock, and Mutex::unlock().
Referenced by Playback3D::clear_input_sync(), Playback3D::clear_output_sync(), VDeviceX11::close_all(), Playback3D::copy_from_sync(), create_canvas(), Playback3D::do_camera_sync(), Playback3D::do_fade_sync(), Playback3D::do_mask_sync(), VDeviceX11::get_best_colormodel(), VDeviceX11::new_output_buffer(), VDeviceX11::open_output(), VDeviceX11::output_visible(), VDeviceX11::overlay(), Playback3D::overlay_sync(), Playback3D::run_plugin_sync(), VDeviceX11::write_buffer(), and Playback3D::write_buffer_sync().

| int Canvas::is_locked | ( | ) |
Definition at line 84 of file canvas.C.
References canvas_lock, and Mutex::is_locked().

| int Canvas::create_objects | ( | EDL * | edl | ) |
Definition at line 639 of file canvas.C.
References BC_WindowBase::add_subwindow(), canvas_menu, create_canvas(), CanvasFullScreenPopup::create_objects(), CanvasPopup::create_objects(), fullscreen_menu, get_scrollbars(), h, subwindow, view_h, view_w, view_x, view_y, w, x, and y.
Referenced by VWindowGUI::create_objects(), RecordMonitorGUI::create_objects(), and CWindowGUI::create_objects().

| void Canvas::set_cursor | ( | int | cursor | ) |
Definition at line 618 of file canvas.C.
References get_canvas(), and BC_WindowBase::set_cursor().
Referenced by RecordMonitorCanvas::cursor_enter_event(), CWindowCanvas::cursor_enter_event(), CWindowCanvas::cursor_leave_event(), and CWindowCanvas::test_crop().

| void Canvas::start_video | ( | ) |
Definition at line 686 of file canvas.C.
References get_canvas(), BC_WindowBase::start_video(), and status_event().
Referenced by VDeviceX11::open_output(), and VDeviceX11::start_playback().

| void Canvas::stop_video | ( | ) |
Definition at line 695 of file canvas.C.
References get_canvas(), status_event(), and BC_WindowBase::stop_video().
Referenced by VDeviceX11::close_all(), and VDeviceX11::stop_playback().

| void Canvas::start_single | ( | ) |
Definition at line 674 of file canvas.C.
References is_processing, and status_event().
Referenced by VDeviceX11::open_output().

| void Canvas::stop_single | ( | ) |
Definition at line 680 of file canvas.C.
References is_processing, and status_event().
Referenced by VDeviceX11::close_all().

| void Canvas::start_fullscreen | ( | ) |
Definition at line 705 of file canvas.C.
References create_canvas(), and set_fullscreen().
Referenced by CanvasFullScreenItem::handle_event(), VWindowGUI::keypress_event(), CWindowGUI::keypress_event(), and keypress_event().

| void Canvas::stop_fullscreen | ( | ) |
Definition at line 711 of file canvas.C.
References create_canvas(), and set_fullscreen().
Referenced by CanvasSubWindowItem::handle_event(), VWindowGUI::keypress_event(), CWindowGUI::keypress_event(), and keypress_event().

| void Canvas::create_canvas | ( | ) |
Definition at line 717 of file canvas.C.
References BC_WindowBase::add_subwindow(), canvas_fullscreen, canvas_subwindow, draw_refresh(), get_canvas(), get_fullscreen(), BC_WindowBase::get_video_on(), BC_WindowBase::hide_window(), lock_canvas(), root_h, root_w, SET_TRACE, BC_WindowBase::show_window(), BC_WindowBase::start_video(), BC_WindowBase::stop_video(), subwindow, unlock_canvas(), view_h, view_w, view_x, and view_y.
Referenced by create_objects(), start_fullscreen(), and stop_fullscreen().

| virtual void Canvas::status_event | ( | ) | [inline, virtual] |
Reimplemented in CWindowCanvas.
Definition at line 69 of file canvas.h.
Referenced by start_single(), start_video(), stop_single(), and stop_video().
| virtual void Canvas::reset_camera | ( | ) | [inline, virtual] |
Reimplemented in CWindowCanvas.
Definition at line 72 of file canvas.h.
Referenced by CanvasPopupResetCamera::handle_event().
| virtual void Canvas::reset_projector | ( | ) | [inline, virtual] |
Reimplemented in CWindowCanvas.
Definition at line 73 of file canvas.h.
Referenced by CanvasPopupResetProjector::handle_event().
| virtual void Canvas::zoom_resize_window | ( | float | percentage | ) | [inline, virtual] |
Reimplemented in CWindowCanvas, RecordMonitorCanvas, and VWindowCanvas.
Definition at line 74 of file canvas.h.
Referenced by CanvasPopupSize::handle_event().
| virtual void Canvas::zoom_auto | ( | ) | [inline, virtual] |
Reimplemented in CWindowCanvas.
Definition at line 75 of file canvas.h.
Referenced by CanvasPopupAuto::handle_event().
| virtual int Canvas::cursor_leave_event | ( | ) | [inline, virtual] |
Reimplemented in CWindowCanvas.
Definition at line 76 of file canvas.h.
Referenced by cursor_leave_event_base().
| virtual int Canvas::cursor_enter_event | ( | ) | [inline, virtual] |
Reimplemented in CWindowCanvas, and RecordMonitorCanvas.
Definition at line 77 of file canvas.h.
Referenced by cursor_enter_event_base().
| virtual int Canvas::button_release_event | ( | ) | [inline, virtual] |
Reimplemented in CWindowCanvas, and RecordMonitorCanvas.
Definition at line 78 of file canvas.h.
Referenced by VWindowGUI::button_release_event(), RecordMonitorGUI::button_release_event(), and CanvasOutput::button_release_event().
| int Canvas::button_press_event | ( | ) | [virtual] |
Reimplemented in CWindowCanvas, and RecordMonitorCanvas.
Definition at line 658 of file canvas.C.
References BC_PopupMenu::activate_menu(), canvas_menu, fullscreen_menu, get_buttonpress(), get_canvas(), and get_fullscreen().
Referenced by RecordMonitorCanvas::button_press_event(), CWindowCanvas::button_press_event(), and button_press_event_base().

| virtual int Canvas::cursor_motion_event | ( | ) | [inline, virtual] |
Reimplemented in CWindowCanvas, and RecordMonitorCanvas.
Definition at line 80 of file canvas.h.
Referenced by VWindowGUI::cursor_motion_event(), RecordMonitorGUI::cursor_motion_event(), and CanvasOutput::cursor_motion_event().
| virtual void Canvas::draw_overlays | ( | ) | [inline, virtual] |
| virtual void Canvas::toggle_controls | ( | ) | [inline, virtual] |
Reimplemented in CWindowCanvas.
Definition at line 82 of file canvas.h.
Referenced by CanvasToggleControls::handle_event().
| virtual int Canvas::get_cwindow_controls | ( | ) | [inline, virtual] |
Reimplemented in CWindowCanvas.
Definition at line 83 of file canvas.h.
Referenced by CanvasToggleControls::handle_event().
| virtual int Canvas::get_fullscreen | ( | ) | [inline, virtual] |
Reimplemented in CWindowCanvas, RecordMonitorCanvas, and VWindowCanvas.
Definition at line 84 of file canvas.h.
Referenced by button_press_event(), create_canvas(), get_canvas(), and keypress_event().
| virtual void Canvas::set_fullscreen | ( | int | value | ) | [inline, virtual] |
Reimplemented in CWindowCanvas, RecordMonitorCanvas, and VWindowCanvas.
Definition at line 85 of file canvas.h.
Referenced by start_fullscreen(), and stop_fullscreen().
| int Canvas::cursor_leave_event_base | ( | BC_WindowBase * | caller | ) |
Definition at line 786 of file canvas.C.
References cursor_inside, and cursor_leave_event().
Referenced by VWindowGUI::cursor_leave_event(), RecordMonitorGUI::cursor_leave_event(), CWindowGUI::cursor_leave_event(), and CanvasOutput::cursor_leave_event().

| int Canvas::cursor_enter_event_base | ( | BC_WindowBase * | caller | ) |
Definition at line 794 of file canvas.C.
References cursor_enter_event(), cursor_inside, BC_WindowBase::cursor_inside(), and BC_WindowBase::is_event_win().
Referenced by VWindowGUI::cursor_enter_event(), RecordMonitorGUI::cursor_enter_event(), CWindowGUI::cursor_enter_event(), and CanvasOutput::cursor_enter_event().

| int Canvas::button_press_event_base | ( | BC_WindowBase * | caller | ) |
Definition at line 805 of file canvas.C.
References button_press_event(), BC_WindowBase::cursor_inside(), and BC_WindowBase::is_event_win().
Referenced by VWindowGUI::button_press_event(), RecordMonitorGUI::button_press_event(), CWindowGUI::button_press_event(), and CanvasOutput::button_press_event().

| int Canvas::keypress_event | ( | BC_WindowBase * | caller | ) |
Definition at line 814 of file canvas.C.
References ESC, get_canvas(), get_fullscreen(), BC_WindowBase::get_keypress(), BC_WindowBase::lock_window(), start_fullscreen(), stop_fullscreen(), and BC_WindowBase::unlock_window().
Referenced by RecordMonitorGUI::keypress_event(), and CanvasOutput::keypress_event().

| void Canvas::get_transfers | ( | EDL * | edl, |
| float & | output_x1, | ||
| float & | output_y1, | ||
| float & | output_x2, | ||
| float & | output_y2, | ||
| float & | canvas_x1, | ||
| float & | canvas_y1, | ||
| float & | canvas_x2, | ||
| f |