diff options
author | Tristan Van Berkom <tvb@src.gnome.org> | 2007-07-25 22:56:18 +0000 |
---|---|---|
committer | Tristan Van Berkom <tvb@src.gnome.org> | 2007-07-25 22:56:18 +0000 |
commit | 9138bc5984652261a2e8ea702a41eeefdd125619 (patch) | |
tree | 46c0340f4de2f92cf7a9f0b4902ab3fd833360ee /plugins | |
parent | 7eca9200dde1583512038432f64a88f72eb34615 (diff) | |
download | glade-9138bc5984652261a2e8ea702a41eeefdd125619.tar.gz |
Fixed placeholder menu to also include actions of the parent widget.
* gladeui/glade-popup.c: Fixed placeholder menu to also include actions of the
parent widget.
- Disable Add/Remove parent actions on GtkToolItem, GtkMenu and GtkMenuItem.
svn path=/trunk/; revision=1518
Diffstat (limited to 'plugins')
-rw-r--r-- | plugins/gtk+/glade-gtk.c | 59 | ||||
-rw-r--r-- | plugins/gtk+/gtk+.xml.in | 4 |
2 files changed, 63 insertions, 0 deletions
diff --git a/plugins/gtk+/glade-gtk.c b/plugins/gtk+/glade-gtk.c index 654c0409..92909de2 100644 --- a/plugins/gtk+/glade-gtk.c +++ b/plugins/gtk+/glade-gtk.c @@ -4480,6 +4480,27 @@ glade_gtk_image_set_property (GladeWidgetAdaptor *adaptor, id, value); } +/* ----------------------------- GtkMenu ------------------------------ */ +GObject * +glade_gtk_menu_constructor (GType type, + guint n_construct_properties, + GObjectConstructParam *construct_properties) +{ + GladeWidgetAdaptor *adaptor; + GObject *ret_obj; + + ret_obj = GWA_GET_OCLASS(GTK_TYPE_CONTAINER)->constructor + (type, n_construct_properties, construct_properties); + + adaptor = GLADE_WIDGET_ADAPTOR (ret_obj); + + glade_widget_adaptor_action_remove (adaptor, "add_parent"); + glade_widget_adaptor_action_remove (adaptor, "remove_parent"); + + return ret_obj; +} + + /* ----------------------------- GtkMenuShell ------------------------------ */ void glade_gtk_menu_shell_add_child (GladeWidgetAdaptor *adaptor, @@ -4822,6 +4843,25 @@ glade_gtk_menu_shell_action_activate (GladeWidgetAdaptor *adaptor, } /* ----------------------------- GtkMenuItem(s) ------------------------------ */ +GObject * +glade_gtk_menu_item_constructor (GType type, + guint n_construct_properties, + GObjectConstructParam *construct_properties) +{ + GladeWidgetAdaptor *adaptor; + GObject *ret_obj; + + ret_obj = GWA_GET_OCLASS(GTK_TYPE_CONTAINER)->constructor + (type, n_construct_properties, construct_properties); + + adaptor = GLADE_WIDGET_ADAPTOR (ret_obj); + + glade_widget_adaptor_action_remove (adaptor, "add_parent"); + glade_widget_adaptor_action_remove (adaptor, "remove_parent"); + + return ret_obj; +} + GList * glade_gtk_menu_item_get_children (GladeWidgetAdaptor *adaptor, GObject *object) @@ -5637,6 +5677,25 @@ glade_gtk_toolbar_action_activate (GladeWidgetAdaptor *adaptor, } /* ----------------------------- GtkToolItem ------------------------------ */ +GObject * +glade_gtk_tool_item_constructor (GType type, + guint n_construct_properties, + GObjectConstructParam *construct_properties) +{ + GladeWidgetAdaptor *adaptor; + GObject *ret_obj; + + ret_obj = GWA_GET_OCLASS(GTK_TYPE_CONTAINER)->constructor + (type, n_construct_properties, construct_properties); + + adaptor = GLADE_WIDGET_ADAPTOR (ret_obj); + + glade_widget_adaptor_action_remove (adaptor, "add_parent"); + glade_widget_adaptor_action_remove (adaptor, "remove_parent"); + + return ret_obj; +} + void glade_gtk_tool_item_post_create (GladeWidgetAdaptor *adaptor, GObject *object, diff --git a/plugins/gtk+/gtk+.xml.in b/plugins/gtk+/gtk+.xml.in index 693ffa9f..e7ba4ff3 100644 --- a/plugins/gtk+/gtk+.xml.in +++ b/plugins/gtk+/gtk+.xml.in @@ -331,6 +331,7 @@ embedded in another object</_tooltip> </glade-widget-class> <glade-widget-class name="GtkMenuItem" generic-name="menuitem" _title="Menu Item" use-placeholders="False"> + <constructor-function>glade_gtk_menu_item_constructor</constructor-function> <post-create-function>glade_gtk_menu_item_post_create</post-create-function> <get-children-function>glade_gtk_menu_item_get_children</get-children-function> <set-property-function>glade_gtk_menu_item_set_property</set-property-function> @@ -485,10 +486,12 @@ embedded in another object</_tooltip> <glade-widget-class name="GtkToolItem" generic-name="toolitem" title="GtkToolItem"> <post-create-function>glade_gtk_tool_item_post_create</post-create-function> + <constructor-function>glade_gtk_tool_item_constructor</constructor-function> </glade-widget-class> <glade-widget-class name="GtkSeparatorToolItem" generic-name="separatortoolitem" _title="Separator Tool Item"/> + <glade-widget-class name="GtkToolButton" generic-name="toolbutton" _title="Tool Button"> <set-property-function>glade_gtk_tool_button_set_property</set-property-function> @@ -1146,6 +1149,7 @@ embedded in another object</_tooltip> <glade-widget-class name="GtkMenu" generic-name="menu" _title="Popup Menu" toplevel="True"> <!-- We do not want glade_gtk_container_post_create be executed --> + <constructor-function>glade_gtk_menu_constructor</constructor-function> <post-create-function>empty</post-create-function> <actions> <action id="launch_editor" _name="Edit…" stock="gtk-edit" important="True"/> |