diff options
| author | MenTaLguY <mental@rydia.net> | 2007-07-04 23:27:58 +0000 |
|---|---|---|
| committer | mental <mental@users.sourceforge.net> | 2007-07-04 23:27:58 +0000 |
| commit | 270f8f25ff737fe755e87c057e93bdb9d840faa8 (patch) | |
| tree | bcd33fdb34b2e5ad0ede9aa2b1f7400d252f54e1 /src/xml/simple-node.h | |
| parent | First stab at a connection UI from Nick (diff) | |
| download | inkscape-270f8f25ff737fe755e87c057e93bdb9d840faa8.tar.gz inkscape-270f8f25ff737fe755e87c057e93bdb9d840faa8.zip | |
make subtree monitoring part of XML::Node's interface
(bzr r3186)
Diffstat (limited to 'src/xml/simple-node.h')
| -rw-r--r-- | src/xml/simple-node.h | 11 |
1 files changed, 10 insertions, 1 deletions
diff --git a/src/xml/simple-node.h b/src/xml/simple-node.h index c843dadc5..b4439e289 100644 --- a/src/xml/simple-node.h +++ b/src/xml/simple-node.h @@ -103,6 +103,13 @@ public: _observers.remove(observer); } + void addSubtreeObserver(NodeObserver &observer) { + _subtree_observers.add(observer); + } + void removeSubtreeObserver(NodeObserver &observer) { + _subtree_observers.remove(observer); + } + protected: SimpleNode(int code); SimpleNode(SimpleNode const &repr); @@ -110,7 +117,8 @@ protected: virtual SimpleNode *_duplicate(Document *doc) const=0; public: // ideally these should be protected somehow... - void _setParent(Node *parent) { _parent = parent; } + NodeObserver &_subtreeObservers() { return _subtree_observers; } + void _setParent(Node *parent); void _setNext(Node *next) { _next = next; } void _bindDocument(Document &document); @@ -140,6 +148,7 @@ private: Node *_last_child; CompositeNodeObserver _observers; + CompositeNodeObserver _subtree_observers; }; } |
