GtkTreeIter next;
if (gtk_tree_model_get_iter(GTK_TREE_MODEL(myStore), &next, path)) {
- int i1, i2;
-
- gtk_tree_model_get(GTK_TREE_MODEL(myStore), ¤t, 1, &i1, -1);
- gtk_tree_model_get(GTK_TREE_MODEL(myStore), &next, 1, &i2, -1);
-
- std::swap(myItems[i1], myItems[i2]);
-
- gtk_list_store_set(myStore, ¤t, 1, i2, -1);
- gtk_list_store_set(myStore, &next, 1, i1, -1);
-
- gtk_list_store_swap(myStore, ¤t, &next);
+ swap(current, next);
}
}
gtk_tree_path_next(path);
if (gtk_tree_model_get_iter(GTK_TREE_MODEL(myStore), &next, path)) {
- int i1, i2;
+ swap(current, next);
+ }
+
+ gtk_tree_path_free(path);
+ }
+}
- gtk_tree_model_get(GTK_TREE_MODEL(myStore), ¤t, 1, &i1, -1);
- gtk_tree_model_get(GTK_TREE_MODEL(myStore), &next, 1, &i2, -1);
+void SLAList::swap(GtkTreeIter *a, GtkTreeIter *b) {
+ int i1, i2;
- std::swap(myItems[i1], myItems[i2]);
+ gtk_tree_model_get(GTK_TREE_MODEL(myStore), &a, 1, &i1, -1);
+ gtk_tree_model_get(GTK_TREE_MODEL(myStore), &b, 1, &i2, -1);
- gtk_list_store_set(myStore, ¤t, 1, i2, -1);
- gtk_list_store_set(myStore, &next, 1, i1, -1);
+ std::swap(myItems[i1], myItems[i2]);
- gtk_list_store_swap(myStore, ¤t, &next);
- }
+ gtk_list_store_set(myStore, &a, 1, i2, -1);
+ gtk_list_store_set(myStore, &b, 1, i1, -1);
- gtk_tree_path_free(path);
- }
+ gtk_list_store_swap(myStore, &a, &b);
}
// vim:ts=2:sw=2:et