diff options
-rw-r--r-- | ChangeLog | 8 | ||||
-rw-r--r-- | ChangeLog.pre-2-10 | 8 | ||||
-rw-r--r-- | ChangeLog.pre-2-2 | 8 | ||||
-rw-r--r-- | ChangeLog.pre-2-4 | 8 | ||||
-rw-r--r-- | ChangeLog.pre-2-6 | 8 | ||||
-rw-r--r-- | ChangeLog.pre-2-8 | 8 | ||||
-rw-r--r-- | gtk/gtktreeselection.c | 36 |
7 files changed, 69 insertions, 15 deletions
@@ -1,3 +1,11 @@ +Mon Apr 8 20:28:54 2002 Kristian Rietveld <kris@gtk.org> + + * gtk/gtktreeselection.c (gtk_tree_selection_select_path), + (gtk_tree_selection_unselect_path), + (gtk_tree_selection_path_is_selected): check the return value of + _gtk_tree_view_find_node and return if it's TRUE. This makes those + functions work somewhat saner on non-expanded trees. + Fri Apr 5 18:28:56 2002 Kristian Rietveld <kris@gtk.org> * gtk/gtktreeselection.c (gtk_tree_selection_set_mode): free diff --git a/ChangeLog.pre-2-10 b/ChangeLog.pre-2-10 index 5cbf6473e9..f0ad0f7b89 100644 --- a/ChangeLog.pre-2-10 +++ b/ChangeLog.pre-2-10 @@ -1,3 +1,11 @@ +Mon Apr 8 20:28:54 2002 Kristian Rietveld <kris@gtk.org> + + * gtk/gtktreeselection.c (gtk_tree_selection_select_path), + (gtk_tree_selection_unselect_path), + (gtk_tree_selection_path_is_selected): check the return value of + _gtk_tree_view_find_node and return if it's TRUE. This makes those + functions work somewhat saner on non-expanded trees. + Fri Apr 5 18:28:56 2002 Kristian Rietveld <kris@gtk.org> * gtk/gtktreeselection.c (gtk_tree_selection_set_mode): free diff --git a/ChangeLog.pre-2-2 b/ChangeLog.pre-2-2 index 5cbf6473e9..f0ad0f7b89 100644 --- a/ChangeLog.pre-2-2 +++ b/ChangeLog.pre-2-2 @@ -1,3 +1,11 @@ +Mon Apr 8 20:28:54 2002 Kristian Rietveld <kris@gtk.org> + + * gtk/gtktreeselection.c (gtk_tree_selection_select_path), + (gtk_tree_selection_unselect_path), + (gtk_tree_selection_path_is_selected): check the return value of + _gtk_tree_view_find_node and return if it's TRUE. This makes those + functions work somewhat saner on non-expanded trees. + Fri Apr 5 18:28:56 2002 Kristian Rietveld <kris@gtk.org> * gtk/gtktreeselection.c (gtk_tree_selection_set_mode): free diff --git a/ChangeLog.pre-2-4 b/ChangeLog.pre-2-4 index 5cbf6473e9..f0ad0f7b89 100644 --- a/ChangeLog.pre-2-4 +++ b/ChangeLog.pre-2-4 @@ -1,3 +1,11 @@ +Mon Apr 8 20:28:54 2002 Kristian Rietveld <kris@gtk.org> + + * gtk/gtktreeselection.c (gtk_tree_selection_select_path), + (gtk_tree_selection_unselect_path), + (gtk_tree_selection_path_is_selected): check the return value of + _gtk_tree_view_find_node and return if it's TRUE. This makes those + functions work somewhat saner on non-expanded trees. + Fri Apr 5 18:28:56 2002 Kristian Rietveld <kris@gtk.org> * gtk/gtktreeselection.c (gtk_tree_selection_set_mode): free diff --git a/ChangeLog.pre-2-6 b/ChangeLog.pre-2-6 index 5cbf6473e9..f0ad0f7b89 100644 --- a/ChangeLog.pre-2-6 +++ b/ChangeLog.pre-2-6 @@ -1,3 +1,11 @@ +Mon Apr 8 20:28:54 2002 Kristian Rietveld <kris@gtk.org> + + * gtk/gtktreeselection.c (gtk_tree_selection_select_path), + (gtk_tree_selection_unselect_path), + (gtk_tree_selection_path_is_selected): check the return value of + _gtk_tree_view_find_node and return if it's TRUE. This makes those + functions work somewhat saner on non-expanded trees. + Fri Apr 5 18:28:56 2002 Kristian Rietveld <kris@gtk.org> * gtk/gtktreeselection.c (gtk_tree_selection_set_mode): free diff --git a/ChangeLog.pre-2-8 b/ChangeLog.pre-2-8 index 5cbf6473e9..f0ad0f7b89 100644 --- a/ChangeLog.pre-2-8 +++ b/ChangeLog.pre-2-8 @@ -1,3 +1,11 @@ +Mon Apr 8 20:28:54 2002 Kristian Rietveld <kris@gtk.org> + + * gtk/gtktreeselection.c (gtk_tree_selection_select_path), + (gtk_tree_selection_unselect_path), + (gtk_tree_selection_path_is_selected): check the return value of + _gtk_tree_view_find_node and return if it's TRUE. This makes those + functions work somewhat saner on non-expanded trees. + Fri Apr 5 18:28:56 2002 Kristian Rietveld <kris@gtk.org> * gtk/gtktreeselection.c (gtk_tree_selection_set_mode): free diff --git a/gtk/gtktreeselection.c b/gtk/gtktreeselection.c index 1be26116f0..4fe966a316 100644 --- a/gtk/gtktreeselection.c +++ b/gtk/gtktreeselection.c @@ -527,17 +527,19 @@ gtk_tree_selection_select_path (GtkTreeSelection *selection, GtkRBNode *node; GtkRBTree *tree; GdkModifierType state = 0; + gboolean ret; g_return_if_fail (GTK_IS_TREE_SELECTION (selection)); g_return_if_fail (selection->tree_view != NULL); g_return_if_fail (path != NULL); - _gtk_tree_view_find_node (selection->tree_view, - path, - &tree, - &node); + ret = _gtk_tree_view_find_node (selection->tree_view, + path, + &tree, + &node); - if (node == NULL || GTK_RBNODE_FLAG_SET (node, GTK_RBNODE_IS_SELECTED)) + if (node == NULL || GTK_RBNODE_FLAG_SET (node, GTK_RBNODE_IS_SELECTED) || + ret == TRUE) return; if (selection->type == GTK_SELECTION_MULTIPLE) @@ -563,17 +565,19 @@ gtk_tree_selection_unselect_path (GtkTreeSelection *selection, { GtkRBNode *node; GtkRBTree *tree; + gboolean ret; g_return_if_fail (GTK_IS_TREE_SELECTION (selection)); g_return_if_fail (selection->tree_view != NULL); g_return_if_fail (path != NULL); - _gtk_tree_view_find_node (selection->tree_view, - path, - &tree, - &node); + ret = _gtk_tree_view_find_node (selection->tree_view, + path, + &tree, + &node); - if (node == NULL || !GTK_RBNODE_FLAG_SET (node, GTK_RBNODE_IS_SELECTED)) + if (node == NULL || !GTK_RBNODE_FLAG_SET (node, GTK_RBNODE_IS_SELECTED) || + ret == TRUE) return; _gtk_tree_selection_internal_select_node (selection, @@ -656,18 +660,20 @@ gtk_tree_selection_path_is_selected (GtkTreeSelection *selection, { GtkRBNode *node; GtkRBTree *tree; + gboolean ret; g_return_val_if_fail (GTK_IS_TREE_SELECTION (selection), FALSE); g_return_val_if_fail (path != NULL, FALSE); g_return_val_if_fail (selection->tree_view != NULL, FALSE); g_return_val_if_fail (selection->tree_view->priv->model != NULL, FALSE); - _gtk_tree_view_find_node (selection->tree_view, - path, - &tree, - &node); + ret = _gtk_tree_view_find_node (selection->tree_view, + path, + &tree, + &node); - if ((node == NULL) || !GTK_RBNODE_FLAG_SET (node, GTK_RBNODE_IS_SELECTED)) + if ((node == NULL) || !GTK_RBNODE_FLAG_SET (node, GTK_RBNODE_IS_SELECTED) || + ret == TRUE) return FALSE; return TRUE; |