diff options
Diffstat (limited to 'src/xml/composite-node-observer.cpp')
| -rw-r--r-- | src/xml/composite-node-observer.cpp | 17 |
1 files changed, 17 insertions, 0 deletions
diff --git a/src/xml/composite-node-observer.cpp b/src/xml/composite-node-observer.cpp index 1f9c08681..77a1bd2fd 100644 --- a/src/xml/composite-node-observer.cpp +++ b/src/xml/composite-node-observer.cpp @@ -101,6 +101,17 @@ void CompositeNodeObserver::notifyAttributeChanged( _finishIteration(); } +void CompositeNodeObserver::notifyElementNameChanged(Node& node, GQuark old_name, GQuark new_name) +{ + _startIteration(); + for (auto& iter : _active) { + if (!iter.marked) { + iter.observer.notifyElementNameChanged(node, old_name, new_name); + } + } + _finishIteration(); +} + void CompositeNodeObserver::add(NodeObserver &observer) { if (_iterating) { _pending.push_back(ObserverRecord(observer)); @@ -148,6 +159,12 @@ public: vector.attr_changed(&node, g_quark_to_string(name), old_value, new_value, false, data); } } + + void notifyElementNameChanged(Node& node, GQuark old_name, GQuark new_name) override { + if (vector.element_name_changed) { + vector.element_name_changed(&node, g_quark_to_string(old_name), g_quark_to_string(new_name), data); + } + } }; } |
