X-Git-Url: http://git.cinelerra-gg.org/git/?p=goodguy%2Fhistory.git;a=blobdiff_plain;f=cinelerra-5.1%2Fplugins%2Ftitler%2Ftitlerwindow.h;fp=cinelerra-5.1%2Fplugins%2Ftitler%2Ftitlewindow.h;h=cc3734b4caf54df4b91b577bb9a543a483a87a30;hp=3680b0ed4852f67b599aed50317683d3cce0d714;hb=77815ec03df6a03ed75433e8cf8ae1e83fb76d6e;hpb=d85ee0843fbbd79a0a7d2ffa0aac57968e24f6d7;ds=sidebyside diff --git a/cinelerra-5.1/plugins/titler/titlewindow.h b/cinelerra-5.1/plugins/titler/titlerwindow.h similarity index 74% rename from cinelerra-5.1/plugins/titler/titlewindow.h rename to cinelerra-5.1/plugins/titler/titlerwindow.h index 3680b0ed..cc3734b4 100644 --- a/cinelerra-5.1/plugins/titler/titlewindow.h +++ b/cinelerra-5.1/plugins/titler/titlerwindow.h @@ -31,7 +31,7 @@ class TitleInterlace; #include "colorpicker.h" #include "filexml.h" #include "mutex.h" -#include "title.h" +#include "titler.h" @@ -41,10 +41,12 @@ class TitleFontTumble; class TitleSizeTumble; class TitleItalic; class TitleBold; +class TitleDrag; class TitleSize; class TitlePitch; class TitleEncoding; class TitleColorButton; +class TitleOutlineColorButton; class TitleDropShadow; class TitleMotion; class TitleLoop; @@ -54,6 +56,8 @@ class TitleFont; class TitleText; class TitleX; class TitleY; +class TitleW; +class TitleH; class TitleLeft; class TitleCenter; class TitleRight;class TitleTop; @@ -64,6 +68,14 @@ class TitleSpeed; class TitleTimecode; class TitleTimecodeFormat; class TitleOutline; +class TitleStroker; +class TitleBackground; +class TitleBackgroundPath; +class TitleLoopPlayback; +class TitleCurPopup; +class TitleCurItem; +class TitleCurSubMenu; +class TitleCurSubMenuItem; class TitleWindow : public PluginClientWindow { @@ -73,6 +85,7 @@ public: void create_objects(); int resize_event(int w, int h); + int grab_event(XEvent *event); void update_color(); void update_justification(); void update(); @@ -88,17 +101,26 @@ public: TitleX *title_x; BC_Title *y_title; TitleY *title_y; + BC_Title *w_title; + TitleW *title_w; + BC_Title *h_title; + TitleH *title_h; BC_Title *dropshadow_title; TitleDropShadow *dropshadow; BC_Title *outline_title; TitleOutline *outline; + BC_Title *stroker_title; + TitleStroker *stroker; BC_Title *style_title; TitleItalic *italic; TitleBold *bold; - + TitleDrag *drag; + TitleCurPopup *cur_popup; int color_x, color_y; int outline_color_x, outline_color_y; + int drag_dx, drag_dy, dragging; + BC_Title *size_title; TitleSize *size; TitleSizeTumble *size_tumbler; @@ -108,7 +130,7 @@ public: TitleEncoding *encoding; TitleColorButton *color_button; TitleColorThread *color_thread; - TitleColorButton *outline_color_button; + TitleOutlineColorButton *outline_color_button; TitleColorThread *outline_color_thread; BC_Title *motion_title; TitleMotion *motion; @@ -131,12 +153,16 @@ public: TitleSpeed *speed; TitleTimecode *timecode; TitleTimecodeFormat *timecode_format; + TitleBackground *background; + TitleBackgroundPath *background_path; + TitleLoopPlayback *loop_playback; // Color preview ArrayList sizes; ArrayList encodings; ArrayList paths; ArrayList fonts; + int cur_ibeam; }; @@ -183,6 +209,14 @@ public: TitleMain *client; TitleWindow *window; }; +class TitleDrag : public BC_CheckBox +{ +public: + TitleDrag(TitleMain *client, TitleWindow *window, int x, int y); + int handle_event(); + TitleMain *client; + TitleWindow *window; +}; class TitleSize : public BC_PopupTextBox @@ -221,15 +255,18 @@ public: class TitleColorButton : public BC_GenericButton { public: - TitleColorButton(TitleMain *client, - TitleWindow *window, - int x, - int y, - int is_outline); + TitleColorButton(TitleMain *client, TitleWindow *window, int x, int y); + int handle_event(); + TitleMain *client; + TitleWindow *window; +}; +class TitleOutlineColorButton : public BC_GenericButton +{ +public: + TitleOutlineColorButton(TitleMain *client, TitleWindow *window, int x, int y); int handle_event(); TitleMain *client; TitleWindow *window; - int is_outline; }; class TitleMotion : public BC_PopupTextBox @@ -302,6 +339,7 @@ public: int w, int h); int handle_event(); + int button_press_event(); TitleMain *client; TitleWindow *window; }; @@ -321,11 +359,18 @@ public: TitleMain *client; TitleWindow *window; }; - -class TitleStrokeW : public BC_TumbleTextBox +class TitleW : public BC_TumbleTextBox { public: - TitleStrokeW(TitleMain *client, TitleWindow *window, int x, int y); + TitleW(TitleMain *client, TitleWindow *window, int x, int y); + int handle_event(); + TitleMain *client; + TitleWindow *window; +}; +class TitleH : public BC_TumbleTextBox +{ +public: + TitleH(TitleMain *client, TitleWindow *window, int x, int y); int handle_event(); TitleMain *client; TitleWindow *window; @@ -349,6 +394,15 @@ public: TitleWindow *window; }; +class TitleStroker : public BC_TumbleTextBox +{ +public: + TitleStroker(TitleMain *client, TitleWindow *window, int x, int y); + int handle_event(); + TitleMain *client; + TitleWindow *window; +}; + class TitleSpeed : public BC_TumbleTextBox { public: @@ -406,7 +460,6 @@ public: TitleMain *client; TitleWindow *window; }; - class TitleColorThread : public ColorThread { public: @@ -416,15 +469,70 @@ public: TitleWindow *window; int is_outline; }; +class TitleBackground : public BC_CheckBox +{ +public: + TitleBackground(TitleMain *client, TitleWindow *window, int x, int y); + int handle_event(); + TitleMain *client; + TitleWindow *window; +}; +class TitleBackgroundPath : public BC_TextBox +{ +public: + TitleBackgroundPath(TitleMain *client, TitleWindow *window, int x, int y); + int handle_event(); + TitleMain *client; + TitleWindow *window; +}; +class TitleLoopPlayback : public BC_CheckBox +{ +public: + TitleLoopPlayback(TitleMain *client, int x, int y); + int handle_event(); + TitleMain *client; + TitleWindow *window; +}; -class TitleColorStrokeThread : public ColorThread +class TitleCurPopup : public BC_PopupMenu { public: - TitleColorStrokeThread(TitleMain *client, TitleWindow *window); - int handle_event(int output); + TitleCurPopup(TitleMain *client, TitleWindow *window); + + int handle_event(); + void create_objects(); + TitleMain *client; TitleWindow *window; }; +class TitleCurItem : public BC_MenuItem +{ +public: + TitleCurItem(TitleCurPopup *popup, const char *text); + + int handle_event(); + TitleCurPopup *popup; +}; + +class TitleCurSubMenu : public BC_SubMenu +{ +public: + TitleCurSubMenu(TitleCurItem *cur_item); + ~TitleCurSubMenu(); + + TitleCurItem *cur_item; +}; + +class TitleCurSubMenuItem : public BC_MenuItem +{ +public: + TitleCurSubMenuItem(TitleCurSubMenu *submenu, const char *text); + ~TitleCurSubMenuItem(); + + int handle_event(); + TitleCurSubMenu *submenu; +}; + #endif