Enlightenment CVS committal Author : balony Project : e17 Module : proto
Dir : e17/proto/etk/src/lib Modified Files: etk_tree.c etk_tree.h Log Message: just a small update with functions needed in exhibit =================================================================== RCS file: /cvs/e/e17/proto/etk/src/lib/etk_tree.c,v retrieving revision 1.72 retrieving revision 1.73 diff -u -3 -r1.72 -r1.73 --- etk_tree.c 13 Aug 2006 22:42:23 -0000 1.72 +++ etk_tree.c 14 Aug 2006 16:26:00 -0000 1.73 @@ -309,6 +309,7 @@ return tree->num_cols; } + /** * @brief Gets the "nth" column of the tree * @param tree a tree @@ -651,6 +652,46 @@ } /** + * @brief Gets the number of rows of the tree + * @param tree a tree + * @return Returns the number of rows of the tree + */ +int etk_tree_num_rows_get(Etk_Tree *tree) +{ + if (!tree) + return 0; + return tree->num_rows; +} + +/** + * @brief Gets the rownumber of the row + * @param tree a tree + * @param row a row + * @return Returns the rownumber of the row + */ +int etk_tree_row_num_get(Etk_Tree *tree, Etk_Tree_Row *row) +{ + Etk_Tree_Row *cur_row; + int n = 0; + + if (!tree || !row) + return 0; + + cur_row = etk_tree_first_row_get(ETK_TREE(tree)); + while (cur_row != NULL) + { + if (row == cur_row) return n; + n++; + cur_row = etk_tree_next_row_get(cur_row, ETK_FALSE, ETK_FALSE); + } + + return 0; +} + + + + +/** * @brief Sets the height of the rows of the tree * @param tree a tree * @param row_height the new height of the rows. If @a row_height < 8, the tree will use the theme default value @@ -770,6 +811,8 @@ if (!tree) return NULL; + tree->num_rows++; + va_start(args, tree); new_row = _etk_tree_row_new_valist(tree, &tree->root, args); va_end(args); @@ -875,6 +918,7 @@ while (tree->root.first_child) _etk_tree_row_free(tree->root.first_child); tree->last_selected = NULL; + tree->num_rows = 0; etk_widget_redraw_queue(ETK_WIDGET(tree->grid)); etk_signal_emit_by_name("scroll_size_changed", ETK_OBJECT(tree->grid), NULL); @@ -1583,6 +1627,7 @@ etk_widget_show(tree->grid); tree->num_cols = 0; + tree->num_rows = 0; tree->columns = NULL; tree->last_selected = NULL; tree->column_to_resize = NULL; =================================================================== RCS file: /cvs/e/e17/proto/etk/src/lib/etk_tree.h,v retrieving revision 1.24 retrieving revision 1.25 diff -u -3 -r1.24 -r1.25 --- etk_tree.h 29 Jul 2006 20:09:06 -0000 1.24 +++ etk_tree.h 14 Aug 2006 16:26:01 -0000 1.25 @@ -75,6 +75,7 @@ Etk_Widget *grid; int num_cols; + int num_rows; Etk_Tree_Col **columns; Etk_Bool headers_visible; @@ -180,6 +181,8 @@ void etk_tree_freeze(Etk_Tree *tree); void etk_tree_thaw(Etk_Tree *tree); +int etk_tree_num_rows_get(Etk_Tree *tree); +int etk_tree_row_num_get(Etk_Tree *tree, Etk_Tree_Row *row); void etk_tree_row_height_set(Etk_Tree *tree, int row_height); int etk_tree_row_height_get(Etk_Tree *tree); void etk_tree_multiple_select_set(Etk_Tree *tree, Etk_Bool multiple_select); ------------------------------------------------------------------------- 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