Logo Search packages:      
Sourcecode: inkscape version File versions  Download package

helper-observer.h

#ifndef __XML_HELPER_OBSERVER__
#define __XML_HELPER_OBSERVER__

#include "node-observer.h"
#include "node.h"
#include "../sp-object.h"
//#include "../sp-object-repr.h"
#include <sigc++/sigc++.h>

namespace Inkscape {
    namespace XML {
        class Node;

            // Very simple observer that just emits a signal if anything happens to a node
00015             class SignalObserver : public NodeObserver
            {
            public:
                  SignalObserver();

                  // Add this observer to the SPObject and remove it from any previous object
                  void set(SPObject* o);
                  void notifyChildAdded(Node&, Node&, Node*);
                  void notifyChildRemoved(Node&, Node&, Node*);
                  void notifyChildOrderChanged(Node&, Node&, Node*, Node*);
                  void notifyContentChanged(Node&, Util::ptr_shared<char>, Util::ptr_shared<char>);
                  void notifyAttributeChanged(Node&, GQuark, Util::ptr_shared<char>, Util::ptr_shared<char>);
                  sigc::signal<void>& signal_changed();
            private:
                  sigc::signal<void> _signal_changed;
                  SPObject* _oldsel;
            };
      }
}

#endif //#ifndef __XML_HELPER_OBSERVER__

Generated by  Doxygen 1.6.0   Back to index