diff options
author | Richard Wilson <rjw@netsurf-browser.org> | 2005-02-08 23:34:56 +0000 |
---|---|---|
committer | Richard Wilson <rjw@netsurf-browser.org> | 2005-02-08 23:34:56 +0000 |
commit | acb914b90af6f937c73c153a818c97baa13eb8c4 (patch) | |
tree | 8881e969a8bed65dabd1e5a44342f1c4725cc185 /desktop/tree.h | |
parent | 91ec410b7cf03e301caf140a719adf1dd985ad92 (diff) | |
download | netsurf-acb914b90af6f937c73c153a818c97baa13eb8c4.tar.gz netsurf-acb914b90af6f937c73c153a818c97baa13eb8c4.tar.bz2 |
[project @ 2005-02-08 23:34:56 by rjw]
Implement nodes being retained in memory after deletion, stop nodes being able to be moved within themselves.
svn path=/import/netsurf/; revision=1507
Diffstat (limited to 'desktop/tree.h')
-rw-r--r-- | desktop/tree.h | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/desktop/tree.h b/desktop/tree.h index 670eb55f4..d2e1e5cfd 100644 --- a/desktop/tree.h +++ b/desktop/tree.h @@ -18,6 +18,7 @@ #define TREE_ELEMENT_ADDED 2 #define TREE_ELEMENT_LAST_VISIT 3 #define TREE_ELEMENT_VISITS 4 +#define TREE_ELEMENT_VISITED 5 #define NODE_INSTEP 40 @@ -55,6 +56,8 @@ struct node { bool expanded; /* <-- Whether the node is expanded */ bool folder; /* <-- Whether the node is a folder */ bool editable; /* <-- Whether the node is editable */ + bool retain_in_memory; /* <-- Whether the node remains in memory after deletion */ + bool deleted; /* <-- Whether the node is currently deleted */ bool processing; /* <-- Internal flag used when moving */ struct node_element_box box; /* <-- Bounding box of all elements */ struct node_element data; /* <-- Data to display */ @@ -89,6 +92,8 @@ 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, struct node_element *element); +void tree_recalculate_node(struct node *node, bool recalculate_sizes); +void tree_recalculate_node_positions(struct node *root); struct node *tree_get_node_at(struct node *root, int x, int y, bool *furniture); struct node_element *tree_get_node_element_at(struct node *node, int x, int y, bool *furniture); @@ -107,6 +112,8 @@ void tree_set_node_sprite(struct node *node, const char *sprite, struct node *tree_create_URL_node(struct node *parent, const char *title, const char *url, int filetype, int add_date, int last_date, int visits); +struct node *tree_create_URL_node_brief(struct node *parent, const char *title, + const char *url, int filetype, int visit_date); void tree_reset_URL_nodes(struct tree *tree, struct node *node, bool selected); void tree_set_node_expanded(struct node *node, bool expanded); void tree_set_node_selected(struct tree *tree, struct node *node, |