void calculate_sizes(float aspect_ratio,
int output_w, int output_h, float zoom,
int &w, int &h);
void calculate_sizes(float aspect_ratio,
int output_w, int output_h, float zoom,
int &w, int &h);
-// Lock access to the canvas pointer.
-// Must be called before get_canvas or locking the canvas.
- void lock_canvas(const char *location);
+// Lock canvas pointer and window
+ BC_WindowBase *lock_canvas(const char *loc);
virtual void draw_overlays() {}
virtual void toggle_controls() {}
virtual int get_cwindow_controls() { return 0; }
virtual void draw_overlays() {}
virtual void toggle_controls() {}
virtual int get_cwindow_controls() { return 0; }
int cursor_leave_event_base(BC_WindowBase *caller);
int cursor_enter_event_base(BC_WindowBase *caller);
int cursor_leave_event_base(BC_WindowBase *caller);
int cursor_enter_event_base(BC_WindowBase *caller);
void update_refresh(VideoDevice *device, VFrame *output_frame);
// Redraws the refresh_frame
virtual void draw_refresh(int flush = 1) {};
void update_refresh(VideoDevice *device, VFrame *output_frame);
// Redraws the refresh_frame
virtual void draw_refresh(int flush = 1) {};
// Get top left offset of canvas relative to output.
// Normally negative. Can be positive if output is smaller than canvas.
// Get top left offset of canvas relative to output.
// Normally negative. Can be positive if output is smaller than canvas.
// For cases where video is not enabled on the canvas but processing is
// occurring for a single frame, this causes the status to update.
int is_processing;
// For cases where video is not enabled on the canvas but processing is
// occurring for a single frame, this causes the status to update.
int is_processing;
private:
void get_scrollbars(EDL *edl,
int &canvas_x, int &canvas_y, int &canvas_w, int &canvas_h);
private:
void get_scrollbars(EDL *edl,
int &canvas_x, int &canvas_y, int &canvas_w, int &canvas_h);