From fd03473c711a20ed4eaf0e309caff1a28a83010e Mon Sep 17 00:00:00 2001 From: Christopher James Lahey Date: Thu, 22 Mar 2001 06:56:15 +0000 Subject: New function to allow you to do non live sorts with weird rules. 2001-03-22 Christopher James Lahey * e-tree-memory.c, e-tree-memory.h (e_tree_memory_sort_node): New function to allow you to do non live sorts with weird rules. svn path=/trunk/; revision=8881 --- widgets/table/e-tree-memory.h | 48 ++++++++++++++++++++++++++++++++----------- 1 file changed, 36 insertions(+), 12 deletions(-) (limited to 'widgets/table/e-tree-memory.h') diff --git a/widgets/table/e-tree-memory.h b/widgets/table/e-tree-memory.h index 264df86acb..633594c2d5 100644 --- a/widgets/table/e-tree-memory.h +++ b/widgets/table/e-tree-memory.h @@ -20,6 +20,8 @@ typedef struct ETreeMemory ETreeMemory; typedef struct ETreeMemoryPriv ETreeMemoryPriv; typedef struct ETreeMemoryClass ETreeMemoryClass; +typedef int (*ETreeMemorySortCallback) (ETreeMemory *etmm, ETreePath path1, ETreePath path2, gpointer closure); + struct ETreeMemory { ETreeModel base; ETreeMemoryPriv *priv; @@ -29,26 +31,48 @@ struct ETreeMemoryClass { ETreeModelClass parent_class; }; -GtkType e_tree_memory_get_type (void); -void e_tree_memory_construct (ETreeMemory *etree); -ETreeMemory *e_tree_memory_new (void); + +GtkType e_tree_memory_get_type (void); +void e_tree_memory_construct (ETreeMemory *etree); +ETreeMemory *e_tree_memory_new (void); /* node operations */ -ETreePath e_tree_memory_node_insert (ETreeMemory *etree, ETreePath parent, int position, gpointer node_data); -ETreePath e_tree_memory_node_insert_id (ETreeMemory *etree, ETreePath parent, int position, gpointer node_data, char *id); -ETreePath e_tree_memory_node_insert_before (ETreeMemory *etree, ETreePath parent, ETreePath sibling, gpointer node_data); -gpointer e_tree_memory_node_remove (ETreeMemory *etree, ETreePath path); +ETreePath e_tree_memory_node_insert (ETreeMemory *etree, + ETreePath parent, + int position, + gpointer node_data); +ETreePath e_tree_memory_node_insert_id (ETreeMemory *etree, + ETreePath parent, + int position, + gpointer node_data, + char *id); +ETreePath e_tree_memory_node_insert_before (ETreeMemory *etree, + ETreePath parent, + ETreePath sibling, + gpointer node_data); +gpointer e_tree_memory_node_remove (ETreeMemory *etree, + ETreePath path); /* Freeze and thaw */ -void e_tree_memory_freeze (ETreeMemory *etree); -void e_tree_memory_thaw (ETreeMemory *etree); +void e_tree_memory_freeze (ETreeMemory *etree); +void e_tree_memory_thaw (ETreeMemory *etree); -void e_tree_memory_set_expanded_default (ETreeMemory *etree, gboolean expanded); -gpointer e_tree_memory_node_get_data (ETreeMemory *etm, ETreePath node); -void e_tree_memory_node_set_data (ETreeMemory *etm, ETreePath node, gpointer node_data); + +void e_tree_memory_set_expanded_default (ETreeMemory *etree, + gboolean expanded); +gpointer e_tree_memory_node_get_data (ETreeMemory *etm, + ETreePath node); +void e_tree_memory_node_set_data (ETreeMemory *etm, + ETreePath node, + gpointer node_data); +void e_tree_memory_sort_node (ETreeMemory *etm, + ETreePath node, + ETreeMemorySortCallback callback, + gpointer user_data); #ifdef __cplusplus } #endif /* __cplusplus */ #endif /* _E_TREE_MEMORY_H */ + -- cgit v1.2.3