diff options
author | Ted Gould <ted@canonical.com> | 2009-04-16 12:53:30 -0500 |
---|---|---|
committer | Ted Gould <ted@canonical.com> | 2009-04-16 12:53:30 -0500 |
commit | 50f2ad0a5e649d43acdcdf06c0453f7a5733e953 (patch) | |
tree | 9a836575e2db244c1da0bd6bbb944b25a0df7a97 /libdbusmenu-glib | |
parent | 67dfe0a32531fccc566dba9079673009d6c7f5c1 (diff) | |
download | libdbusmenu-50f2ad0a5e649d43acdcdf06c0453f7a5733e953.tar.gz libdbusmenu-50f2ad0a5e649d43acdcdf06c0453f7a5733e953.tar.bz2 libdbusmenu-50f2ad0a5e649d43acdcdf06c0453f7a5733e953.zip |
Adding in all the public functions as real functions and implementing a couple of children related ones.
Diffstat (limited to 'libdbusmenu-glib')
-rw-r--r-- | libdbusmenu-glib/menuitem.c | 101 |
1 files changed, 94 insertions, 7 deletions
diff --git a/libdbusmenu-glib/menuitem.c b/libdbusmenu-glib/menuitem.c index c57acaa..5d22b32 100644 --- a/libdbusmenu-glib/menuitem.c +++ b/libdbusmenu-glib/menuitem.c @@ -3,46 +3,133 @@ #endif #include "menuitem.h" +/* Private */ typedef struct _DbusmenuMenuitemPrivate DbusmenuMenuitemPrivate; - struct _DbusmenuMenuitemPrivate { + GList * children; }; #define DBUSMENU_MENUITEM_GET_PRIVATE(o) \ (G_TYPE_INSTANCE_GET_PRIVATE ((o), DBUSMENU_TYPE_MENUITEM, DbusmenuMenuitemPrivate)) +/* Prototypes */ static void dbusmenu_menuitem_class_init (DbusmenuMenuitemClass *klass); static void dbusmenu_menuitem_init (DbusmenuMenuitem *self); static void dbusmenu_menuitem_dispose (GObject *object); static void dbusmenu_menuitem_finalize (GObject *object); +/* GObject stuff */ G_DEFINE_TYPE (DbusmenuMenuitem, dbusmenu_menuitem, G_TYPE_OBJECT); static void dbusmenu_menuitem_class_init (DbusmenuMenuitemClass *klass) { -GObjectClass *object_class = G_OBJECT_CLASS (klass); + GObjectClass *object_class = G_OBJECT_CLASS (klass); -g_type_class_add_private (klass, sizeof (DbusmenuMenuitemPrivate)); + g_type_class_add_private (klass, sizeof (DbusmenuMenuitemPrivate)); -object_class->dispose = dbusmenu_menuitem_dispose; -object_class->finalize = dbusmenu_menuitem_finalize; + object_class->dispose = dbusmenu_menuitem_dispose; + object_class->finalize = dbusmenu_menuitem_finalize; } static void dbusmenu_menuitem_init (DbusmenuMenuitem *self) { + return; } static void dbusmenu_menuitem_dispose (GObject *object) { -G_OBJECT_CLASS (dbusmenu_menuitem_parent_class)->dispose (object); + + G_OBJECT_CLASS (dbusmenu_menuitem_parent_class)->dispose (object); + return; } static void dbusmenu_menuitem_finalize (GObject *object) { -G_OBJECT_CLASS (dbusmenu_menuitem_parent_class)->finalize (object); + + G_OBJECT_CLASS (dbusmenu_menuitem_parent_class)->finalize (object); + return; +} + +/* Public interface */ +GList * +dbusmenu_menuitem_get_children (DbusmenuMenuitem * mi) +{ + g_return_val_if_fail(DBUSMENU_IS_MENUITEM(mi), NULL); + + DbusmenuMenuitemPrivate * priv = DBUSMENU_MENUITEM_GET_PRIVATE(mi); + return priv->children; +} + +guint +dbusmenu_menuitem_get_position (DbusmenuMenuitem * mi, DbusmenuMenuitem * parent) +{ + /* TODO: I'm not too happy returning zeros here. But that's all I've got */ + g_return_val_if_fail(DBUSMENU_IS_MENUITEM(mi), 0); + g_return_val_if_fail(DBUSMENU_IS_MENUITEM(parent), 0); + + GList * childs = dbusmenu_menuitem_get_children(parent); + guint count = 0; + for ( ; childs != NULL; childs = childs->next) { + if (childs->data == mi) break; + } + + if (childs == NULL) return 0; + + return count; +} + +gboolean +dbusmenu_menuitem_child_append (DbusmenuMenuitem * mi, DbusmenuMenuitem * child) +{ + + return FALSE; } + +gboolean +dbusmenu_menuitem_child_delete (DbusmenuMenuitem * mi, DbusmenuMenuitem * child) +{ + + return FALSE; +} + +gboolean +dbusmenu_menuitem_child_add_position (DbusmenuMenuitem * mi, DbusmenuMenuitem * child, guint position) +{ + + + return FALSE; +} + +gboolean +dbusmenu_menuitem_property_set (DbusmenuMenuitem * mi, const gchar * property, const gchar * value) +{ + + return FALSE; +} + +const gchar * +dbusmenu_menuitem_property_get (DbusmenuMenuitem * mi, const gchar * property) +{ + + return NULL; +} + +gboolean +dbusmenu_menuitem_property_exist (DbusmenuMenuitem * mi, const gchar * property) +{ + + return FALSE; +} + +void +dbusmenu_menuitem_buildxml (DbusmenuMenuitem * mi, GPtrArray ** array) +{ + + return; +} + |