aboutsummaryrefslogtreecommitdiff
path: root/libdbusmenu-glib/menuitem.h
diff options
context:
space:
mode:
authorChris Coulson <chrisccoulson@ubuntu.com>2011-02-24 15:43:25 +0000
committerChris Coulson <chrisccoulson@ubuntu.com>2011-02-24 15:43:25 +0000
commit37fb090b4f9fb1e1a894c5c57e7c3d28eb71f92d (patch)
tree6d1140f1c4f04c82c8d9951151c4eb5dcffce654 /libdbusmenu-glib/menuitem.h
parent5653c7e5642ae25fb54445f749ecfb0c947ead0c (diff)
downloadlibdbusmenu-37fb090b4f9fb1e1a894c5c57e7c3d28eb71f92d.tar.gz
libdbusmenu-37fb090b4f9fb1e1a894c5c57e7c3d28eb71f92d.tar.bz2
libdbusmenu-37fb090b4f9fb1e1a894c5c57e7c3d28eb71f92d.zip
Hold a weak pointer to each DbusmenuMenuitems parent. This avoids
using g_object_{get/set}_data for storing a nodes parent in the parser code, and the associated problems with that (ie, a child out-living its parent, leading to invalid reads
Diffstat (limited to 'libdbusmenu-glib/menuitem.h')
-rw-r--r--libdbusmenu-glib/menuitem.h4
1 files changed, 4 insertions, 0 deletions
diff --git a/libdbusmenu-glib/menuitem.h b/libdbusmenu-glib/menuitem.h
index 4a1c156..5f56803 100644
--- a/libdbusmenu-glib/menuitem.h
+++ b/libdbusmenu-glib/menuitem.h
@@ -379,6 +379,10 @@ gboolean dbusmenu_menuitem_child_reorder (DbusmenuMenuitem * mi, DbusmenuMenuite
DbusmenuMenuitem * dbusmenu_menuitem_child_find (DbusmenuMenuitem * mi, gint id);
DbusmenuMenuitem * dbusmenu_menuitem_find_id (DbusmenuMenuitem * mi, gint id);
+gboolean dbusmenu_menuitem_set_parent (DbusmenuMenuitem * mi, DbusmenuMenuitem * parent);
+gboolean dbusmenu_menuitem_unparent (DbusmenuMenuitem *mi);
+DbusmenuMenuitem * dbusmenu_menuitem_get_parent (DbusmenuMenuitem * mi);
+
gboolean dbusmenu_menuitem_property_set (DbusmenuMenuitem * mi, const gchar * property, const gchar * value);
gboolean dbusmenu_menuitem_property_set_variant (DbusmenuMenuitem * mi, const gchar * property, GVariant * value);
gboolean dbusmenu_menuitem_property_set_bool (DbusmenuMenuitem * mi, const gchar * property, const gboolean value);