summaryrefslogtreecommitdiff
path: root/gtk/gtktreestore.c
diff options
context:
space:
mode:
authorOwen Taylor <otaylor@redhat.com>2004-03-02 21:34:19 +0000
committerOwen Taylor <otaylor@src.gnome.org>2004-03-02 21:34:19 +0000
commitd0f6b4819900f9af5e74cf7b55962d96e8645c2d (patch)
treea6df63b2ad87d0faeda85a3c8f1ec74cd0217c04 /gtk/gtktreestore.c
parentd40c1d69f38f50c889dabebfbe9af1739ac8c95b (diff)
downloadgtk+-d0f6b4819900f9af5e74cf7b55962d96e8645c2d.tar.gz
gtk/gtktreestore.c (gtk_tree_store_reorder) Fix up the interpretation of
Tue Mar 2 16:18:43 2004 Owen Taylor <otaylor@redhat.com> * gtk/gtktreestore.c (gtk_tree_store_reorder) * gtk/gtkliststore.c (gtk_list_store_reorder): Fix up the interpretation of new_order to match what it means elsewhere, document the meaning of new_order. * gtk/gtkcombobox.c (gtk_combo_box_model_rows_reordered): Fix interpretation of new_order. * tests/testcombochange.c (on_reorder): Fix interpretation of new_order. * tests/testcombochange.c (on_reorder): Fix hitting "reorder" with an empty list.
Diffstat (limited to 'gtk/gtktreestore.c')
-rw-r--r--gtk/gtktreestore.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/gtk/gtktreestore.c b/gtk/gtktreestore.c
index bdb5ef5d22..8b1999ba29 100644
--- a/gtk/gtktreestore.c
+++ b/gtk/gtktreestore.c
@@ -1891,7 +1891,9 @@ gtk_tree_store_reorder_func (gconstpointer a,
* gtk_tree_store_reorder:
* @tree_store: A #GtkTreeStore.
* @parent: A #GtkTreeIter.
- * @new_order: An integer array indication the new order for the list.
+ * @new_order: an array of integers mapping the new position of each child
+ * to its old position before the re-ordering,
+ * i.e. @new_order<literal>[newpos] = oldpos</literal>.
*
* Reorders the children of @parent in @tree_store to follow the order
* indicated by @new_order. Note that this function only works with
@@ -1933,7 +1935,7 @@ gtk_tree_store_reorder (GtkTreeStore *tree_store,
node = level;
for (i = 0; i < length; i++)
{
- sort_array[i].offset = new_order[i];
+ sort_array[new_order[i]].offset = i;
sort_array[i].node = node;
node = node->next;