summaryrefslogtreecommitdiff
path: root/gtk/gtkaction.c
diff options
context:
space:
mode:
authorMatthias Clasen <maclas@gmx.de>2003-09-21 22:04:48 +0000
committerMatthias Clasen <matthiasc@src.gnome.org>2003-09-21 22:04:48 +0000
commitd381967d5ccb39a1b5dc94cbc01379143c917eb8 (patch)
tree8256261a7140d2f49e5c371e6ef613d1f58785a6 /gtk/gtkaction.c
parent8be8d7f61dd77ae9331c92ec692350e7947c6340 (diff)
downloadgdk-pixbuf-d381967d5ccb39a1b5dc94cbc01379143c917eb8.tar.gz
Changes to make cross-process merging feasible:
2003-09-21 Matthias Clasen <maclas@gmx.de> Changes to make cross-process merging feasible: * gtk/gtkuimanager.[hc]: Add a readonly "ui" property which holds the merged UI definition. Remove the "changed" signal, since its role is now filled by "notify::ui". Instead add a "actions-changed" signal which gets emitted when the set of actions changes. * gtk/gtktoggleactionprivate.h: * gtk/gtktoggleaction.[hc] (gtk_toggle_action_[sg]et_draw_as_radio): Add a "draw_as_radio" property to toggle actions so that they can be used as proxies for radio actions much like the "draw_as_radio" property on check menu items enables them to operate as proxies for radio actions. Prevent the "show_all" trap for action-based menus (see http://mail.gnome.org/archives/gtk-devel-list/2003-September/ msg00260.html): * gtk/gtkmenu.c (gtk_menu_{hide,show}_all): Remove g_return_if_fail() calls from static functions. * gtk/gtkuimanager.c (update_node): * gtk/gtkaction.c (connect_proxy): Set "no_show_all" on constructed widgets whose visibility is externally controlled. * gtk/gtkwidget.[hc] (gtk_widget_[gs]et_no_show_all): Add a boolean "no_show_all" property with setter and getter. When TRUE, it keeps gtk_widget_{hide,show}_all() from modifying the visibility of the widget and its children.
Diffstat (limited to 'gtk/gtkaction.c')
-rw-r--r--gtk/gtkaction.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/gtk/gtkaction.c b/gtk/gtkaction.c
index adb3c9524..e3ce12e87 100644
--- a/gtk/gtkaction.c
+++ b/gtk/gtkaction.c
@@ -568,6 +568,7 @@ connect_proxy (GtkAction *action,
gtk_widget_show (proxy);
else
gtk_widget_hide (proxy);
+ gtk_widget_set_no_show_all (proxy, TRUE);
if (GTK_IS_MENU_ITEM (proxy))
{