add missing GPL information in guicast program files
[goodguy/cinelerra.git] / cinelerra-5.1 / cinelerra / dragcheckbox.h
1 #ifndef __DRAGCHECKBOX_H__
2 #define __DRAGCHECKBOX_H__
3
4 #include "bctoggle.h"
5 #include "mwindow.inc"
6 #include "track.inc"
7
8 class DragCheckBox : public BC_CheckBox
9 {
10 public:
11         DragCheckBox(MWindow *mwindow, int x, int y, const char *text, int *value,
12                 float drag_x, float drag_y, float drag_w, float drag_h);
13         ~DragCheckBox();
14         virtual Track *get_drag_track() = 0;
15         virtual int64_t get_drag_position() = 0;
16         virtual void update_gui() { return; };
17         void create_objects();
18         int get_track_w();
19         int get_track_h();
20         void bound();
21         static void draw_boundary(VFrame *out, int x, int y, int w, int h);
22
23         int check_pending();
24         int drag_activate();
25         void drag_deactivate();
26
27         int handle_event();
28         int grab_event(XEvent *event);
29         int handle_ungrab();
30         
31         MWindow *mwindow;
32         int grabbed, dragging, pending;
33         float drag_x, drag_y;
34         float drag_w, drag_h;
35         float drag_dx, drag_dy;
36 };
37
38 #endif
39