Enlightenment CVS committal

Author  : lok
Project : e17
Module  : proto

Dir     : e17/proto/etk/src/lib


Modified Files:
        etk_tree.c etk_tree.h 


Log Message:
[Etk_Tree] Added etk_tree_unselected_rows_get

===================================================================
RCS file: /cvs/e/e17/proto/etk/src/lib/etk_tree.c,v
retrieving revision 1.75
retrieving revision 1.76
diff -u -3 -r1.75 -r1.76
--- etk_tree.c  4 Sep 2006 12:51:42 -0000       1.75
+++ etk_tree.c  8 Sep 2006 14:41:50 -0000       1.76
@@ -146,6 +146,7 @@
 static Etk_Tree_Col *etk_tree_col_to_resize_get(Etk_Tree_Col *col, int x);
 
 static void _etk_tree_row_selected_rows_get(Etk_Tree_Row *row, Evas_List 
**selected_rows);
+static void _etk_tree_row_unselected_rows_get(Etk_Tree_Row *row, Evas_List 
**unselected_rows);
 static void _etk_tree_row_select_all(Etk_Tree_Row *row);
 static void _etk_tree_row_unselect_all(Etk_Tree_Row *row);
 static void _etk_tree_row_select(Etk_Tree *tree, Etk_Tree_Row *row, 
Etk_Modifiers modifiers);
@@ -1279,6 +1280,24 @@
 }
 
 /**
+ * @brief Gets all the rows not selected of the tree
+ * @param tree a tree
+ * @return Returns an Evas_List * containing the unselected rows of the tree
+ * @warning The returned Evas_List * should be freed with @a evas_list_free()
+ */
+Evas_List *etk_tree_unselected_rows_get(Etk_Tree *tree)
+{
+   Evas_List *unselected_rows = NULL;
+
+  if (!tree)
+     return NULL;
+
+  _etk_tree_row_unselected_rows_get(&tree->root, &unselected_rows);
+
+  return unselected_rows;
+}
+
+/**
  * @brief Expands the row. The child rows of the row will be displayed. It 
will only affect a tree in the ETK_TREE_MODE_TREE mode
  * @param row a row
  */
@@ -2859,6 +2878,22 @@
       if (r->selected)
          *selected_rows = evas_list_append(*selected_rows, r);
       _etk_tree_row_selected_rows_get(r, selected_rows);
+   }
+}
+
+/* Gets the unselected child rows of the row */
+static void _etk_tree_row_unselected_rows_get(Etk_Tree_Row *row, Evas_List 
**unselected_rows)
+{
+   Etk_Tree_Row *r;
+   
+   if (!row || !unselected_rows)
+      return;
+   
+   for (r = row->first_child; r; r = r->next)
+   {
+      if (!r->selected)
+         *unselected_rows = evas_list_append(*unselected_rows, r);
+      _etk_tree_row_unselected_rows_get(r, unselected_rows);
    }
 }
 
===================================================================
RCS file: /cvs/e/e17/proto/etk/src/lib/etk_tree.h,v
retrieving revision 1.25
retrieving revision 1.26
diff -u -3 -r1.25 -r1.26
--- etk_tree.h  14 Aug 2006 16:26:01 -0000      1.25
+++ etk_tree.h  8 Sep 2006 14:41:50 -0000       1.26
@@ -217,6 +217,7 @@
 void etk_tree_row_unselect(Etk_Tree_Row *row);
 Etk_Tree_Row *etk_tree_selected_row_get(Etk_Tree *tree);
 Evas_List *etk_tree_selected_rows_get(Etk_Tree *tree);
+Evas_List *etk_tree_unselected_rows_get(Etk_Tree *tree);
 
 void etk_tree_row_expand(Etk_Tree_Row *row);
 void etk_tree_row_collapse(Etk_Tree_Row *row);



-------------------------------------------------------------------------
Using Tomcat but need to do more? Need to support web services, security?
Get stuff done quickly with pre-integrated technology to make your job easier
Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo
http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642
_______________________________________________
enlightenment-cvs mailing list
enlightenment-cvs@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-cvs

Reply via email to