r134: Heroine Virtual's release 1.1.8
[cinelerra_cv/mob.git] / hvirtual / plugins / rotate / rotatewindow.h
blobafc6c403c5e178221efc24d3f876f01e1b12f229
1 #ifndef R0TATEWINDOW_H
2 #define R0TATEWINDOW_H
4 #include "bcbase.h"
6 class RotateThread;
7 class RotateWindow;
9 #include "filexml.h"
10 #include "mutex.h"
11 #include "rotate.h"
13 class RotateThread : public Thread
15 public:
16 RotateThread(RotateMain *client);
17 ~RotateThread();
19 void run();
21 Mutex gui_started; // prevent loading data until the GUI is started
22 RotateMain *client;
23 RotateWindow *window;
26 class RotateToggle;
27 class RotateFine;
29 class RotateWindow : public BC_Window
31 public:
32 RotateWindow(RotateMain *client);
33 ~RotateWindow();
35 int create_objects();
36 int close_event();
37 int update_parameters();
38 int update_fine();
39 int update_toggles();
41 RotateMain *client;
42 RotateToggle *toggle0;
43 RotateToggle *toggle90;
44 RotateToggle *toggle180;
45 RotateToggle *toggle270;
46 RotateFine *fine;
49 class RotateToggle : public BC_Radial
51 public:
52 RotateToggle(RotateWindow *window, RotateMain *client, int init_value, int x, int y, int value, char *string);
53 ~RotateToggle();
54 int handle_event();
56 RotateMain *client;
57 RotateWindow *window;
58 int value;
61 class RotateFine : public BC_IPot
63 public:
64 RotateFine(RotateWindow *window, RotateMain *client, int x, int y);
65 ~RotateFine();
66 int handle_event();
68 RotateMain *client;
69 RotateWindow *window;
73 #endif