r125: This commit was manufactured by cvs2svn to create tag 'r1_1_7-last'.
[cinelerra_cv/mob.git] / hvirtual / guicast / bcbutton.h
blobb9f0de89925236150a51174958c1900fc73523b0
1 #ifndef BCBUTTON_H
2 #define BCBUTTON_H
4 #include "bcbitmap.inc"
5 #include "bcsubwindow.h"
6 #include "vframe.inc"
8 #include <stdint.h>
11 class BC_Button : public BC_SubWindow
13 public:
14 BC_Button(int x, int y, VFrame **data);
15 BC_Button(int x, int y, int w, VFrame **data);
16 virtual ~BC_Button();
18 friend class BC_GenericButton;
20 virtual int handle_event() { return 0; };
21 int repeat_event(int64_t repeat_id);
22 virtual int draw_face();
24 int initialize();
25 virtual int set_images(VFrame **data);
26 int cursor_enter_event();
27 int cursor_leave_event();
28 int button_press_event();
29 int button_release_event();
30 int cursor_motion_event();
31 int update_bitmaps(VFrame **data);
32 int reposition_window(int x, int y);
33 void set_underline(int number);
35 private:
37 BC_Pixmap *images[3];
38 VFrame **data;
39 int status;
40 int w_argument;
41 int underline_number;
47 class BC_GenericButton : public BC_Button
49 public:
50 BC_GenericButton(int x, int y, char *text, VFrame **data = 0);
51 BC_GenericButton(int x, int y, int w, char *text, VFrame **data = 0);
52 int set_images(VFrame **data);
53 int draw_face();
55 private:
56 char text[BCTEXTLEN];
59 class BC_OKButton : public BC_Button
61 public:
62 BC_OKButton(int x, int y);
63 BC_OKButton(BC_WindowBase *parent_window);
64 virtual int resize_event(int w, int h);
65 virtual int handle_event();
66 virtual int keypress_event();
69 class BC_CancelButton : public BC_Button
71 public:
72 BC_CancelButton(int x, int y);
73 BC_CancelButton(BC_WindowBase *parent_window);
74 virtual int resize_event(int w, int h);
75 virtual int handle_event();
76 virtual int keypress_event();
79 #endif