diff options
author | Jonathan Blandford <jrb@redhat.com> | 2001-12-04 23:49:57 +0000 |
---|---|---|
committer | Jonathan Blandford <jrb@src.gnome.org> | 2001-12-04 23:49:57 +0000 |
commit | d1a858c8371d849e2fca3b306e6076c8241d3943 (patch) | |
tree | cac03e2a4704eb52d90eed6bebc59c43d50ca721 /gtk/gtkrbtree.h | |
parent | 57506c438b37586a189330e7023682f56ed58c7f (diff) | |
download | gtk+-d1a858c8371d849e2fca3b306e6076c8241d3943.tar.gz |
Minor fix.
Tue Dec 4 18:38:35 2001 Jonathan Blandford <jrb@redhat.com>
* demos/gtk-demo/main.c: (create_tree): Minor fix.
* docs/tree-column-sizing.txt: Update
* gtk/gtkrbtree.[ch]: Massive work to support validation.
* gtk/gtktreemodel.c: Doc fixes.
* gtk/gtktreeview.c: Incremental reflow added.
* gtk/gtktreeviewcolumn.c: ditto
* gtk/gtktreeviewcolumn.h: ditto
Diffstat (limited to 'gtk/gtkrbtree.h')
-rw-r--r-- | gtk/gtkrbtree.h | 20 |
1 files changed, 16 insertions, 4 deletions
diff --git a/gtk/gtkrbtree.h b/gtk/gtkrbtree.h index 793b8691ed..9db2ae2c26 100644 --- a/gtk/gtkrbtree.h +++ b/gtk/gtkrbtree.h @@ -37,8 +37,16 @@ typedef enum GTK_RBNODE_IS_SEMI_COLLAPSED = 1 << 5, GTK_RBNODE_IS_SEMI_EXPANDED = 1 << 6, GTK_RBNODE_INVALID = 1 << 7, - GTK_RBNODE_DESCENDANTS_INVALID = 1 << 8, - GTK_RBNODE_NON_COLORS = GTK_RBNODE_IS_PARENT | GTK_RBNODE_IS_SELECTED | GTK_RBNODE_IS_PRELIT | GTK_RBNODE_IS_SEMI_COLLAPSED | GTK_RBNODE_IS_SEMI_EXPANDED | GTK_RBNODE_INVALID | GTK_RBNODE_DESCENDANTS_INVALID + GTK_RBNODE_COLUMN_INVALID = 1 << 8, + GTK_RBNODE_DESCENDANTS_INVALID = 1 << 9, + GTK_RBNODE_NON_COLORS = GTK_RBNODE_IS_PARENT | + GTK_RBNODE_IS_SELECTED | + GTK_RBNODE_IS_PRELIT | + GTK_RBNODE_IS_SEMI_COLLAPSED | + GTK_RBNODE_IS_SEMI_EXPANDED | + GTK_RBNODE_INVALID | + GTK_RBNODE_COLUMN_INVALID | + GTK_RBNODE_DESCENDANTS_INVALID } GtkRBNodeColor; typedef struct _GtkRBTree GtkRBTree; @@ -93,6 +101,7 @@ struct _GtkRBNode GtkRBTree *children; }; + #define GTK_RBNODE_GET_COLOR(node) (node?(((node->flags>K_RBNODE_RED)==GTK_RBNODE_RED)?GTK_RBNODE_RED:GTK_RBNODE_BLACK):GTK_RBNODE_BLACK) #define GTK_RBNODE_SET_COLOR(node,color) if((node->flags&color)!=color)node->flags=node->flags^(GTK_RBNODE_RED|GTK_RBNODE_BLACK) #define GTK_RBNODE_GET_HEIGHT(node) (node->offset-(node->left->offset+node->right->offset+(node->children?node->children->root->offset:0))) @@ -109,10 +118,12 @@ void _gtk_rbtree_remove (GtkRBTree *tree); void _gtk_rbtree_destroy (GtkRBTree *tree); GtkRBNode *_gtk_rbtree_insert_before (GtkRBTree *tree, GtkRBNode *node, - gint height); + gint height, + gboolean valid); GtkRBNode *_gtk_rbtree_insert_after (GtkRBTree *tree, GtkRBNode *node, - gint height); + gint height, + gboolean valid); void _gtk_rbtree_remove_node (GtkRBTree *tree, GtkRBNode *node); void _gtk_rbtree_reorder (GtkRBTree *tree, @@ -127,6 +138,7 @@ void _gtk_rbtree_node_mark_invalid(GtkRBTree *tree, GtkRBNode *node); void _gtk_rbtree_node_mark_valid (GtkRBTree *tree, GtkRBNode *node); +void _gtk_rbtree_column_invalid (GtkRBTree *tree); gint _gtk_rbtree_node_find_offset (GtkRBTree *tree, GtkRBNode *node); gint _gtk_rbtree_node_find_parity (GtkRBTree *tree, |