/*
5 * Authors: see git history
7 * Copyright (C) 2018 Authors
8 * Released under GNU GPL v2+, read the file
'COPYING' for more information.
Interface for refcounted XML nodes.
virtual void addObserver(NodeObserver &observer)=0
Add an object that will be notified of the changes to this node.
virtual void removeObserver(NodeObserver &observer)=0
Remove an object from the list of observers.
~SignalObserver() override
void notifyAttributeChanged(Node &, GQuark, Util::ptr_shared, Util::ptr_shared) override
Attribute change callback.
void notifyElementNameChanged(Node &, GQuark, GQuark) override
Element name change callback.
void notifyChildOrderChanged(Node &, Node &, Node *, Node *) override
Child order change callback.
void notifyChildRemoved(Node &, Node &, Node *) override
Child removal callback.
void notifyContentChanged(Node &, Util::ptr_shared, Util::ptr_shared) override
Content change callback.
sigc::signal< void()> & signal_changed()
void notifyChildAdded(Node &, Node &, Node *) override
Child addition callback.
sigc::signal< void()> _signal_changed
SPObject is an abstract base class of all of the document nodes at the SVG document level.
Inkscape::XML::Node * getRepr()
Returns the XML representation of tree.
TODO: insert short description here.
Helper class to stream background task notifications as a series of messages.
SPObject * sp_object_unref(SPObject *object, SPObject *owner)
Decrease reference count of object, with possible debugging and finalization.
SPObject * sp_object_ref(SPObject *object, SPObject *owner)
Increase reference count of object, with possible debugging.