10 #include "colorpicker.h"
16 PLUGIN_THREAD_HEADER(TitleMain
, TitleThread
, TitleWindow
)
20 class TitleFontTumble
;
25 class TitleColorButton
;
26 class TitleColorStrokeButton
;
29 class TitleDropShadow
;
39 class TitleRight
;class TitleTop
;
42 class TitleColorThread
;
43 class TitleColorStrokeThread
;
46 class TitleTimecodeFormat
;
48 class TitleWindow
: public BC_Window
51 TitleWindow(TitleMain
*client
, int x
, int y
);
56 int resize_event(int w
, int h
);
58 void update_justification();
67 TitleFontTumble
*font_tumbler
;
72 BC_Title
*dropshadow_title
;
73 TitleDropShadow
*dropshadow
;
74 BC_Title
*style_title
;
80 TitleColorStrokeButton
*color_stroke_button
;
81 TitleColorStrokeThread
*color_stroke_thread
;
82 BC_Title
*strokewidth_title
;
83 TitleStrokeW
*stroke_width
;
84 int color_stroke_x
, color_stroke_y
;
89 BC_Title
*encoding_title
;
91 TitleEncoding
*encoding
;
92 TitleColorButton
*color_button
;
93 TitleColorThread
*color_thread
;
94 BC_Title
*motion_title
;
97 BC_Title
*fadein_title
;
99 BC_Title
*fadeout_title
;
101 BC_Title
*text_title
;
103 BC_Title
*justify_title
;
110 BC_Title
*speed_title
;
112 TitleTimecode
*timecode
;
113 TitleTimecodeFormat
*timecodeformat
;
116 ArrayList
<BC_ListBoxItem
*> sizes
;
117 ArrayList
<BC_ListBoxItem
*> encodings
;
118 ArrayList
<BC_ListBoxItem
*> paths
;
119 ArrayList
<BC_ListBoxItem
*> fonts
;
120 ArrayList
<BC_ListBoxItem
*> timecodeformats
;
124 class TitleFontTumble
: public BC_Tumbler
127 TitleFontTumble(TitleMain
*client
, TitleWindow
*window
, int x
, int y
);
129 int handle_up_event();
130 int handle_down_event();
136 class TitleItalic
: public BC_CheckBox
139 TitleItalic(TitleMain
*client
, TitleWindow
*window
, int x
, int y
);
144 class TitleBold
: public BC_CheckBox
147 TitleBold(TitleMain
*client
, TitleWindow
*window
, int x
, int y
);
153 class TitleStroke
: public BC_CheckBox
156 TitleStroke(TitleMain
*client
, TitleWindow
*window
, int x
, int y
);
163 class TitleSize
: public BC_PopupTextBox
166 TitleSize(TitleMain
*client
, TitleWindow
*window
, int x
, int y
, char *text
);
169 void update(int size
);
173 class TitleEncoding
: public BC_PopupTextBox
176 TitleEncoding(TitleMain
*client
, TitleWindow
*window
, int x
, int y
);
182 class TitleColorButton
: public BC_GenericButton
185 TitleColorButton(TitleMain
*client
, TitleWindow
*window
, int x
, int y
);
190 class TitleColorStrokeButton
: public BC_GenericButton
193 TitleColorStrokeButton(TitleMain
*client
, TitleWindow
*window
, int x
, int y
);
198 class TitleMotion
: public BC_PopupTextBox
201 TitleMotion(TitleMain
*client
, TitleWindow
*window
, int x
, int y
);
206 class TitleLoop
: public BC_CheckBox
209 TitleLoop(TitleMain
*client
, int x
, int y
);
214 class TitleTimecode
: public BC_CheckBox
217 TitleTimecode(TitleMain
*client
, int x
, int y
);
222 class TitleTimecodeFormat
: public BC_PopupTextBox
225 TitleTimecodeFormat(TitleMain
*client
, TitleWindow
*window
, int x
, int y
);
226 ~TitleTimecodeFormat();
231 class TitleFade
: public BC_TextBox
234 TitleFade(TitleMain
*client
, TitleWindow
*window
, double *value
, int x
, int y
);
240 class TitleFont
: public BC_PopupTextBox
243 TitleFont(TitleMain
*client
, TitleWindow
*window
, int x
, int y
);
248 class TitleText
: public BC_ScrollTextBox
251 TitleText(TitleMain
*client
,
261 class TitleX
: public BC_TumbleTextBox
264 TitleX(TitleMain
*client
, TitleWindow
*window
, int x
, int y
);
269 class TitleY
: public BC_TumbleTextBox
272 TitleY(TitleMain
*client
, TitleWindow
*window
, int x
, int y
);
277 class TitleStrokeW
: public BC_TumbleTextBox
280 TitleStrokeW(TitleMain
*client
, TitleWindow
*window
, int x
, int y
);
285 class TitleDropShadow
: public BC_TumbleTextBox
288 TitleDropShadow(TitleMain
*client
, TitleWindow
*window
, int x
, int y
);
294 class TitleSpeed
: public BC_TumbleTextBox
297 TitleSpeed(TitleMain
*client
, TitleWindow
*window
, int x
, int y
);
302 class TitleLeft
: public BC_Radial
305 TitleLeft(TitleMain
*client
, TitleWindow
*window
, int x
, int y
);
310 class TitleCenter
: public BC_Radial
313 TitleCenter(TitleMain
*client
, TitleWindow
*window
, int x
, int y
);
318 class TitleRight
: public BC_Radial
321 TitleRight(TitleMain
*client
, TitleWindow
*window
, int x
, int y
);
327 class TitleTop
: public BC_Radial
330 TitleTop(TitleMain
*client
, TitleWindow
*window
, int x
, int y
);
335 class TitleMid
: public BC_Radial
338 TitleMid(TitleMain
*client
, TitleWindow
*window
, int x
, int y
);
343 class TitleBottom
: public BC_Radial
346 TitleBottom(TitleMain
*client
, TitleWindow
*window
, int x
, int y
);
352 class TitleColorThread
: public ColorThread
355 TitleColorThread(TitleMain
*client
, TitleWindow
*window
);
356 virtual int handle_new_color(int output
, int alpha
);
361 class TitleColorStrokeThread
: public ColorThread
364 TitleColorStrokeThread(TitleMain
*client
, TitleWindow
*window
);
365 int handle_event(int output
);