X-Git-Url: https://git.cinelerra-gg.org/git/?a=blobdiff_plain;f=cinelerra-5.1%2Fplugins%2Fzoomblur%2Fzoomblur.h;h=6338f5c0f4f4ab67ce477ed40824618698a4275d;hb=868d94b3bcbdcd3bb3c200839f1f55886da148eb;hp=32a00f1cb76b252a5a0c31fd3f3bff6046be1a07;hpb=e375434717622cc3198a6bf9f7b7fb9fde555c21;p=goodguy%2Fcinelerra.git diff --git a/cinelerra-5.1/plugins/zoomblur/zoomblur.h b/cinelerra-5.1/plugins/zoomblur/zoomblur.h index 32a00f1c..6338f5c0 100644 --- a/cinelerra-5.1/plugins/zoomblur/zoomblur.h +++ b/cinelerra-5.1/plugins/zoomblur/zoomblur.h @@ -32,15 +32,31 @@ #include "language.h" #include "loadbalance.h" #include "pluginvclient.h" +#include "theme.h" #include "vframe.h" +#define RESET_DEFAULT_SETTINGS 10 +#define RESET_ALL 0 +#define RESET_XSLIDER 1 +#define RESET_YSLIDER 2 +#define RESET_RADIUS 3 +#define RESET_STEPS 4 +#define XY_MIN 0 +#define XY_MAX 100 +#define RADIUS_MAX 100 +#define STEPS_MIN 1 +#define STEPS_MAX 100 class ZoomBlurMain; class ZoomBlurWindow; class ZoomBlurEngine; +class ZoomBlurIText; +class ZoomBlurISlider; +class ZoomBlurToggle; class ZoomBlurReset; - +class ZoomBlurDefaultSettings; +class ZoomBlurClr; @@ -49,7 +65,7 @@ class ZoomBlurConfig public: ZoomBlurConfig(); - void reset(); + void reset(int clear); int equivalent(ZoomBlurConfig &that); void copy_from(ZoomBlurConfig &that); void interpolate(ZoomBlurConfig &prev, @@ -70,17 +86,31 @@ public: -class ZoomBlurSize : public BC_ISlider + +class ZoomBlurIText : public BC_TumbleTextBox { public: - ZoomBlurSize(ZoomBlurMain *plugin, - int x, - int y, - int *output, - int min, - int max); + ZoomBlurIText(ZoomBlurWindow *window, ZoomBlurMain *plugin, + ZoomBlurISlider *slider, int *output, int x, int y, int min, int max); + ~ZoomBlurIText(); + int handle_event(); + ZoomBlurWindow *window; + ZoomBlurMain *plugin; + ZoomBlurISlider *slider; + int *output; + int min, max; +}; + +class ZoomBlurISlider : public BC_ISlider +{ +public: + ZoomBlurISlider(ZoomBlurMain *plugin, + ZoomBlurIText *text, int *output, int x, int y, + int min, int max, int w); + ~ZoomBlurISlider(); int handle_event(); ZoomBlurMain *plugin; + ZoomBlurIText *text; int *output; }; @@ -104,12 +134,28 @@ public: ~ZoomBlurWindow(); void create_objects(); - void update(); + void update_gui(int clear); + + ZoomBlurIText *x_text; + ZoomBlurISlider *x_slider; + ZoomBlurClr *x_Clr; + + ZoomBlurIText *y_text; + ZoomBlurISlider *y_slider; + ZoomBlurClr *y_Clr; + + ZoomBlurIText *radius_text; + ZoomBlurISlider *radius_slider; + ZoomBlurClr *radius_Clr; + + ZoomBlurIText *steps_text; + ZoomBlurISlider *steps_slider; + ZoomBlurClr *steps_Clr; - ZoomBlurSize *x, *y, *radius, *steps; ZoomBlurToggle *r, *g, *b, *a; ZoomBlurMain *plugin; ZoomBlurReset *reset; + ZoomBlurDefaultSettings *default_settings; }; class ZoomBlurReset : public BC_GenericButton @@ -122,6 +168,27 @@ public: ZoomBlurWindow *window; }; +class ZoomBlurDefaultSettings : public BC_GenericButton +{ +public: + ZoomBlurDefaultSettings(ZoomBlurMain *plugin, ZoomBlurWindow *window, int x, int y, int w); + ~ZoomBlurDefaultSettings(); + int handle_event(); + ZoomBlurMain *plugin; + ZoomBlurWindow *window; +}; + + +class ZoomBlurClr : public BC_Button +{ +public: + ZoomBlurClr(ZoomBlurMain *plugin, ZoomBlurWindow *window, int x, int y, int clear); + ~ZoomBlurClr(); + int handle_event(); + ZoomBlurMain *plugin; + ZoomBlurWindow *window; + int clear; +};