X-Git-Url: https://git.cinelerra-gg.org/git/?a=blobdiff_plain;f=cinelerra-5.1%2Fplugins%2Fradialblur%2Fradialblur.h;h=11b1c183e62e40eb5ade8961f361bc8a29f6c0ef;hb=07a0e1f6f49dc7c4229a3a296b722a0571c17e81;hp=d16facf8bf5b700f06a893cfc197902d6edf3c6a;hpb=e375434717622cc3198a6bf9f7b7fb9fde555c21;p=goodguy%2Fcinelerra.git diff --git a/cinelerra-5.1/plugins/radialblur/radialblur.h b/cinelerra-5.1/plugins/radialblur/radialblur.h index d16facf8..11b1c183 100644 --- a/cinelerra-5.1/plugins/radialblur/radialblur.h +++ b/cinelerra-5.1/plugins/radialblur/radialblur.h @@ -37,13 +37,32 @@ #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_ANGLE 3 +#define RESET_STEPS 4 + +#define XY_MIN 0 +#define XY_MAX 100 +#define ANGLE_MIN 0 +#define ANGLE_MAX 360 +#define STEPS_MIN 1 +#define STEPS_MAX 100 class RadialBlurMain; class RadialBlurWindow; class RadialBlurEngine; +class RadialBlurIText; +class RadialBlurISlider; +class RadialBlurToggle; class RadialBlurReset; +class RadialBlurDefaultSettings; +class RadialBlurClr; @@ -53,7 +72,7 @@ class RadialBlurConfig public: RadialBlurConfig(); - void reset(); + void reset(int clear); int equivalent(RadialBlurConfig &that); void copy_from(RadialBlurConfig &that); void interpolate(RadialBlurConfig &prev, @@ -73,18 +92,30 @@ public: }; +class RadialBlurIText : public BC_TumbleTextBox +{ +public: + RadialBlurIText(RadialBlurWindow *gui, RadialBlurMain *plugin, + RadialBlurISlider *slider, int *output, int x, int y, int min, int max); + ~RadialBlurIText(); + int handle_event(); + RadialBlurWindow *gui; + RadialBlurMain *plugin; + RadialBlurISlider *slider; + int *output; + int min, max; +}; -class RadialBlurSize : public BC_ISlider +class RadialBlurISlider : public BC_ISlider { public: - RadialBlurSize(RadialBlurMain *plugin, - int x, - int y, - int *output, - int min, - int max); + RadialBlurISlider(RadialBlurMain *plugin, + RadialBlurIText *text, int *output, int x, int y, + int min, int max, int w); + ~RadialBlurISlider(); int handle_event(); RadialBlurMain *plugin; + RadialBlurIText *text; int *output; }; @@ -111,6 +142,27 @@ public: RadialBlurWindow *gui; }; +class RadialBlurDefaultSettings : public BC_GenericButton +{ +public: + RadialBlurDefaultSettings(RadialBlurMain *plugin, RadialBlurWindow *gui, int x, int y, int w); + ~RadialBlurDefaultSettings(); + int handle_event(); + RadialBlurMain *plugin; + RadialBlurWindow *gui; +}; + +class RadialBlurClr : public BC_Button +{ +public: + RadialBlurClr(RadialBlurMain *plugin, RadialBlurWindow *gui, int x, int y, int clear); + ~RadialBlurClr(); + int handle_event(); + RadialBlurMain *plugin; + RadialBlurWindow *gui; + int clear; +}; + class RadialBlurWindow : public PluginClientWindow { public: @@ -118,12 +170,29 @@ public: ~RadialBlurWindow(); void create_objects(); - void update(); + void update_gui(int clear); + + + RadialBlurIText *x_text; + RadialBlurISlider *x_slider; + RadialBlurClr *x_Clr; + + RadialBlurIText *y_text; + RadialBlurISlider *y_slider; + RadialBlurClr *y_Clr; + + RadialBlurIText *angle_text; + RadialBlurISlider *angle_slider; + RadialBlurClr *angle_Clr; + + RadialBlurIText *steps_text; + RadialBlurISlider *steps_slider; + RadialBlurClr *steps_Clr; - RadialBlurSize *x, *y, *steps, *angle; RadialBlurToggle *r, *g, *b, *a; RadialBlurMain *plugin; RadialBlurReset *reset; + RadialBlurDefaultSettings *default_settings; };