summaryrefslogtreecommitdiff
path: root/desktop/tree.h
diff options
context:
space:
mode:
authorJohn Mark Bell <jmb@netsurf-browser.org>2005-12-31 06:17:36 +0000
committerJohn Mark Bell <jmb@netsurf-browser.org>2005-12-31 06:17:36 +0000
commit6916d94356c03fbfc44293ba824519f5deed52cb (patch)
tree0f4af53dec96915660ef738eec350ea9f6cd850d /desktop/tree.h
parent43d4cfecf72e04a459c2fe4bdbe72d9d8cbf3f19 (diff)
downloadnetsurf-6916d94356c03fbfc44293ba824519f5deed52cb.tar.gz
netsurf-6916d94356c03fbfc44293ba824519f5deed52cb.tar.bz2
[project @ 2005-12-31 06:17:36 by jmb]
Optimise degenerate trees by storing child tail pointer svn path=/import/netsurf/; revision=1924
Diffstat (limited to 'desktop/tree.h')
-rw-r--r--desktop/tree.h3
1 files changed, 2 insertions, 1 deletions
diff --git a/desktop/tree.h b/desktop/tree.h
index 1c92b9f2f..b025195c2 100644
--- a/desktop/tree.h
+++ b/desktop/tree.h
@@ -69,6 +69,7 @@ struct node {
struct node_element data; /* <-- Data to display */
struct node *parent; /* <-- Parent entry (NULL for root) */
struct node *child; /* <-- First child */
+ struct node *last_child; /* <-- Last child */
struct node *previous; /* <-- Previous child of the parent */
struct node *next; /* <-- Next child of the parent */
@@ -97,7 +98,7 @@ void tree_initialise(struct tree *tree);
void tree_initialise_nodes(struct node *root);
void tree_handle_node_changed(struct tree *tree, struct node *node,
bool recalculate_sizes, bool expansion);
-void tree_handle_node_element_changed(struct tree *tree,
+void tree_handle_node_element_changed(struct tree *tree,
struct node_element *element);
void tree_recalculate_node(struct node *node, bool recalculate_sizes);
void tree_recalculate_node_positions(struct node *root);