aboutsummaryrefslogtreecommitdiff
path: root/src/fs/gnunet-fs-gtk_common.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/fs/gnunet-fs-gtk_common.c')
-rw-r--r--src/fs/gnunet-fs-gtk_common.c29
1 files changed, 29 insertions, 0 deletions
diff --git a/src/fs/gnunet-fs-gtk_common.c b/src/fs/gnunet-fs-gtk_common.c
index 19b9f30e..36b1c897 100644
--- a/src/fs/gnunet-fs-gtk_common.c
+++ b/src/fs/gnunet-fs-gtk_common.c
@@ -545,5 +545,34 @@ GNUNET_GTK_get_reference_from_iter (GtkTreeModel *model, GtkTreeIter *iter)
545 return result; 545 return result;
546} 546}
547 547
548gboolean
549GNUNET_GTK_tree_model_get_next_flat_iter (GtkTreeModel *model, GtkTreeIter *iter, gboolean allow_children, GtkTreeIter *next_iter)
550{
551 GtkTreeIter current_iter = *iter;
552 while (TRUE)
553 {
554 GtkTreeIter tmp_iter;
555
556 tmp_iter = current_iter;
557 if (gtk_tree_model_iter_next (model, &tmp_iter))
558 {
559 *next_iter = tmp_iter;
560 return TRUE;
561 }
562 if (allow_children)
563 {
564 if (gtk_tree_model_iter_children (model, &tmp_iter, &current_iter))
565 {
566 *next_iter = tmp_iter;
567 return TRUE;
568 }
569 }
570 allow_children = FALSE;
571 if (!gtk_tree_model_iter_parent (model, &tmp_iter, &current_iter))
572 return FALSE;
573 current_iter = tmp_iter;
574 }
575 return FALSE;
576}
548 577
549/* end of gnunet-fs-gtk-common.c */ 578/* end of gnunet-fs-gtk-common.c */