diff options
author | Juan Pablo Ugarte <juanpablougarte@gmail.com> | 2013-11-15 22:45:17 -0300 |
---|---|---|
committer | Juan Pablo Ugarte <juanpablougarte@gmail.com> | 2014-04-23 17:26:14 -0300 |
commit | bde9aabb1654330e6f36efb0b7bbbe8f646c1629 (patch) | |
tree | c75f9a1d61d54fed85397ef59fa87425d747bfe5 /gladeui/glade-property.c | |
parent | bcd3c34fdf749701e7d7b144d492510d6f67b1f7 (diff) | |
download | glade-bde9aabb1654330e6f36efb0b7bbbe8f646c1629.tar.gz |
Backport 2bc40ad87be072aac2759755df63707d43f8415c.
Thanks to Thomas Martitz for the backport.
Sort object dependancy before saving using a topological
sorting algorithm _glade_tsort() instead of g_list_sort() with
glade_widget_depends() which is not a transitive property.
Closes Bug 709609 "[PATCH] Change way of sorting before writing XML output."
Fixes Bug 711858 "editing glade project results in long CPU usage spikes after upgrading to 3.16 and GTK+3.10"
This backport includes 1401a4bb43a3e56d642c34d5dc7d5ee86217cb3d which reverted
part of 2bc40ad87be072aac2759755df63707d43f8415c.
Conflicts:
gladeui/Makefile.am
gladeui/glade-project.c
gladeui/glade-widget-adaptor.c
gladeui/glade-widget.c
plugins/gtk+/glade-gtk-entry.c
plugins/gtk+/glade-gtk-size-group.c
plugins/gtk+/glade-gtk-tree-view.c
plugins/gtk+/glade-gtk-widget.c
plugins/gtk+/gtk+.xml.in
Diffstat (limited to 'gladeui/glade-property.c')
-rw-r--r-- | gladeui/glade-property.c | 25 |
1 files changed, 25 insertions, 0 deletions
diff --git a/gladeui/glade-property.c b/gladeui/glade-property.c index 88009c38..0043b75a 100644 --- a/gladeui/glade-property.c +++ b/gladeui/glade-property.c @@ -1465,6 +1465,31 @@ glade_property_get_enabled (GladeProperty *property) return property->enabled; } +GladePropertyClass * +glade_property_get_class (GladeProperty *property) +{ + g_return_val_if_fail (GLADE_IS_PROPERTY (property), NULL); + + return property->klass; +} + +void +glade_property_set_widget (GladeProperty *property, + GladeWidget *widget) +{ + g_return_if_fail (GLADE_IS_PROPERTY (property)); + + property->widget = widget; +} + +GladeWidget * +glade_property_get_widget (GladeProperty *property) +{ + g_return_val_if_fail (GLADE_IS_PROPERTY (property), NULL); + + return property->widget; +} + static gint glade_property_su_stack = 0; |