8 #include "mainclock.inc"
9 #include "meterpanel.h"
10 #include "mwindow.inc"
11 #include "playtransport.h"
15 #include "vtimebar.inc"
16 #include "vwindow.inc"
17 #include "zoompanel.h"
22 class VWindowTransport
;
27 class VWindowOutPoint
;
29 class VWindowGUI
: public BC_Window
32 VWindowGUI(MWindow
*mwindow
, VWindow
*vwindow
);
36 int resize_event(int w
, int h
);
37 int translation_event();
40 int button_press_event();
41 int cursor_leave_event();
42 int cursor_enter_event();
43 int button_release_event();
44 int cursor_motion_event();
45 // Update source pulldown with new assets
46 void update_sources(char *title
);
47 // Update GUI to reflect new source
48 void change_source(EDL
*edl
, char *title
);
51 // void update_labels();
52 // void update_points();
57 // Meters are numbered from right to left
58 VWindowCanvas
*canvas
;
59 VWindowSlider
*slider
;
63 VWindowZoom
*zoom_panel
;
64 VWindowTransport
*transport
;
65 VWindowEditing
*edit_panel
;
66 // VWindowSource *source;
67 VWindowMeters
*meters
;
68 ArrayList
<BC_ListBoxItem
*> sources
;
69 ArrayList
<LabelGUI
*> labels
;
70 VWindowInPoint
*in_point
;
71 VWindowOutPoint
*out_point
;
72 char loaded_title
[BCTEXTLEN
];
74 void get_scrollbars(int &canvas_x
, int &canvas_y
, int &canvas_w
, int &canvas_h
);
78 class VWindowMeters
: public MeterPanel
81 VWindowMeters(MWindow
*mwindow
, VWindowGUI
*gui
, int x
, int y
, int h
);
84 int change_status_event();
91 class VWindowCanvas
: public Canvas
94 VWindowCanvas(MWindow
*mwindow
, VWindowGUI
*gui
);
96 void zoom_resize_window(float percentage
);
100 int get_fullscreen();
101 void set_fullscreen(int value
);
107 class VWindowEditing
: public EditPanel
110 VWindowEditing(MWindow
*mwindow
, VWindow
*vwindow
);
113 void copy_selection();
114 void splice_selection();
115 void overwrite_selection();
118 void clear_inpoint();
119 void clear_outpoint();
129 class VWindowZoom
: public ZoomPanel
132 VWindowZoom(MWindow
*mwindow
, VWindowGUI
*gui
, int x
, int y
);
140 class VWindowSlider
: public BC_PercentageSlider
143 VWindowSlider(MWindow
*mwindow
,
159 class VWindowSource
: public BC_PopupTextBox
162 VWindowSource(MWindow
*mwindow
, VWindowGUI
*vwindow
, int x
, int y
);
169 class VWindowTransport
: public PlayTransport
172 VWindowTransport(MWindow
*mwindow
,
183 class VWindowInPoint
: public InPointGUI
186 VWindowInPoint(MWindow
*mwindow
,
196 class VWindowOutPoint
: public OutPointGUI
199 VWindowOutPoint(MWindow
*mwindow
,