X-Git-Url: https://git.cinelerra-gg.org/git/?a=blobdiff_plain;f=cinelerra-5.1%2Fplugins%2Frgbshift%2Frgbshift.h;h=75fc0d796128a11b00b95cb85d427cfcc38c714e;hb=dc5a5d807e75a138eb7534c91e685734c654e93e;hp=2092dc028a18a6bc8caad4e591c7ca5d74c7c25d;hpb=54cc56bff09f5004b2a6cd454375f06e56acf5a0;p=goodguy%2Fcinelerra.git diff --git a/cinelerra-5.1/plugins/rgbshift/rgbshift.h b/cinelerra-5.1/plugins/rgbshift/rgbshift.h index 2092dc02..75fc0d79 100644 --- a/cinelerra-5.1/plugins/rgbshift/rgbshift.h +++ b/cinelerra-5.1/plugins/rgbshift/rgbshift.h @@ -31,15 +31,28 @@ #include "language.h" #include "bccolors.h" #include "pluginvclient.h" +#include "theme.h" #include "vframe.h" #include #include +#define MAXVALUE 100 + +#define RESET_ALL 0 +#define RESET_R_DX 1 +#define RESET_R_DY 2 +#define RESET_G_DX 3 +#define RESET_G_DY 4 +#define RESET_B_DX 5 +#define RESET_B_DY 6 class RGBShiftEffect; class RGBShiftWindow; +class RGBShiftIText; +class RGBShiftISlider; class RGBShiftReset; +class RGBShiftClr; class RGBShiftConfig @@ -47,7 +60,7 @@ class RGBShiftConfig public: RGBShiftConfig(); - void reset(); + void reset(int clear); void copy_from(RGBShiftConfig &src); int equivalent(RGBShiftConfig &src); void interpolate(RGBShiftConfig &prev, @@ -59,12 +72,27 @@ public: int r_dx, r_dy, g_dx, g_dy, b_dx, b_dy; }; -class RGBShiftLevel : public BC_ISlider +class RGBShiftIText : public BC_TumbleTextBox +{ +public: + RGBShiftIText(RGBShiftWindow *window, RGBShiftEffect *plugin, + RGBShiftISlider *slider, int *output, int x, int y, int min, int max); + ~RGBShiftIText(); + int handle_event(); + RGBShiftWindow *window; + RGBShiftEffect *plugin; + RGBShiftISlider *slider; + int *output; + int min, max; +}; + +class RGBShiftISlider : public BC_ISlider { public: - RGBShiftLevel(RGBShiftEffect *plugin, int *output, int x, int y); + RGBShiftISlider(RGBShiftEffect *plugin, RGBShiftIText *text, int *output, int x, int y); int handle_event(); RGBShiftEffect *plugin; + RGBShiftIText *text; int *output; }; @@ -78,13 +106,45 @@ public: RGBShiftWindow *window; }; +class RGBShiftClr : public BC_Button +{ +public: + RGBShiftClr(RGBShiftEffect *plugin, RGBShiftWindow *window, int x, int y, int clear); + ~RGBShiftClr(); + int handle_event(); + RGBShiftEffect *plugin; + RGBShiftWindow *window; + int clear; +}; + class RGBShiftWindow : public PluginClientWindow { public: RGBShiftWindow(RGBShiftEffect *plugin); void create_objects(); - void update(); - RGBShiftLevel *r_dx, *r_dy, *g_dx, *g_dy, *b_dx, *b_dy; + void update_gui(int clear); + + RGBShiftIText *r_dx_text; + RGBShiftISlider *r_dx_slider; + RGBShiftClr *r_dx_Clr; + RGBShiftIText *r_dy_text; + RGBShiftISlider *r_dy_slider; + RGBShiftClr *r_dy_Clr; + + RGBShiftIText *g_dx_text; + RGBShiftISlider *g_dx_slider; + RGBShiftClr *g_dx_Clr; + RGBShiftIText *g_dy_text; + RGBShiftISlider *g_dy_slider; + RGBShiftClr *g_dy_Clr; + + RGBShiftIText *b_dx_text; + RGBShiftISlider *b_dx_slider; + RGBShiftClr *b_dx_Clr; + RGBShiftIText *b_dy_text; + RGBShiftISlider *b_dy_slider; + RGBShiftClr *b_dy_Clr; + RGBShiftEffect *plugin; RGBShiftReset *reset; };