aboutsummaryrefslogtreecommitdiffstats
path: root/widgets/table/e-tree-selection-model.h
diff options
context:
space:
mode:
authorChristopher James Lahey <clahey@ximian.com>2001-03-31 19:41:34 +0800
committerChris Lahey <clahey@src.gnome.org>2001-03-31 19:41:34 +0800
commit40dff989475d31e3d24dd8ae38dc79c191358e52 (patch)
tree97c333a80ffd6749160072dcbf80f73b0a39fe0f /widgets/table/e-tree-selection-model.h
parent279a7d4091950e26057fe36a6dcb4463c2bebb30 (diff)
downloadgsoc2013-evolution-40dff989475d31e3d24dd8ae38dc79c191358e52.tar.gz
gsoc2013-evolution-40dff989475d31e3d24dd8ae38dc79c191358e52.tar.zst
gsoc2013-evolution-40dff989475d31e3d24dd8ae38dc79c191358e52.zip
New implementation based on a tree instead of a hash table.
2001-03-31 Christopher James Lahey <clahey@ximian.com> * e-tree-selection-model.c, e-tree-selection-model.h: New implementation based on a tree instead of a hash table. * e-tree-sorted.c, e-tree-sorted.h: Added e_tree_sorted_num_children. svn path=/trunk/; revision=9070
Diffstat (limited to 'widgets/table/e-tree-selection-model.h')
-rw-r--r--widgets/table/e-tree-selection-model.h13
1 files changed, 10 insertions, 3 deletions
diff --git a/widgets/table/e-tree-selection-model.h b/widgets/table/e-tree-selection-model.h
index 0d28f47c90..5a591053a0 100644
--- a/widgets/table/e-tree-selection-model.h
+++ b/widgets/table/e-tree-selection-model.h
@@ -14,6 +14,11 @@
extern "C" {
#endif /* __cplusplus */
+typedef void (*ETreeForeachFunc) (ETreePath path,
+ gpointer closure);
+
+typedef struct ETreeSelectionModelNode ETreeSelectionModelNode;
+
#define E_TREE_SELECTION_MODEL_TYPE (e_tree_selection_model_get_type ())
#define E_TREE_SELECTION_MODEL(o) (GTK_CHECK_CAST ((o), E_TREE_SELECTION_MODEL_TYPE, ETreeSelectionModel))
#define E_TREE_SELECTION_MODEL_CLASS(k) (GTK_CHECK_CLASS_CAST((k), E_TREE_SELECTION_MODEL_TYPE, ETreeSelectionModelClass))
@@ -27,9 +32,7 @@ typedef struct {
ETreeSorted *ets;
ETreeModel *model;
- GHashTable *data;
-
- gboolean invert_selection;
+ ETreeSelectionModelNode *root;
ETreePath cursor_path;
gint cursor_col;
@@ -47,8 +50,12 @@ typedef struct {
ESelectionModelClass parent_class;
} ETreeSelectionModelClass;
+
GtkType e_tree_selection_model_get_type (void);
ESelectionModel *e_tree_selection_model_new (void);
+void e_tree_selection_model_foreach (ETreeSelectionModel *etsm,
+ ETreeForeachFunc callback,
+ gpointer closure);
#ifdef __cplusplus
}