summaryrefslogtreecommitdiffstats
path: root/src/sp-filter-primitive.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/sp-filter-primitive.h')
-rw-r--r--src/sp-filter-primitive.h27
1 files changed, 26 insertions, 1 deletions
diff --git a/src/sp-filter-primitive.h b/src/sp-filter-primitive.h
index 60104047e..38fd566f7 100644
--- a/src/sp-filter-primitive.h
+++ b/src/sp-filter-primitive.h
@@ -31,8 +31,12 @@ class Filter;
class FilterPrimitive;
} }
+class CFilterPrimitive;
+
+class SPFilterPrimitive : public SPObject {
+public:
+ CFilterPrimitive* cfilterprimitive;
-struct SPFilterPrimitive : public SPObject {
int image_in, image_out;
/* filter primitive subregion */
@@ -44,6 +48,27 @@ struct SPFilterPrimitiveClass {
void (* build_renderer)(SPFilterPrimitive*, Inkscape::Filters::Filter*);
};
+class CFilterPrimitive : public CObject {
+public:
+ CFilterPrimitive(SPFilterPrimitive* fp);
+ virtual ~CFilterPrimitive();
+
+ virtual void onBuild(SPDocument* doc, Inkscape::XML::Node* repr);
+ virtual void onRelease();
+
+ virtual void onSet(unsigned int key, const gchar* value);
+
+ virtual void onUpdate(SPCtx* ctx, unsigned int flags);
+
+ virtual Inkscape::XML::Node* onWrite(Inkscape::XML::Document* doc, Inkscape::XML::Node* repr, guint flags);
+
+ virtual void onBuildRenderer(Inkscape::Filters::Filter* filter);
+
+private:
+ SPFilterPrimitive* spfilterprimitive;
+};
+
+
GType sp_filter_primitive_get_type (void);
/* Common initialization for filter primitives */