[glade3] * plugins/gtk+/glade-gtk.c, plugins/gtk+/gtk+.xml.in: Write GtkToolButton menu children out as "me
- From: Tristan Van Berkom <tvb src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [glade3] * plugins/gtk+/glade-gtk.c, plugins/gtk+/gtk+.xml.in: Write GtkToolButton menu children out as "me
- Date: Sun, 9 Jan 2011 04:07:21 +0000 (UTC)
commit 233a3b42ae35c9a6915c835a7d077203ebaf9a7e
Author: Tristan Van Berkom <tristan van berkom gmail com>
Date: Sun Jan 9 13:14:09 2011 +0900
* plugins/gtk+/glade-gtk.c, plugins/gtk+/gtk+.xml.in: Write GtkToolButton menu children
out as "menu" special child type.
ChangeLog | 3 +++
plugins/gtk+/glade-gtk.c | 12 ++++++++++--
plugins/gtk+/gtk+.xml.in | 2 +-
3 files changed, 14 insertions(+), 3 deletions(-)
---
diff --git a/ChangeLog b/ChangeLog
index 4656f1f..907b820 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -20,6 +20,9 @@
parentless widget references (i.e. you can add a parent to a GtkToolItemGroup's label widget
or a GtkButton's image widget, or remove the parent of a child of a label-widget, etc).
+ * plugins/gtk+/glade-gtk.c, plugins/gtk+/gtk+.xml.in: Write GtkToolButton menu children
+ out as "menu" special child type.
+
2011-01-08 Tristan Van Berkom <tristanvb openismus com>
* gladeui/glade-utils.[ch], gladeui/glade-widget.c, gladeui/glade-builtins.c,
diff --git a/plugins/gtk+/glade-gtk.c b/plugins/gtk+/glade-gtk.c
index 082c27e..0548d6e 100644
--- a/plugins/gtk+/glade-gtk.c
+++ b/plugins/gtk+/glade-gtk.c
@@ -6658,6 +6658,8 @@ glade_gtk_menu_item_remove_child (GladeWidgetAdaptor * adaptor,
g_return_if_fail (GTK_IS_MENU_ITEM (object));
g_return_if_fail (GTK_IS_MENU (child));
+ g_object_set_data (child, "special-child-type", NULL);
+
gtk_menu_item_set_submenu (GTK_MENU_ITEM (object), NULL);
}
@@ -7880,8 +7882,12 @@ glade_gtk_menu_tool_button_add_child (GladeWidgetAdaptor * adaptor,
GObject * object, GObject * child)
{
if (GTK_IS_MENU (child))
- gtk_menu_tool_button_set_menu (GTK_MENU_TOOL_BUTTON (object),
- GTK_WIDGET (child));
+ {
+ g_object_set_data (child, "special-child-type", "menu");
+
+ gtk_menu_tool_button_set_menu (GTK_MENU_TOOL_BUTTON (object),
+ GTK_WIDGET (child));
+ }
else
GWA_GET_CLASS (GTK_TYPE_TOOL_BUTTON)->add (adaptor, object, child);
}
@@ -7893,6 +7899,8 @@ glade_gtk_menu_tool_button_remove_child (GladeWidgetAdaptor * adaptor,
if (GTK_IS_MENU (child))
{
gtk_menu_tool_button_set_menu (GTK_MENU_TOOL_BUTTON (object), NULL);
+
+ g_object_set_data (child, "special-child-type", NULL);
}
else
GWA_GET_CLASS (GTK_TYPE_TOOL_BUTTON)->remove (adaptor, object, child);
diff --git a/plugins/gtk+/gtk+.xml.in b/plugins/gtk+/gtk+.xml.in
index 6733d93..5ba03cf 100644
--- a/plugins/gtk+/gtk+.xml.in
+++ b/plugins/gtk+/gtk+.xml.in
@@ -742,9 +742,9 @@ embedded in another object</_tooltip>
<add-child-function>glade_gtk_menu_tool_button_add_child</add-child-function>
<remove-child-function>glade_gtk_menu_tool_button_remove_child</remove-child-function>
<get-children-function>glade_gtk_menu_tool_button_get_children</get-children-function>
+ <special-child-type>menu</special-child-type>
</glade-widget-class>
-
<glade-widget-class name="GtkHandleBox" generic-name="handlebox" _title="Handle Box">
<properties>
<property id="handle-position">
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]