diff options
author | Tristan Van Berkom <tvb@src.gnome.org> | 2008-03-10 00:30:04 +0000 |
---|---|---|
committer | Tristan Van Berkom <tvb@src.gnome.org> | 2008-03-10 00:30:04 +0000 |
commit | d3273878756e7042c53286ad6511927b7ad413a9 (patch) | |
tree | e272ca225c7e7f616f296525ae7b2e85d1694934 | |
parent | 4f4267f63bc2bbae7808c0361ac7d0ec0c138f12 (diff) | |
download | glade-d3273878756e7042c53286ad6511927b7ad413a9.tar.gz |
- Fixed treeview issues with objects dialog, fixing the atk relations bug
* gladeui/glade-editor-property.c:
- Fixed treeview issues with objects dialog, fixing the
atk relations bug 512081.
svn path=/trunk/; revision=1716
-rw-r--r-- | ChangeLog | 4 | ||||
-rw-r--r-- | gladeui/glade-builtins.c | 2 | ||||
-rw-r--r-- | gladeui/glade-editor-property.c | 9 |
3 files changed, 14 insertions, 1 deletions
@@ -13,7 +13,9 @@ - Fixed crasher bug 506713. - Reverted to real time string editing and not using focus-out handlers anymore. - + - Fixed treeview issues with objects dialog, fixing the + atk relations bug 512081. + * gladeui/glade-base-editor.c: Made sure idle handlers werent updating treeviews after the object is destroyed (also bug 506713). diff --git a/gladeui/glade-builtins.c b/gladeui/glade-builtins.c index 3f9e6a69..51ce5355 100644 --- a/gladeui/glade-builtins.c +++ b/gladeui/glade-builtins.c @@ -514,6 +514,8 @@ param_objects_validate (GParamSpec *pspec, g_type_is_a (G_OBJECT_TYPE (object), ospec->type) == FALSE) toremove = g_list_prepend (toremove, object); + + } for (list = toremove; list; list = list->next) diff --git a/gladeui/glade-editor-property.c b/gladeui/glade-editor-property.c index 96035a3c..27e6e410 100644 --- a/gladeui/glade-editor-property.c +++ b/gladeui/glade-editor-property.c @@ -2317,10 +2317,15 @@ glade_eprop_object_populate_view_real (GladeEditorProperty *eprop, glade_param_spec_objects_get_type (GLADE_PARAM_SPEC_OBJECTS(eprop->klass->pspec))); good_type = + g_type_is_a + (widget->adaptor->type, + glade_param_spec_objects_get_type + (GLADE_PARAM_SPEC_OBJECTS(eprop->klass->pspec))) || glade_util_class_implements_interface (widget->adaptor->type, glade_param_spec_objects_get_type (GLADE_PARAM_SPEC_OBJECTS(eprop->klass->pspec))); + } else { @@ -2435,6 +2440,7 @@ glade_eprop_object_selected (GtkCellRendererToggle *cell, radio = GPOINTER_TO_INT (g_object_get_data (G_OBJECT (model), "radio-list")); + gtk_tree_model_get_iter (model, &iter, path); gtk_tree_model_get (model, &iter, OBJ_COLUMN_SELECTED, &enabled, -1); @@ -2771,8 +2777,11 @@ glade_eprop_objects_selected_widget (GtkTreeModel *model, OBJ_COLUMN_SELECTED, &selected, OBJ_COLUMN_WIDGET, &widget, -1); + if (selected) + { *ret = g_list_append (*ret, widget->object); + } return FALSE; } |