summaryrefslogtreecommitdiff
path: root/gtk/gtkmenutrackeritem.c
diff options
context:
space:
mode:
authorRyan Lortie <desrt@desrt.ca>2014-04-28 14:01:35 +0200
committerMatthias Clasen <mclasen@redhat.com>2014-04-28 14:14:41 -0400
commitf6ee00769a9190ed95857dab9fc78f935b6645db (patch)
treeceba7c549db663cee30a9910ce1304559f8f89dd /gtk/gtkmenutrackeritem.c
parent48db84182211324cc70703da609d15e3a568f5f6 (diff)
downloadgtk+-f6ee00769a9190ed95857dab9fc78f935b6645db.tar.gz
GtkMenuTracker: don't specialise "submenu" link
We have some API in GtkMenuTracker and GtkMenuTrackerItem that is specifically designed to deal with submenus. Generalise these APIs to take a 'link_name' parameter that we always give as G_MENU_SUBMENU for now. In the future, this will allow creating trackers for other types of links, such as sections.
Diffstat (limited to 'gtk/gtkmenutrackeritem.c')
-rw-r--r--gtk/gtkmenutrackeritem.c18
1 files changed, 7 insertions, 11 deletions
diff --git a/gtk/gtkmenutrackeritem.c b/gtk/gtkmenutrackeritem.c
index 549e979c61..71ed0a8e1b 100644
--- a/gtk/gtkmenutrackeritem.c
+++ b/gtk/gtkmenutrackeritem.c
@@ -106,7 +106,6 @@ struct _GtkMenuTrackerItem
enum {
PROP_0,
PROP_IS_SEPARATOR,
- PROP_HAS_SUBMENU,
PROP_LABEL,
PROP_ICON,
PROP_SENSITIVE,
@@ -160,9 +159,6 @@ gtk_menu_tracker_item_get_property (GObject *object,
case PROP_IS_SEPARATOR:
g_value_set_boolean (value, gtk_menu_tracker_item_get_is_separator (self));
break;
- case PROP_HAS_SUBMENU:
- g_value_set_boolean (value, gtk_menu_tracker_item_get_has_submenu (self));
- break;
case PROP_LABEL:
g_value_set_string (value, gtk_menu_tracker_item_get_label (self));
break;
@@ -221,8 +217,6 @@ gtk_menu_tracker_item_class_init (GtkMenuTrackerItemClass *class)
gtk_menu_tracker_item_pspecs[PROP_IS_SEPARATOR] =
g_param_spec_boolean ("is-separator", "", "", FALSE, G_PARAM_STATIC_STRINGS | G_PARAM_READABLE);
- gtk_menu_tracker_item_pspecs[PROP_HAS_SUBMENU] =
- g_param_spec_boolean ("has-submenu", "", "", FALSE, G_PARAM_STATIC_STRINGS | G_PARAM_READABLE);
gtk_menu_tracker_item_pspecs[PROP_LABEL] =
g_param_spec_string ("label", "", "", NULL, G_PARAM_STATIC_STRINGS | G_PARAM_READABLE);
gtk_menu_tracker_item_pspecs[PROP_ICON] =
@@ -559,11 +553,12 @@ gtk_menu_tracker_item_get_is_separator (GtkMenuTrackerItem *self)
* for #GtkMenuTrackerItem.
*/
gboolean
-gtk_menu_tracker_item_get_has_submenu (GtkMenuTrackerItem *self)
+gtk_menu_tracker_item_get_has_link (GtkMenuTrackerItem *self,
+ const gchar *link_name)
{
GMenuModel *link;
- link = g_menu_item_get_link (self->item, G_MENU_LINK_SUBMENU);
+ link = g_menu_item_get_link (self->item, link_name);
if (link)
{
@@ -652,13 +647,14 @@ gtk_menu_tracker_item_get_special (GtkMenuTrackerItem *self)
}
GMenuModel *
-_gtk_menu_tracker_item_get_submenu (GtkMenuTrackerItem *self)
+_gtk_menu_tracker_item_get_link (GtkMenuTrackerItem *self,
+ const gchar *link_name)
{
- return g_menu_item_get_link (self->item, "submenu");
+ return g_menu_item_get_link (self->item, link_name);
}
gchar *
-_gtk_menu_tracker_item_get_submenu_namespace (GtkMenuTrackerItem *self)
+_gtk_menu_tracker_item_get_link_namespace (GtkMenuTrackerItem *self)
{
const gchar *namespace;