diff options
Diffstat (limited to 'libdbusmenu-gtk')
-rw-r--r-- | libdbusmenu-gtk/Makefile.am | 9 | ||||
-rw-r--r-- | libdbusmenu-gtk/Makefile.in | 10 | ||||
-rw-r--r-- | libdbusmenu-gtk/client.c | 23 | ||||
-rw-r--r-- | libdbusmenu-gtk/client.h | 1 |
4 files changed, 37 insertions, 6 deletions
diff --git a/libdbusmenu-gtk/Makefile.am b/libdbusmenu-gtk/Makefile.am index 9cc557c..2be63b7 100644 --- a/libdbusmenu-gtk/Makefile.am +++ b/libdbusmenu-gtk/Makefile.am @@ -45,7 +45,10 @@ pkgconfigdir = $(libdir)/pkgconfig -include $(INTROSPECTION_MAKEFILE) INTROSPECTION_GIRS = -INTROSPECTION_SCANNER_ARGS = --add-include-path=$(srcdir) --add-include-path=$(top_builddir)/libdbusmenu-glib +INTROSPECTION_SCANNER_ARGS = \ + --add-include-path=$(srcdir) \ + --add-include-path=$(top_builddir)/libdbusmenu-glib \ + $(addprefix --c-include=libdbusmenu-gtk/, $(introspection_sources)) INTROSPECTION_COMPILER_ARGS = --includedir=$(builddir) --includedir=$(top_builddir)/libdbusmenu-glib if HAVE_INTROSPECTION @@ -56,7 +59,7 @@ DbusmenuGtk-0.2.gir: libdbusmenu-gtk.la DbusmenuGtk_0_2_gir_INCLUDES = \ GObject-2.0 \ Gtk-2.0 \ - DbusmenuGlib-0.2 + Dbusmenu-Glib-0.2 DbusmenuGtk_0_2_gir_CFLAGS = $(DBUSMENUGTK_CFLAGS) -I$(top_srcdir) DbusmenuGtk_0_2_gir_LIBS = libdbusmenu-gtk.la DbusmenuGtk_0_2_gir_FILES = $(addprefix $(srcdir)/, $(introspection_sources)) @@ -87,7 +90,7 @@ DbusmenuGtk-0.2.vapi: DbusmenuGtk-0.2.tmp.gir Makefile.am --pkg gdk-pixbuf-2.0 \ --pkg gtk+-2.0 \ --pkg atk \ - --pkg DbusmenuGlib-0.2 \ + --pkg Dbusmenu-Glib-0.2 \ --vapidir=$(top_builddir)/libdbusmenu-glib \ $< diff --git a/libdbusmenu-gtk/Makefile.in b/libdbusmenu-gtk/Makefile.in index 771ba0a..f64ef95 100644 --- a/libdbusmenu-gtk/Makefile.in +++ b/libdbusmenu-gtk/Makefile.in @@ -316,13 +316,17 @@ libdbusmenu_gtk_la_LIBADD = \ pkgconfig_DATA = dbusmenu-gtk.pc pkgconfigdir = $(libdir)/pkgconfig INTROSPECTION_GIRS = $(am__append_1) -INTROSPECTION_SCANNER_ARGS = --add-include-path=$(srcdir) --add-include-path=$(top_builddir)/libdbusmenu-glib +INTROSPECTION_SCANNER_ARGS = \ + --add-include-path=$(srcdir) \ + --add-include-path=$(top_builddir)/libdbusmenu-glib \ + $(addprefix --c-include=libdbusmenu-gtk/, $(introspection_sources)) + INTROSPECTION_COMPILER_ARGS = --includedir=$(builddir) --includedir=$(top_builddir)/libdbusmenu-glib @HAVE_INTROSPECTION_TRUE@introspection_sources = $(libdbusmenu_gtkinclude_HEADERS) @HAVE_INTROSPECTION_TRUE@DbusmenuGtk_0_2_gir_INCLUDES = \ @HAVE_INTROSPECTION_TRUE@ GObject-2.0 \ @HAVE_INTROSPECTION_TRUE@ Gtk-2.0 \ -@HAVE_INTROSPECTION_TRUE@ DbusmenuGlib-0.2 +@HAVE_INTROSPECTION_TRUE@ Dbusmenu-Glib-0.2 @HAVE_INTROSPECTION_TRUE@DbusmenuGtk_0_2_gir_CFLAGS = $(DBUSMENUGTK_CFLAGS) -I$(top_srcdir) @HAVE_INTROSPECTION_TRUE@DbusmenuGtk_0_2_gir_LIBS = libdbusmenu-gtk.la @@ -805,7 +809,7 @@ uninstall-am: uninstall-girDATA uninstall-libLTLIBRARIES \ @HAVE_INTROSPECTION_TRUE@ --pkg gdk-pixbuf-2.0 \ @HAVE_INTROSPECTION_TRUE@ --pkg gtk+-2.0 \ @HAVE_INTROSPECTION_TRUE@ --pkg atk \ -@HAVE_INTROSPECTION_TRUE@ --pkg DbusmenuGlib-0.2 \ +@HAVE_INTROSPECTION_TRUE@ --pkg Dbusmenu-Glib-0.2 \ @HAVE_INTROSPECTION_TRUE@ --vapidir=$(top_builddir)/libdbusmenu-glib \ @HAVE_INTROSPECTION_TRUE@ $< diff --git a/libdbusmenu-gtk/client.c b/libdbusmenu-gtk/client.c index b13af6a..3bd0af6 100644 --- a/libdbusmenu-gtk/client.c +++ b/libdbusmenu-gtk/client.c @@ -423,6 +423,29 @@ dbusmenu_gtkclient_menuitem_get (DbusmenuGtkClient * client, DbusmenuMenuitem * return GTK_MENU_ITEM(data); } +/** + dbusmenu_gtkclient_menuitem_get_submenu: + @client: A #DbusmenuGtkClient with the item in it. + @item: #DbusmenuMenuitem to get associated #GtkMenu on. + + This grabs the submenu associated with the menuitem. + + Return value: The #GtkMenu if there is one. +*/ +GtkMenu * +dbusmenu_gtkclient_menuitem_get_submenu (DbusmenuGtkClient * client, DbusmenuMenuitem * item) +{ + g_return_val_if_fail(DBUSMENU_IS_GTKCLIENT(client), NULL); + g_return_val_if_fail(DBUSMENU_IS_MENUITEM(item), NULL); + + gpointer data = g_object_get_data(G_OBJECT(item), data_menu); + if (data == NULL) { + return NULL; + } + + return GTK_MENU(data); +} + /* The base type handler that builds a plain ol' GtkMenuItem to represent, well, the GtkMenuItem */ static gboolean diff --git a/libdbusmenu-gtk/client.h b/libdbusmenu-gtk/client.h index 4cfbdcf..7672bf7 100644 --- a/libdbusmenu-gtk/client.h +++ b/libdbusmenu-gtk/client.h @@ -77,6 +77,7 @@ struct _DbusmenuGtkClient { GType dbusmenu_gtkclient_get_type (void); DbusmenuGtkClient * dbusmenu_gtkclient_new (gchar * dbus_name, gchar * dbus_object); GtkMenuItem * dbusmenu_gtkclient_menuitem_get (DbusmenuGtkClient * client, DbusmenuMenuitem * item); +GtkMenu * dbusmenu_gtkclient_menuitem_get_submenu (DbusmenuGtkClient * client, DbusmenuMenuitem * item); void dbusmenu_gtkclient_newitem_base (DbusmenuGtkClient * client, DbusmenuMenuitem * item, GtkMenuItem * gmi, DbusmenuMenuitem * parent); |