diff options
| author | MenTaLguY <mental@rydia.net> | 2007-07-01 20:08:45 +0000 |
|---|---|---|
| committer | mental <mental@users.sourceforge.net> | 2007-07-01 20:08:45 +0000 |
| commit | cf293d81a6c979f0266a86f5f8494551ac9c62b9 (patch) | |
| tree | 9168fb9f05e8b1f190bb12bd3024402088dc188d /src/xml/subtree.cpp | |
| parent | initial implementation of XML::Subtree API for tracking changes on a (diff) | |
| download | inkscape-cf293d81a6c979f0266a86f5f8494551ac9c62b9.tar.gz inkscape-cf293d81a6c979f0266a86f5f8494551ac9c62b9.zip | |
was trying to have my cake and eat it too, memory-management-wise ... for
now, manual management for Subtree
(bzr r3159)
Diffstat (limited to 'src/xml/subtree.cpp')
| -rw-r--r-- | src/xml/subtree.cpp | 17 |
1 files changed, 4 insertions, 13 deletions
diff --git a/src/xml/subtree.cpp b/src/xml/subtree.cpp index 7c549e7d7..f19bf055a 100644 --- a/src/xml/subtree.cpp +++ b/src/xml/subtree.cpp @@ -32,25 +32,16 @@ void recursively(void (Node::*m)(NodeObserver &observer), } -Subtree::Subtree(Node &root) : _root(&root) { - recursively(&Node::addObserver, *_root, *this); +Subtree::Subtree(Node &root) : _root(root) { + recursively(&Node::addObserver, _root, *this); } Subtree::~Subtree() { - finish(); -} - -void Subtree::finish() { - if (_root) { - recursively(&Node::removeObserver, *_root, *this); - _root = NULL; - } + recursively(&Node::removeObserver, _root, *this); } void Subtree::synthesizeEvents(NodeObserver &observer) { - if (_root) { - recursively(&Node::synthesizeEvents, *_root, *this); - } + recursively(&Node::synthesizeEvents, _root, *this); } void Subtree::addObserver(NodeObserver &observer) { |
