#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;
public:
RadialBlurConfig();
- void reset();
+ void reset(int clear);
int equivalent(RadialBlurConfig &that);
void copy_from(RadialBlurConfig &that);
void interpolate(RadialBlurConfig &prev,
};
+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;
};
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:
~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;
};