aboutsummaryrefslogtreecommitdiff
path: root/libdbusmenu-glib/menuitem.h
diff options
context:
space:
mode:
Diffstat (limited to 'libdbusmenu-glib/menuitem.h')
-rw-r--r--libdbusmenu-glib/menuitem.h38
1 files changed, 22 insertions, 16 deletions
diff --git a/libdbusmenu-glib/menuitem.h b/libdbusmenu-glib/menuitem.h
index 5b71ea6..122c9fb 100644
--- a/libdbusmenu-glib/menuitem.h
+++ b/libdbusmenu-glib/menuitem.h
@@ -44,11 +44,31 @@ G_BEGIN_DECLS
#define DBUSMENU_MENUITEM_SIGNAL_PROPERTY_CHANGED "property-changed"
#define DBUSMENU_MENUITEM_SIGNAL_ITEM_ACTIVATED "item-activated"
+#define DBUSMENU_MENUITEM_SIGNAL_CHILD_ADDED "child-added"
+#define DBUSMENU_MENUITEM_SIGNAL_CHILD_REMOVED "child-removed"
+
+/**
+ DbusmenuMenuitem:
+
+ This is the #GObject based object that represents a menu
+ item. It gets created the same on both the client and
+ the server side and libdbusmenu-glib does the work of making
+ this object model appear on both sides of DBus. Simple
+ really, though through updates and people coming on and off
+ the bus it can lead to lots of fun complex scenarios.
+*/
+typedef struct _DbusmenuMenuitem DbusmenuMenuitem;
+struct _DbusmenuMenuitem
+{
+ GObject parent;
+};
/**
DbusmenuMenuitemClass:
@property_changed: Slot for #DbusmenuMenuitem::property-changed.
@item_activated: Slot for #DbusmenuMenuitem::item-activated.
+ @child_added: Slot for #DbusmenuMenuitem::child-added.
+ @child_removed: Slot for #DbusmenuMenuitem::child-removed.
@buildxml: Virtual function that appends the strings required
to represent this menu item in the menu XML file.
@reserved1: Reserved for future use.
@@ -64,6 +84,8 @@ struct _DbusmenuMenuitemClass
/* Signals */
void (*property_changed) (gchar * property, gchar * value);
void (*item_activated) (void);
+ void (*child_added) (DbusmenuMenuitem * child);
+ void (*child_removed) (DbusmenuMenuitem * child);
/* Virtual functions */
void (*buildxml) (GPtrArray * stringarray);
@@ -74,22 +96,6 @@ struct _DbusmenuMenuitemClass
void (*reserved4) (void);
};
-/**
- DbusmenuMenuitem:
-
- This is the #GObject based object that represents a menu
- item. It gets created the same on both the client and
- the server side and libdbusmenu-glib does the work of making
- this object model appear on both sides of DBus. Simple
- really, though through updates and people coming on and off
- the bus it can lead to lots of fun complex scenarios.
-*/
-typedef struct _DbusmenuMenuitem DbusmenuMenuitem;
-struct _DbusmenuMenuitem
-{
- GObject parent;
-};
-
GType dbusmenu_menuitem_get_type (void);
DbusmenuMenuitem * dbusmenu_menuitem_new (void);