From: Mikael Magnusson Date: Tue, 2 Aug 2011 20:18:14 +0000 (+0200) Subject: Merge branch 'm4/master' X-Git-Tag: release-3.5.1~138 X-Git-Url: http://git.openbox.org/?p=dana%2Fopenbox.git;a=commitdiff_plain;h=d09fd3183e6a52c63fcfdcf62d418cfdccb0015b Merge branch 'm4/master' --- d09fd3183e6a52c63fcfdcf62d418cfdccb0015b diff --cc obrender/render.h index d7066e2,d8d47c9..a5d6500 --- a/obrender/render.h +++ b/obrender/render.h @@@ -44,11 -44,11 +44,12 @@@ typedef struct _RrPixmapMask RrPi typedef struct _RrInstance RrInstance; typedef struct _RrColor RrColor; typedef struct _RrImage RrImage; +typedef struct _RrImageSet RrImageSet; typedef struct _RrImagePic RrImagePic; typedef struct _RrImageCache RrImageCache; + typedef struct _RrButton RrButton; -typedef guint32 RrPixel32; +typedef guint32 RrPixel32; /* RGBA format */ typedef guint16 RrPixel16; typedef guchar RrPixel8; @@@ -284,8 -265,59 +285,54 @@@ struct _RrImageSe RrImage. */ RrImagePic **resized; gint n_resized; - - /* This function (if not NULL) will be called just before destroying - RrImage. */ - RrImageDestroyFunc destroy_func; - gpointer destroy_data; }; + struct _RrButton { + const RrInstance *inst; + + /* colors */ + RrColor *focused_unpressed_color; + RrColor *unfocused_unpressed_color; + RrColor *focused_pressed_color; + RrColor *unfocused_pressed_color; + RrColor *disabled_focused_color; + RrColor *disabled_unfocused_color; + RrColor *hover_focused_color; + RrColor *hover_unfocused_color; + RrColor *toggled_hover_focused_color; + RrColor *toggled_hover_unfocused_color; + RrColor *toggled_focused_pressed_color; + RrColor *toggled_unfocused_pressed_color; + RrColor *toggled_focused_unpressed_color; + RrColor *toggled_unfocused_unpressed_color; + + /* masks */ + RrPixmapMask *mask; + RrPixmapMask *pressed_mask; + RrPixmapMask *disabled_mask; + RrPixmapMask *hover_mask; + RrPixmapMask *toggled_mask; + RrPixmapMask *toggled_hover_mask; + RrPixmapMask *toggled_pressed_mask; + + /* textures */ + RrAppearance *a_focused_unpressed; + RrAppearance *a_unfocused_unpressed; + RrAppearance *a_focused_pressed; + RrAppearance *a_unfocused_pressed; + RrAppearance *a_disabled_focused; + RrAppearance *a_disabled_unfocused; + RrAppearance *a_hover_focused; + RrAppearance *a_hover_unfocused; + RrAppearance *a_toggled_focused_unpressed; + RrAppearance *a_toggled_unfocused_unpressed; + RrAppearance *a_toggled_focused_pressed; + RrAppearance *a_toggled_unfocused_pressed; + RrAppearance *a_toggled_hover_focused; + RrAppearance *a_toggled_hover_unfocused; + + }; + /* these are the same on all endian machines because it seems to be dependant on the endianness of the gfx card, not the cpu. */ #define RrDefaultAlphaOffset 24