r125: This commit was manufactured by cvs2svn to create tag 'r1_1_7-last'.
[cinelerra_cv/mob.git] / hvirtual / plugins / blur / blurwindow.C
blobea137ccf1524f9512b85461007bf4bcd42792a11
1 #include "bcdisplayinfo.h"
2 #include "blur.h"
3 #include "blurwindow.h"
6 #include <libintl.h>
7 #define _(String) gettext(String)
8 #define gettext_noop(String) String
9 #define N_(String) gettext_noop (String)
11 PLUGIN_THREAD_OBJECT(BlurMain, BlurThread, BlurWindow)
17 BlurWindow::BlurWindow(BlurMain *client, int x, int y)
18  : BC_Window(client->gui_string, 
19         x,
20         y,
21         150, 
22         270, 
23         150, 
24         270, 
25         0, 
26         1)
27
28         this->client = client; 
31 BlurWindow::~BlurWindow()
33 //printf("BlurWindow::~BlurWindow 1\n");
36 int BlurWindow::create_objects()
38         int x = 10, y = 10;
39         add_subwindow(new BC_Title(x, y, _("Blur")));
40         y += 20;
41         add_subwindow(horizontal = new BlurHorizontal(client, this, x, y));
42         y += 30;
43         add_subwindow(vertical = new BlurVertical(client, this, x, y));
44         y += 35;
45         add_subwindow(radius = new BlurRadius(client, x, y));
46         add_subwindow(new BC_Title(x + 50, y, _("Radius")));
47         y += 50;
48         add_subwindow(a = new BlurA(client, x, y));
49         y += 30;
50         add_subwindow(r = new BlurR(client, x, y));
51         y += 30;
52         add_subwindow(g = new BlurG(client, x, y));
53         y += 30;
54         add_subwindow(b = new BlurB(client, x, y));
55         
56         show_window();
57         flush();
58         return 0;
61 int BlurWindow::close_event()
63 // Set result to 1 to indicate a client side close
64         set_done(1);
65         return 1;
68 BlurRadius::BlurRadius(BlurMain *client, int x, int y)
69  : BC_IPot(x, 
70         y, 
71         client->config.radius, 
72         0, 
73         MAXRADIUS)
75         this->client = client;
77 BlurRadius::~BlurRadius()
80 int BlurRadius::handle_event()
82         client->config.radius = get_value();
83         client->send_configure_change();
84         return 1;
87 BlurVertical::BlurVertical(BlurMain *client, BlurWindow *window, int x, int y)
88  : BC_CheckBox(x, 
89         y, 
90         client->config.vertical, 
91         _("Vertical"))
93         this->client = client;
94         this->window = window;
96 BlurVertical::~BlurVertical()
99 int BlurVertical::handle_event()
101         client->config.vertical = get_value();
102         client->send_configure_change();
105 BlurHorizontal::BlurHorizontal(BlurMain *client, BlurWindow *window, int x, int y)
106  : BC_CheckBox(x, 
107         y, 
108         client->config.horizontal, 
109         _("Horizontal"))
111         this->client = client;
112         this->window = window;
114 BlurHorizontal::~BlurHorizontal()
117 int BlurHorizontal::handle_event()
119         client->config.horizontal = get_value();
120         client->send_configure_change();
126 BlurA::BlurA(BlurMain *client, int x, int y)
127  : BC_CheckBox(x, y, client->config.a, _("Blur alpha"))
129         this->client = client;
131 int BlurA::handle_event()
133         client->config.a = get_value();
134         client->send_configure_change();
135         return 1;
138 BlurR::BlurR(BlurMain *client, int x, int y)
139  : BC_CheckBox(x, y, client->config.r, _("Blur red"))
141         this->client = client;
143 int BlurR::handle_event()
145         client->config.r = get_value();
146         client->send_configure_change();
147         return 1;
150 BlurG::BlurG(BlurMain *client, int x, int y)
151  : BC_CheckBox(x, y, client->config.g, _("Blur green"))
153         this->client = client;
155 int BlurG::handle_event()
157         client->config.g = get_value();
158         client->send_configure_change();
159         return 1;
162 BlurB::BlurB(BlurMain *client, int x, int y)
163  : BC_CheckBox(x, y, client->config.b, _("Blur blue"))
165         this->client = client;
167 int BlurB::handle_event()
169         client->config.b = get_value();
170         client->send_configure_change();
171         return 1;