Mercurial > pidgin.yaz
view finch/libgnt/gntmenuitemcheck.h @ 17593:759cd72bd2ff
Replaced a clean and simple API with a very weird hack due to vivid request on #pidgin by multiple devs. This avoids the change in PurplePluginProtocolInfo, but requires complicated change tracking in every prpl. The others prpl should add this change tracking, too (since otherwise the status gets changed even though nothing they care about changed), but that's not up to me.
author | Andreas Monitzer <pidgin@monitzer.com> |
---|---|
date | Mon, 18 Jun 2007 12:37:29 +0000 |
parents | f00f2e283ffb |
children | 8410511f4dbb |
line wrap: on
line source
#ifndef GNT_MENU_ITEM_CHECK_H #define GNT_MENU_ITEM_CHECK_H #include "gnt.h" #include "gntcolors.h" #include "gntkeys.h" #include "gntmenuitem.h" #define GNT_TYPE_MENU_ITEM_CHECK (gnt_menuitem_check_get_gtype()) #define GNT_MENU_ITEM_CHECK(obj) (G_TYPE_CHECK_INSTANCE_CAST((obj), GNT_TYPE_MENU_ITEM_CHECK, GntMenuItemCheck)) #define GNT_MENU_ITEM_CHECK_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST((klass), GNT_TYPE_MENU_ITEM_CHECK, GntMenuItemCheckClass)) #define GNT_IS_MENU_ITEM_CHECK(obj) (G_TYPE_CHECK_INSTANCE_TYPE((obj), GNT_TYPE_MENU_ITEM_CHECK)) #define GNT_IS_MENU_ITEM_CHECK_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE((klass), GNT_TYPE_MENU_ITEM_CHECK)) #define GNT_MENU_ITEM_CHECK_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS((obj), GNT_TYPE_MENU_ITEM_CHECK, GntMenuItemCheckClass)) #define GNT_MENU_ITEM_CHECK_FLAGS(obj) (GNT_MENU_ITEM_CHECK(obj)->priv.flags) #define GNT_MENU_ITEM_CHECK_SET_FLAGS(obj, flags) (GNT_MENU_ITEM_CHECK_FLAGS(obj) |= flags) #define GNT_MENU_ITEM_CHECK_UNSET_FLAGS(obj, flags) (GNT_MENU_ITEM_CHECK_FLAGS(obj) &= ~(flags)) typedef struct _GntMenuItemCheck GntMenuItemCheck; typedef struct _GntMenuItemCheckPriv GntMenuItemCheckPriv; typedef struct _GntMenuItemCheckClass GntMenuItemCheckClass; struct _GntMenuItemCheck { GntMenuItem parent; gboolean checked; }; struct _GntMenuItemCheckClass { GntMenuItemClass parent; void (*gnt_reserved1)(void); void (*gnt_reserved2)(void); void (*gnt_reserved3)(void); void (*gnt_reserved4)(void); }; G_BEGIN_DECLS GType gnt_menuitem_check_get_gtype(void); GntMenuItem *gnt_menuitem_check_new(const char *text); gboolean gnt_menuitem_check_get_checked(GntMenuItemCheck *item); void gnt_menuitem_check_set_checked(GntMenuItemCheck *item, gboolean set); G_END_DECLS #endif /* GNT_MENU_ITEM_CHECK_H */