aboutsummaryrefslogtreecommitdiff
path: root/libdbusmenu-glib/menuitem.c
diff options
context:
space:
mode:
authorTed Gould <ted@gould.cx>2010-02-05 10:57:31 -0800
committerTed Gould <ted@gould.cx>2010-02-05 10:57:31 -0800
commitf3a13c8b0be55927b8b91ff37ba922ba323b44b7 (patch)
tree30b810d1530b567c9b597190b7746fcca201c715 /libdbusmenu-glib/menuitem.c
parentfc35f16de9710c7aa59d3acf88eaa7c215838e36 (diff)
parent873763b18e85fe2d53f847e00d5207e4926bb619 (diff)
downloadlibdbusmenu-f3a13c8b0be55927b8b91ff37ba922ba323b44b7.tar.gz
libdbusmenu-f3a13c8b0be55927b8b91ff37ba922ba323b44b7.tar.bz2
libdbusmenu-f3a13c8b0be55927b8b91ff37ba922ba323b44b7.zip
Sync to trunk
Diffstat (limited to 'libdbusmenu-glib/menuitem.c')
-rw-r--r--libdbusmenu-glib/menuitem.c26
1 files changed, 25 insertions, 1 deletions
diff --git a/libdbusmenu-glib/menuitem.c b/libdbusmenu-glib/menuitem.c
index cacc0a8..a2d2682 100644
--- a/libdbusmenu-glib/menuitem.c
+++ b/libdbusmenu-glib/menuitem.c
@@ -343,7 +343,11 @@ get_property (GObject * obj, guint id, GValue * value, GParamSpec * pspec)
if (priv->id == -1) {
priv->id = menuitem_next_id++;
}
- g_value_set_int(value, priv->id);
+ if (dbusmenu_menuitem_get_root(DBUSMENU_MENUITEM(obj))) {
+ g_value_set_int(value, 0);
+ } else {
+ g_value_set_int(value, priv->id);
+ }
break;
default:
G_OBJECT_WARN_INVALID_PROPERTY_ID(obj, id, pspec);
@@ -984,6 +988,26 @@ dbusmenu_menuitem_property_exist (DbusmenuMenuitem * mi, const gchar * property)
}
/**
+ dbusmenu_menuitem_property_remove:
+ @mi: The #DbusmenuMenuitem to remove the property on.
+ @property: The property to look for.
+
+ Removes a property from the menuitem.
+*/
+void
+dbusmenu_menuitem_property_remove (DbusmenuMenuitem * mi, const gchar * property)
+{
+ g_return_if_fail(DBUSMENU_IS_MENUITEM(mi));
+ g_return_if_fail(property != NULL);
+
+ DbusmenuMenuitemPrivate * priv = DBUSMENU_MENUITEM_GET_PRIVATE(mi);
+
+ g_hash_table_remove(priv->properties, property);
+
+ return;
+}
+
+/**
dbusmenu_menuitem_properties_list:
@mi: #DbusmenuMenuitem to list the properties on