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 // Update source pulldown with new assets
41 void update_sources(char *title
);
42 // Update GUI to reflect new source
43 void change_source(EDL
*edl
, char *title
);
46 // void update_labels();
47 // void update_points();
52 // Meters are numbered from right to left
53 VWindowCanvas
*canvas
;
54 VWindowSlider
*slider
;
58 VWindowZoom
*zoom_panel
;
59 VWindowTransport
*transport
;
60 VWindowEditing
*edit_panel
;
61 // VWindowSource *source;
62 VWindowMeters
*meters
;
63 ArrayList
<BC_ListBoxItem
*> sources
;
64 ArrayList
<LabelGUI
*> labels
;
65 VWindowInPoint
*in_point
;
66 VWindowOutPoint
*out_point
;
69 void get_scrollbars(int &canvas_x
, int &canvas_y
, int &canvas_w
, int &canvas_h
);
73 class VWindowMeters
: public MeterPanel
76 VWindowMeters(MWindow
*mwindow
, VWindowGUI
*gui
, int x
, int y
, int h
);
79 int change_status_event();
86 class VWindowCanvas
: public Canvas
89 VWindowCanvas(MWindow
*mwindow
, VWindowGUI
*gui
);
91 void zoom_resize_window(float percentage
);
100 class VWindowEditing
: public EditPanel
103 VWindowEditing(MWindow
*mwindow
, VWindow
*vwindow
);
106 void copy_selection();
107 void splice_selection();
108 void overwrite_selection();
111 void clear_inpoint();
112 void clear_outpoint();
122 class VWindowZoom
: public ZoomPanel
125 VWindowZoom(MWindow
*mwindow
, VWindowGUI
*gui
, int x
, int y
);
133 class VWindowSlider
: public BC_PercentageSlider
136 VWindowSlider(MWindow
*mwindow
,
152 class VWindowSource
: public BC_PopupTextBox
155 VWindowSource(MWindow
*mwindow
, VWindowGUI
*vwindow
, int x
, int y
);
162 class VWindowTransport
: public PlayTransport
165 VWindowTransport(MWindow
*mwindow
,
176 class VWindowInPoint
: public InPointGUI
179 VWindowInPoint(MWindow
*mwindow
,
189 class VWindowOutPoint
: public OutPointGUI
192 VWindowOutPoint(MWindow
*mwindow
,