diff options
author | Christopher James Lahey <clahey@ximian.com> | 2002-01-31 16:17:57 +0800 |
---|---|---|
committer | Chris Lahey <clahey@src.gnome.org> | 2002-01-31 16:17:57 +0800 |
commit | e2defdb06fc9bf7a73bb5ec0d4abcfd2c71a658d (patch) | |
tree | c69fd65c7bb77774d6fbd6c835977ef0a2d032e4 /widgets/table/e-tree-model.h | |
parent | 42ffb93955bf660be4fdbea4fb95d2a2f51a091c (diff) | |
download | gsoc2013-evolution-e2defdb06fc9bf7a73bb5ec0d4abcfd2c71a658d.tar.gz gsoc2013-evolution-e2defdb06fc9bf7a73bb5ec0d4abcfd2c71a658d.tar.zst gsoc2013-evolution-e2defdb06fc9bf7a73bb5ec0d4abcfd2c71a658d.zip |
New function to do a search through a tree in one direction or the other.
2002-01-31 Christopher James Lahey <clahey@ximian.com>
* e-tree-model.c, e-tree-model.h (e_tree_model_node_find): New
function to do a search through a tree in one direction or the
other.
svn path=/trunk/; revision=15536
Diffstat (limited to 'widgets/table/e-tree-model.h')
-rw-r--r-- | widgets/table/e-tree-model.h | 181 |
1 files changed, 92 insertions, 89 deletions
diff --git a/widgets/table/e-tree-model.h b/widgets/table/e-tree-model.h index c80a131b1c..bd3714b847 100644 --- a/widgets/table/e-tree-model.h +++ b/widgets/table/e-tree-model.h @@ -111,104 +111,107 @@ struct ETreeModelClass { void (*node_removed) (ETreeModel *etm, ETreePath parent, ETreePath removed_node, int old_position); void (*node_deleted) (ETreeModel *etm, ETreePath deleted_node); }; -GtkType e_tree_model_get_type (void); -ETreeModel *e_tree_model_new (void); + + +GtkType e_tree_model_get_type (void); +ETreeModel *e_tree_model_new (void); /* tree traversal operations */ -ETreePath e_tree_model_get_root (ETreeModel *etree); -ETreePath e_tree_model_node_get_parent (ETreeModel *etree, - ETreePath path); -ETreePath e_tree_model_node_get_first_child (ETreeModel *etree, - ETreePath path); -ETreePath e_tree_model_node_get_last_child (ETreeModel *etree, - ETreePath path); -ETreePath e_tree_model_node_get_next (ETreeModel *etree, - ETreePath path); -ETreePath e_tree_model_node_get_prev (ETreeModel *etree, - ETreePath path); +ETreePath e_tree_model_get_root (ETreeModel *etree); +ETreePath e_tree_model_node_get_parent (ETreeModel *etree, + ETreePath path); +ETreePath e_tree_model_node_get_first_child (ETreeModel *etree, + ETreePath path); +ETreePath e_tree_model_node_get_last_child (ETreeModel *etree, + ETreePath path); +ETreePath e_tree_model_node_get_next (ETreeModel *etree, + ETreePath path); +ETreePath e_tree_model_node_get_prev (ETreeModel *etree, + ETreePath path); /* node accessors */ -gboolean e_tree_model_node_is_root (ETreeModel *etree, - ETreePath path); -gboolean e_tree_model_node_is_expandable (ETreeModel *etree, - ETreePath path); -guint e_tree_model_node_get_children (ETreeModel *etree, - ETreePath path, - ETreePath **paths); -guint e_tree_model_node_depth (ETreeModel *etree, - ETreePath path); -GdkPixbuf *e_tree_model_icon_at (ETreeModel *etree, - ETreePath path); -gboolean e_tree_model_get_expanded_default (ETreeModel *model); -gint e_tree_model_column_count (ETreeModel *model); - - -gboolean e_tree_model_has_save_id (ETreeModel *model); -gchar *e_tree_model_get_save_id (ETreeModel *model, - ETreePath node); - -gboolean e_tree_model_has_get_node_by_id (ETreeModel *model); -ETreePath e_tree_model_get_node_by_id (ETreeModel *model, - const char *save_id); - -gboolean e_tree_model_has_change_pending (ETreeModel *model); - -void *e_tree_model_value_at (ETreeModel *etree, - ETreePath node, - int col); -void e_tree_model_set_value_at (ETreeModel *etree, - ETreePath node, - int col, - const void *val); -gboolean e_tree_model_node_is_editable (ETreeModel *etree, - ETreePath node, - int col); -void *e_tree_model_duplicate_value (ETreeModel *etree, - int col, - const void *value); -void e_tree_model_free_value (ETreeModel *etree, - int col, - void *value); -void *e_tree_model_initialize_value (ETreeModel *etree, - int col); -gboolean e_tree_model_value_is_empty (ETreeModel *etree, - int col, - const void *value); -char *e_tree_model_value_to_string (ETreeModel *etree, - int col, - const void *value); +gboolean e_tree_model_node_is_root (ETreeModel *etree, + ETreePath path); +gboolean e_tree_model_node_is_expandable (ETreeModel *etree, + ETreePath path); +guint e_tree_model_node_get_children (ETreeModel *etree, + ETreePath path, + ETreePath **paths); +guint e_tree_model_node_depth (ETreeModel *etree, + ETreePath path); +GdkPixbuf *e_tree_model_icon_at (ETreeModel *etree, + ETreePath path); +gboolean e_tree_model_get_expanded_default (ETreeModel *model); +gint e_tree_model_column_count (ETreeModel *model); +gboolean e_tree_model_has_save_id (ETreeModel *model); +gchar *e_tree_model_get_save_id (ETreeModel *model, + ETreePath node); +gboolean e_tree_model_has_get_node_by_id (ETreeModel *model); +ETreePath e_tree_model_get_node_by_id (ETreeModel *model, + const char *save_id); +gboolean e_tree_model_has_change_pending (ETreeModel *model); +void *e_tree_model_value_at (ETreeModel *etree, + ETreePath node, + int col); +void e_tree_model_set_value_at (ETreeModel *etree, + ETreePath node, + int col, + const void *val); +gboolean e_tree_model_node_is_editable (ETreeModel *etree, + ETreePath node, + int col); +void *e_tree_model_duplicate_value (ETreeModel *etree, + int col, + const void *value); +void e_tree_model_free_value (ETreeModel *etree, + int col, + void *value); +void *e_tree_model_initialize_value (ETreeModel *etree, + int col); +gboolean e_tree_model_value_is_empty (ETreeModel *etree, + int col, + const void *value); +char *e_tree_model_value_to_string (ETreeModel *etree, + int col, + const void *value); /* depth first traversal of path's descendents, calling func on each one */ -void e_tree_model_node_traverse (ETreeModel *model, - ETreePath path, - ETreePathFunc func, - gpointer data); -void e_tree_model_node_traverse_preorder (ETreeModel *model, - ETreePath path, - ETreePathFunc func, - gpointer data); - +void e_tree_model_node_traverse (ETreeModel *model, + ETreePath path, + ETreePathFunc func, + gpointer data); +void e_tree_model_node_traverse_preorder (ETreeModel *model, + ETreePath path, + ETreePathFunc func, + gpointer data); +ETreePath e_tree_model_node_find (ETreeModel *model, + ETreePath path, + ETreePath end_path, + gboolean forward_direction, + ETreePathFunc func, + gpointer data); + /* ** Routines for emitting signals on the ETreeModel */ -void e_tree_model_pre_change (ETreeModel *tree_model); -void e_tree_model_no_change (ETreeModel *tree_model); -void e_tree_model_node_changed (ETreeModel *tree_model, - ETreePath node); -void e_tree_model_node_data_changed (ETreeModel *tree_model, - ETreePath node); -void e_tree_model_node_col_changed (ETreeModel *tree_model, - ETreePath node, - int col); -void e_tree_model_node_inserted (ETreeModel *tree_model, - ETreePath parent_node, - ETreePath inserted_node); -void e_tree_model_node_removed (ETreeModel *tree_model, - ETreePath parent_node, - ETreePath removed_node, - int old_position); -void e_tree_model_node_deleted (ETreeModel *tree_model, - ETreePath deleted_node); +void e_tree_model_pre_change (ETreeModel *tree_model); +void e_tree_model_no_change (ETreeModel *tree_model); +void e_tree_model_node_changed (ETreeModel *tree_model, + ETreePath node); +void e_tree_model_node_data_changed (ETreeModel *tree_model, + ETreePath node); +void e_tree_model_node_col_changed (ETreeModel *tree_model, + ETreePath node, + int col); +void e_tree_model_node_inserted (ETreeModel *tree_model, + ETreePath parent_node, + ETreePath inserted_node); +void e_tree_model_node_removed (ETreeModel *tree_model, + ETreePath parent_node, + ETreePath removed_node, + int old_position); +void e_tree_model_node_deleted (ETreeModel *tree_model, + ETreePath deleted_node); #ifdef __cplusplus } |