aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--libdbusmenu-glib/menuitem.c17
-rw-r--r--libdbusmenu-glib/menuitem.h5
2 files changed, 21 insertions, 1 deletions
diff --git a/libdbusmenu-glib/menuitem.c b/libdbusmenu-glib/menuitem.c
index aba1f64..41c48e2 100644
--- a/libdbusmenu-glib/menuitem.c
+++ b/libdbusmenu-glib/menuitem.c
@@ -61,6 +61,7 @@ enum {
CHILD_ADDED,
CHILD_REMOVED,
CHILD_MOVED,
+ REALIZED,
LAST_SIGNAL
};
@@ -178,6 +179,22 @@ dbusmenu_menuitem_class_init (DbusmenuMenuitemClass *klass)
NULL, NULL,
_dbusmenu_menuitem_marshal_VOID__OBJECT_UINT_UINT,
G_TYPE_NONE, 3, G_TYPE_OBJECT, G_TYPE_UINT, G_TYPE_UINT);
+ /**
+ DbusmenuMenuitem::realized:
+ @arg0: The #DbusmenuMenuitem object.
+
+ Emitted when the initial request for properties
+ is complete on the item. If there is a type
+ handler configured for the "type" parameter
+ that will be executed before this is signaled.
+ */
+ signals[REALIZED] = g_signal_new(DBUSMENU_MENUITEM_SIGNAL_REALIZED,
+ G_TYPE_FROM_CLASS(klass),
+ G_SIGNAL_RUN_LAST,
+ G_STRUCT_OFFSET(DbusmenuMenuitemClass, realized),
+ NULL, NULL,
+ _dbusmenu_menuitem_marshal_VOID__VOID,
+ G_TYPE_NONE, 0, G_TYPE_NONE);
g_object_class_install_property (object_class, PROP_ID,
g_param_spec_uint("id", "ID for the menu item",
diff --git a/libdbusmenu-glib/menuitem.h b/libdbusmenu-glib/menuitem.h
index 29865c7..7704b4a 100644
--- a/libdbusmenu-glib/menuitem.h
+++ b/libdbusmenu-glib/menuitem.h
@@ -47,6 +47,7 @@ G_BEGIN_DECLS
#define DBUSMENU_MENUITEM_SIGNAL_CHILD_ADDED "child-added"
#define DBUSMENU_MENUITEM_SIGNAL_CHILD_REMOVED "child-removed"
#define DBUSMENU_MENUITEM_SIGNAL_CHILD_MOVED "child-moved"
+#define DBUSMENU_MENUITEM_SIGNAL_REALIZED "realized"
/**
DbusmenuMenuitem:
@@ -71,6 +72,7 @@ struct _DbusmenuMenuitem
@child_added: Slot for #DbusmenuMenuitem::child-added.
@child_removed: Slot for #DbusmenuMenuitem::child-removed.
@child_moved: Slot for #DbusmenuMenuitem::child-moved.
+ @realized: Slot for #DbusmenuMenuitem::realized.
@buildxml: Virtual function that appends the strings required
to represent this menu item in the menu XML file.
@reserved1: Reserved for future use.
@@ -89,6 +91,7 @@ struct _DbusmenuMenuitemClass
void (*child_added) (DbusmenuMenuitem * child, guint position);
void (*child_removed) (DbusmenuMenuitem * child);
void (*child_moved) (DbusmenuMenuitem * child, guint newpos, guint oldpos);
+ void (*realized) (void);
/* Virtual functions */
void (*buildxml) (GPtrArray * stringarray);
@@ -96,7 +99,7 @@ struct _DbusmenuMenuitemClass
void (*reserved1) (void);
void (*reserved2) (void);
void (*reserved3) (void);
- void (*reserved4) (void);
+ /* void (*reserved4) (void); -- realized, realloc when bumping lib version */
};
GType dbusmenu_menuitem_get_type (void);