]> icculus.org git repositories - dana/openbox.git/blob - obrender/button.h
Adding RrButton to libobrender, ref counted appearances.
[dana/openbox.git] / obrender / button.h
1 #ifndef __button_h
2 #define __button_h
3
4 #include "render.h"
5
6 #include <X11/Xlib.h>
7 #include <X11/Xutil.h>
8 #include <glib.h>
9
10 struct _RrButton {
11     const RrInstance *inst;
12
13     /* reference count */
14     gint ref;
15
16     /* colors */
17     RrColor *focused_unpressed_color;
18     RrColor *unfocused_unpressed_color;
19     RrColor *focused_pressed_color;
20     RrColor *unfocused_pressed_color;
21     RrColor *disabled_focused_color;
22     RrColor *disabled_unfocused_color;
23     RrColor *hover_focused_color;
24     RrColor *hover_unfocused_color;
25     RrColor *toggled_hover_focused_color;
26     RrColor *toggled_hover_unfocused_color;
27     RrColor *toggled_focused_pressed_color;
28     RrColor *toggled_unfocused_pressed_color;
29     RrColor *toggled_focused_unpressed_color;
30     RrColor *toggled_unfocused_unpressed_color;
31     
32     /* masks */
33     RrPixmapMask *mask;
34     RrPixmapMask *pressed_mask;
35     RrPixmapMask *disabled_mask;
36     RrPixmapMask *hover_mask;
37     RrPixmapMask *toggled_mask;
38     RrPixmapMask *toggled_hover_mask;
39     RrPixmapMask *toggled_pressed_mask;
40    
41     /* textures */
42     RrAppearance *a_focused_unpressed;
43     RrAppearance *a_unfocused_unpressed;
44     RrAppearance *a_focused_pressed;
45     RrAppearance *a_unfocused_pressed;
46     RrAppearance *a_disabled_focused;
47     RrAppearance *a_disabled_unfocused;
48     RrAppearance *a_hover_focused;
49     RrAppearance *a_hover_unfocused;
50     RrAppearance *a_toggled_focused_unpressed;
51     RrAppearance *a_toggled_unfocused_unpressed;
52     RrAppearance *a_toggled_focused_pressed;
53     RrAppearance *a_toggled_unfocused_pressed;
54     RrAppearance *a_toggled_hover_focused;
55     RrAppearance *a_toggled_hover_unfocused;
56
57 };
58
59 #endif /* __button_h */