aboutsummaryrefslogtreecommitdiff
path: root/libdbusmenu-gtk/client.c
diff options
context:
space:
mode:
authorTed Gould <ted@canonical.com>2009-08-25 12:09:22 -0500
committerTed Gould <ted@canonical.com>2009-08-25 12:09:22 -0500
commitc25508f253327fa64fc3dd165480b021273834f4 (patch)
treed0b18948e41d0ac6555a417128f0886b46422387 /libdbusmenu-gtk/client.c
parent3136e45a9b1aa56ba8d136df34310ab0891e1a84 (diff)
downloadlibdbusmenu-c25508f253327fa64fc3dd165480b021273834f4.tar.gz
libdbusmenu-c25508f253327fa64fc3dd165480b021273834f4.tar.bz2
libdbusmenu-c25508f253327fa64fc3dd165480b021273834f4.zip
Okay, building in some type handlers now.
Diffstat (limited to 'libdbusmenu-gtk/client.c')
-rw-r--r--libdbusmenu-gtk/client.c30
1 files changed, 30 insertions, 0 deletions
diff --git a/libdbusmenu-gtk/client.c b/libdbusmenu-gtk/client.c
index a236123..b2d19b4 100644
--- a/libdbusmenu-gtk/client.c
+++ b/libdbusmenu-gtk/client.c
@@ -44,6 +44,10 @@ static void new_child (DbusmenuMenuitem * mi, DbusmenuMenuitem * child, guint po
static void delete_child (DbusmenuMenuitem * mi, DbusmenuMenuitem * child, DbusmenuGtkClient * gtkclient);
static void move_child (DbusmenuMenuitem * mi, DbusmenuMenuitem * child, guint new, guint old, DbusmenuGtkClient * gtkclient);
+static gboolean new_item_normal (DbusmenuMenuitem * newitem, DbusmenuMenuitem * parent);
+static gboolean new_item_seperator (DbusmenuMenuitem * newitem, DbusmenuMenuitem * parent);
+static gboolean new_item_image (DbusmenuMenuitem * newitem, DbusmenuMenuitem * parent);
+
/* GObject Stuff */
G_DEFINE_TYPE (DbusmenuGtkClient, dbusmenu_gtkclient, DBUSMENU_TYPE_CLIENT);
@@ -62,6 +66,11 @@ static void
dbusmenu_gtkclient_init (DbusmenuGtkClient *self)
{
g_signal_connect(G_OBJECT(self), DBUSMENU_CLIENT_SIGNAL_NEW_MENUITEM, G_CALLBACK(new_menuitem), NULL);
+
+ dbusmenu_client_add_type_handler(DBUSMENU_CLIENT(self), DBUSMENU_CLIENT_TYPES_DEFAULT, new_item_normal);
+ dbusmenu_client_add_type_handler(DBUSMENU_CLIENT(self), DBUSMENU_CLIENT_TYPES_SEPERATOR, new_item_seperator);
+ dbusmenu_client_add_type_handler(DBUSMENU_CLIENT(self), DBUSMENU_CLIENT_TYPES_IMAGE, new_item_image);
+
return;
}
@@ -258,3 +267,24 @@ dbusmenu_gtkclient_menuitem_get (DbusmenuGtkClient * client, DbusmenuMenuitem *
return mi;
}
+static gboolean
+new_item_normal (DbusmenuMenuitem * newitem, DbusmenuMenuitem * parent)
+{
+
+
+ return TRUE;
+}
+
+static gboolean
+new_item_seperator (DbusmenuMenuitem * newitem, DbusmenuMenuitem * parent)
+{
+
+ return TRUE;
+}
+
+static gboolean
+new_item_image (DbusmenuMenuitem * newitem, DbusmenuMenuitem * parent)
+{
+
+ return TRUE;
+}