Code

now that selection description includes style (filtered, clipped), we need to update...
[inkscape.git] / src / sp-paint-server.h
index 9589b04d35759ff6d38e793abbd17fbd4b241035..998f1556bf9d29f17df364850a2970121d061def 100644 (file)
@@ -15,8 +15,7 @@
 
 #include <libnr/nr-pixblock.h>
 #include "sp-object.h"
-
-
+#include "uri-references.h"
 
 class SPPainter;
 
@@ -50,17 +49,28 @@ struct SPPaintServer : public SPObject {
 struct SPPaintServerClass {
        SPObjectClass sp_object_class;
        /* Get SPPaint instance */
-       SPPainter * (* painter_new) (SPPaintServer *ps, NR::Matrix const &full_transform, NR::Matrix const &parent_transform, const NRRect *bbox);
+       SPPainter * (* painter_new) (SPPaintServer *ps, Geom::Matrix const &full_transform, Geom::Matrix const &parent_transform, const NRRect *bbox);
        /* Free SPPaint instance */
        void (* painter_free) (SPPaintServer *ps, SPPainter *painter);
 };
 
 GType sp_paint_server_get_type (void);
 
-SPPainter *sp_paint_server_painter_new (SPPaintServer *ps, NR::Matrix const &full_transform, NR::Matrix const &parent_transform, const NRRect *bbox);
+SPPainter *sp_paint_server_painter_new (SPPaintServer *ps, Geom::Matrix const &full_transform, Geom::Matrix const &parent_transform, const NRRect *bbox);
 
 SPPainter *sp_painter_free (SPPainter *painter);
 
-
+class SPPaintServerReference : public Inkscape::URIReference {
+public:
+        SPPaintServerReference (SPObject *obj) : URIReference(obj) {}
+        SPPaintServerReference (SPDocument *doc) : URIReference(doc) {}
+        SPPaintServer *getObject() const {
+                return (SPPaintServer *)URIReference::getObject();
+        }
+protected:
+        virtual bool _acceptObject(SPObject *obj) const {
+                return SP_IS_PAINT_SERVER (obj);
+        }
+};
 
 #endif