diff options
author | Javier Jardón <jjardon@gnome.org> | 2010-07-15 16:49:45 +0200 |
---|---|---|
committer | Javier Jardón <jjardon@gnome.org> | 2010-07-19 16:08:07 +0200 |
commit | 9ee3d73a19f71492b6cba77b1e9fa42e3461fdd3 (patch) | |
tree | 6f9e1b81e9364fbe4bcf8da2c9123e1f7f56c5d0 /gtk | |
parent | 1af1362a369bb79deaeec8d5bf580c97df6c0c87 (diff) | |
download | gtk+-9ee3d73a19f71492b6cba77b1e9fa42e3461fdd3.tar.gz |
Add _gtk_check_menu_item_set_active() internal function
It's needed by gtkradiomenuitem
Fixes https://bugzilla.gnome.org/show_bug.cgi?id=624432
Diffstat (limited to 'gtk')
-rw-r--r-- | gtk/gtkcheckmenuitem.c | 20 | ||||
-rw-r--r-- | gtk/gtkcheckmenuitem.h | 5 | ||||
-rw-r--r-- | gtk/gtkradiomenuitem.c | 6 |
3 files changed, 28 insertions, 3 deletions
diff --git a/gtk/gtkcheckmenuitem.c b/gtk/gtkcheckmenuitem.c index 32bebf7e39..55aa8f4873 100644 --- a/gtk/gtkcheckmenuitem.c +++ b/gtk/gtkcheckmenuitem.c @@ -586,3 +586,23 @@ gtk_check_menu_item_set_property (GObject *object, break; } } + + +/* Private */ + +/* + * _gtk_check_menu_item_set_active: + * @check_menu_item: a #GtkCheckMenuItem + * @is_active: whether the action is active or not + * + * Sets the #GtkCheckMenuItem:active property directly. This function does + * not emit signals or notifications: it is left to the caller to do so. + */ +void +_gtk_check_menu_item_set_active (GtkCheckMenuItem *check_menu_item, + gboolean is_active) +{ + GtkCheckMenuItemPriv *priv = check_menu_item->priv; + + priv->active = is_active; +} diff --git a/gtk/gtkcheckmenuitem.h b/gtk/gtkcheckmenuitem.h index 3b536e0d98..e76ba5e081 100644 --- a/gtk/gtkcheckmenuitem.h +++ b/gtk/gtkcheckmenuitem.h @@ -90,6 +90,11 @@ void gtk_check_menu_item_set_draw_as_radio (GtkCheckMenuItem *check_menu_i gboolean gtk_check_menu_item_get_draw_as_radio (GtkCheckMenuItem *check_menu_item); +/* private */ +void _gtk_check_menu_item_set_active (GtkCheckMenuItem *check_menu_item, + gboolean is_active); + + G_END_DECLS #endif /* __GTK_CHECK_MENU_ITEM_H__ */ diff --git a/gtk/gtkradiomenuitem.c b/gtk/gtkradiomenuitem.c index 5d2745e42a..abf7a4c028 100644 --- a/gtk/gtkradiomenuitem.c +++ b/gtk/gtkradiomenuitem.c @@ -164,7 +164,7 @@ gtk_radio_menu_item_set_group (GtkRadioMenuItem *radio_menu_item, } else { - gtk_check_menu_item_set_active (GTK_CHECK_MENU_ITEM (radio_menu_item), TRUE); + _gtk_check_menu_item_set_active (GTK_CHECK_MENU_ITEM (radio_menu_item), TRUE); /* gtk_widget_set_state (GTK_WIDGET (radio_menu_item), GTK_STATE_ACTIVE); */ } @@ -480,13 +480,13 @@ gtk_radio_menu_item_activate (GtkMenuItem *menu_item) if (tmp_menu_item) { toggled = TRUE; - gtk_check_menu_item_set_active (check_menu_item, !active); + _gtk_check_menu_item_set_active (check_menu_item, !active); } } else { toggled = TRUE; - gtk_check_menu_item_set_active (check_menu_item, !active); + _gtk_check_menu_item_set_active (check_menu_item, !active); tmp_list = priv->group; while (tmp_list) |