10 #include "colorpicker.h"
15 class TitleThread
: public Thread
18 TitleThread(TitleMain
*client
);
23 // prevent loading data until the GUI is started
24 Mutex gui_started
, completion
;
31 class TitleFontTumble
;
36 class TitleColorButton
;
37 class TitleColorStrokeButton
;
40 class TitleDropShadow
;
50 class TitleRight
;class TitleTop
;
53 class TitleColorThread
;
54 class TitleColorStrokeThread
;
58 class TitleWindow
: public BC_Window
61 TitleWindow(TitleMain
*client
, int x
, int y
);
66 int resize_event(int w
, int h
);
68 void update_justification();
77 TitleFontTumble
*font_tumbler
;
82 BC_Title
*dropshadow_title
;
83 TitleDropShadow
*dropshadow
;
84 BC_Title
*style_title
;
90 TitleColorStrokeButton
*color_stroke_button
;
91 TitleColorStrokeThread
*color_stroke_thread
;
92 BC_Title
*strokewidth_title
;
93 TitleStrokeW
*stroke_width
;
94 int color_stroke_x
, color_stroke_y
;
99 BC_Title
*encoding_title
;
101 TitleEncoding
*encoding
;
102 TitleColorButton
*color_button
;
103 TitleColorThread
*color_thread
;
104 BC_Title
*motion_title
;
107 BC_Title
*fadein_title
;
109 BC_Title
*fadeout_title
;
111 BC_Title
*text_title
;
113 BC_Title
*justify_title
;
120 BC_Title
*speed_title
;
122 TitleTimecode
*timecode
;
125 ArrayList
<BC_ListBoxItem
*> sizes
;
126 ArrayList
<BC_ListBoxItem
*> encodings
;
127 ArrayList
<BC_ListBoxItem
*> paths
;
128 ArrayList
<BC_ListBoxItem
*> fonts
;
132 class TitleFontTumble
: public BC_Tumbler
135 TitleFontTumble(TitleMain
*client
, TitleWindow
*window
, int x
, int y
);
137 int handle_up_event();
138 int handle_down_event();
144 class TitleItalic
: public BC_CheckBox
147 TitleItalic(TitleMain
*client
, TitleWindow
*window
, int x
, int y
);
152 class TitleBold
: public BC_CheckBox
155 TitleBold(TitleMain
*client
, TitleWindow
*window
, int x
, int y
);
161 class TitleStroke
: public BC_CheckBox
164 TitleStroke(TitleMain
*client
, TitleWindow
*window
, int x
, int y
);
171 class TitleSize
: public BC_PopupTextBox
174 TitleSize(TitleMain
*client
, TitleWindow
*window
, int x
, int y
, char *text
);
177 void update(int size
);
181 class TitleEncoding
: public BC_PopupTextBox
184 TitleEncoding(TitleMain
*client
, TitleWindow
*window
, int x
, int y
);
190 class TitleColorButton
: public BC_GenericButton
193 TitleColorButton(TitleMain
*client
, TitleWindow
*window
, int x
, int y
);
198 class TitleColorStrokeButton
: public BC_GenericButton
201 TitleColorStrokeButton(TitleMain
*client
, TitleWindow
*window
, int x
, int y
);
206 class TitleMotion
: public BC_PopupTextBox
209 TitleMotion(TitleMain
*client
, TitleWindow
*window
, int x
, int y
);
214 class TitleLoop
: public BC_CheckBox
217 TitleLoop(TitleMain
*client
, int x
, int y
);
222 class TitleTimecode
: public BC_CheckBox
225 TitleTimecode(TitleMain
*client
, int x
, int y
);
230 class TitleFade
: public BC_TextBox
233 TitleFade(TitleMain
*client
, TitleWindow
*window
, double *value
, int x
, int y
);
239 class TitleFont
: public BC_PopupTextBox
242 TitleFont(TitleMain
*client
, TitleWindow
*window
, int x
, int y
);
247 class TitleText
: public BC_ScrollTextBox
250 TitleText(TitleMain
*client
,
260 class TitleX
: public BC_TumbleTextBox
263 TitleX(TitleMain
*client
, TitleWindow
*window
, int x
, int y
);
268 class TitleY
: public BC_TumbleTextBox
271 TitleY(TitleMain
*client
, TitleWindow
*window
, int x
, int y
);
276 class TitleStrokeW
: public BC_TumbleTextBox
279 TitleStrokeW(TitleMain
*client
, TitleWindow
*window
, int x
, int y
);
284 class TitleDropShadow
: public BC_TumbleTextBox
287 TitleDropShadow(TitleMain
*client
, TitleWindow
*window
, int x
, int y
);
293 class TitleSpeed
: public BC_TumbleTextBox
296 TitleSpeed(TitleMain
*client
, TitleWindow
*window
, int x
, int y
);
301 class TitleLeft
: public BC_Radial
304 TitleLeft(TitleMain
*client
, TitleWindow
*window
, int x
, int y
);
309 class TitleCenter
: public BC_Radial
312 TitleCenter(TitleMain
*client
, TitleWindow
*window
, int x
, int y
);
317 class TitleRight
: public BC_Radial
320 TitleRight(TitleMain
*client
, TitleWindow
*window
, int x
, int y
);
326 class TitleTop
: public BC_Radial
329 TitleTop(TitleMain
*client
, TitleWindow
*window
, int x
, int y
);
334 class TitleMid
: public BC_Radial
337 TitleMid(TitleMain
*client
, TitleWindow
*window
, int x
, int y
);
342 class TitleBottom
: public BC_Radial
345 TitleBottom(TitleMain
*client
, TitleWindow
*window
, int x
, int y
);
351 class TitleColorThread
: public ColorThread
354 TitleColorThread(TitleMain
*client
, TitleWindow
*window
);
355 int handle_event(int output
);
360 class TitleColorStrokeThread
: public ColorThread
363 TitleColorStrokeThread(TitleMain
*client
, TitleWindow
*window
);
364 int handle_event(int output
);