diff options
author | Chris Toshok <toshok@helixcode.com> | 2000-10-16 07:17:56 +0800 |
---|---|---|
committer | Chris Toshok <toshok@src.gnome.org> | 2000-10-16 07:17:56 +0800 |
commit | ec300909290ef9ae3397ab7111c7777d7eda28b1 (patch) | |
tree | cc0762eaae2e969286e416dfbf4c99f91811afa2 /e-util | |
parent | be894a163a038fc60e50c435462571923f600f01 (diff) | |
download | gsoc2013-evolution-ec300909290ef9ae3397ab7111c7777d7eda28b1.tar gsoc2013-evolution-ec300909290ef9ae3397ab7111c7777d7eda28b1.tar.gz gsoc2013-evolution-ec300909290ef9ae3397ab7111c7777d7eda28b1.tar.bz2 gsoc2013-evolution-ec300909290ef9ae3397ab7111c7777d7eda28b1.tar.lz gsoc2013-evolution-ec300909290ef9ae3397ab7111c7777d7eda28b1.tar.xz gsoc2013-evolution-ec300909290ef9ae3397ab7111c7777d7eda28b1.tar.zst gsoc2013-evolution-ec300909290ef9ae3397ab7111c7777d7eda28b1.zip |
get rid of ENode type, as everything in it is now in ETreePath, and add
2000-10-15 Chris Toshok <toshok@helixcode.com>
* e-tree-model.c: get rid of ENode type, as everything in it is
now in ETreePath, and add parent/sibling/child pointers to
ETreePath. everywhere where GNode/ENode were used, we just use
ETreePath now.
(e_tree_path_depth): new function.
(e_tree_path_insert): new function.
(e_tree_path_unlink): new function.
(e_tree_model_node_traverse): new function.
(etree_get_first_child): new virtual function impl.
(etree_get_last_child): same.
(e_tree_model_class_init): fill in function pointers for
get_first_child/get_last_child.
(e_tree_model_node_get_first_child): new function.
(e_tree_model_node_get_last_child): new function.
(e_tree_model_node_depth): g_node_depth -> e_tree_path_depth.
(e_tree_model_node_insert): modify to use ETreePath and new
e_tree_path functions. Prepends and appends are now both constant
time.
(child_remove): modify for e_tree_model_node_traverse.
(e_tree_model_node_remove): same, and use e_tree_path functions.
(e_tree_model_node_insert_before): add a loop here to figure out
the position, since it's the only place we care about the child
position.
(e_tree_model_node_sort): rework to accomodate new e_tree_path
functions, and put the e_tree_model_node_set_expanded calls in a
separate loop after all the children have been added.
* e-tree-model.h: add prototypes and virtual functions for more
tree traversal operations (get_first_child, get_last_child), as
well as a new function to traverse depth first the descendents of
a node (e_tree_model_node_traverse), much like g_node_traverse
(G_IN_ORDER). Also, ETreePath is an opaque type now, and is not a
GNode.
svn path=/trunk/; revision=5932
Diffstat (limited to 'e-util')
0 files changed, 0 insertions, 0 deletions