r878: This is Cinelerra 2.1.
[cinelerra_cv/ct.git] / guicast / bctumble.h
blob47500515283b6dac6fb3ed2092a3e8ae5d5fb102
1 #ifndef BCTUMBLE_H
2 #define BCTUMBLE_H
4 #include "bcsubwindow.h"
6 class BC_Tumbler : public BC_SubWindow
8 public:
9 BC_Tumbler(int x, int y, VFrame **data = 0);
10 virtual ~BC_Tumbler();
12 virtual int handle_up_event() { return 0; };
13 virtual int handle_down_event() { return 0; };
14 int repeat_event(int64_t repeat_id);
16 int initialize();
17 int set_images(VFrame **data);
18 int cursor_enter_event();
19 int cursor_leave_event();
20 int button_press_event();
21 int button_release_event();
22 int cursor_motion_event();
23 int update_bitmaps(VFrame **data);
24 int reposition_window(int x, int y, int w=-1, int h=-1); // w & h don't do anything, except to inherit BC_Subwindow::(reposition_window)
25 virtual void set_boundaries(int64_t min, int64_t max) {};
26 virtual void set_boundaries(float min, float max) {};
27 virtual void set_increment(float value) {};
29 private:
30 int draw_face();
32 BC_Pixmap *images[4];
33 int status;
34 int64_t repeat_count;
35 VFrame **data;
38 class BC_ITumbler : public BC_Tumbler
40 public:
41 BC_ITumbler(BC_TextBox *textbox, int64_t min, int64_t max, int x, int y);
42 virtual ~BC_ITumbler();
44 int handle_up_event();
45 int handle_down_event();
46 void set_increment(float value);
47 void set_boundaries(int64_t min, int64_t max);
49 int64_t min, max;
50 int64_t increment;
51 BC_TextBox *textbox;
54 class BC_FTumbler : public BC_Tumbler
56 public:
57 BC_FTumbler(BC_TextBox *textbox, float min, float max, int x, int y);
58 virtual ~BC_FTumbler();
60 int handle_up_event();
61 int handle_down_event();
62 void set_boundaries(float min, float max);
63 void set_increment(float value);
65 float min, max;
66 float increment;
67 BC_TextBox *textbox;
70 #endif