Code

Filter effects dialog:
[inkscape.git] / src / sp-flowdiv.cpp
index 61a5ec430064d56d5fbbc74d0292d4259817a690..8c84d6128d278edb7242b0785ba9908aec7f0ae6 100644 (file)
@@ -15,6 +15,7 @@
 
 #include "sp-flowdiv.h"
 #include "sp-string.h"
+#include "document.h"
 
 static void sp_flowdiv_class_init (SPFlowdivClass *klass);
 static void sp_flowdiv_init (SPFlowdiv *group);
@@ -88,12 +89,12 @@ sp_flowdiv_class_init (SPFlowdivClass *klass)
 {
        GObjectClass * object_class;
        SPObjectClass * sp_object_class;
-       
+
        object_class = (GObjectClass *) klass;
        sp_object_class = (SPObjectClass *) klass;
-       
+
        flowdiv_parent_class = (SPItemClass *)g_type_class_ref (SP_TYPE_ITEM);
-       
+
        sp_object_class->build = sp_flowdiv_build;
        sp_object_class->set = sp_flowdiv_set;
        sp_object_class->release = sp_flowdiv_release;
@@ -121,10 +122,10 @@ sp_flowdiv_update (SPObject *object, SPCtx *ctx, unsigned int flags)
 
        if (((SPObjectClass *) (flowdiv_parent_class))->update)
                ((SPObjectClass *) (flowdiv_parent_class))->update (object, ctx, flags);
-       
+
        if (flags & SP_OBJECT_MODIFIED_FLAG) flags |= SP_OBJECT_PARENT_MODIFIED_FLAG;
        flags &= SP_OBJECT_MODIFIED_CASCADE;
-       
+
        GSList* l = NULL;
        for (SPObject *child = sp_object_first_child(object) ; child != NULL ; child = SP_OBJECT_NEXT(child) ) {
                g_object_ref (G_OBJECT (child));
@@ -152,13 +153,13 @@ sp_flowdiv_modified (SPObject *object, guint flags)
 {
        SPObject *child;
        GSList *l;
-       
+
        if (((SPObjectClass *) (flowdiv_parent_class))->modified)
                ((SPObjectClass *) (flowdiv_parent_class))->modified (object, flags);
-       
+
        if (flags & SP_OBJECT_MODIFIED_FLAG) flags |= SP_OBJECT_PARENT_MODIFIED_FLAG;
        flags &= SP_OBJECT_MODIFIED_CASCADE;
-       
+
        l = NULL;
        for (child = sp_object_first_child(object) ; child != NULL ; child = SP_OBJECT_NEXT(child) ) {
                g_object_ref (G_OBJECT (child));
@@ -195,9 +196,10 @@ static Inkscape::XML::Node *
 sp_flowdiv_write (SPObject *object, Inkscape::XML::Node *repr, guint flags)
 {
 //     SPFlowdiv *group = SP_FLOWDIV (object);
-       
+
        if ( flags&SP_OBJECT_WRITE_BUILD ) {
-               if ( repr == NULL ) repr = sp_repr_new ("svg:flowDiv");
+               Inkscape::XML::Document *xml_doc = sp_document_repr_doc(SP_OBJECT_DOCUMENT(object));
+               if ( repr == NULL ) repr = xml_doc->createElement("svg:flowDiv");
                GSList *l = NULL;
                for (SPObject* child = sp_object_first_child(object) ; child != NULL ; child = SP_OBJECT_NEXT(child) ) {
                        Inkscape::XML::Node* c_repr=NULL;
@@ -206,7 +208,7 @@ sp_flowdiv_write (SPObject *object, Inkscape::XML::Node *repr, guint flags)
                        } else if ( SP_IS_FLOWPARA(child) ) {
                                c_repr = child->updateRepr(NULL, flags);
                        } else if ( SP_IS_STRING(child) ) {
-                               c_repr = sp_repr_new_text(SP_STRING(child)->string.c_str());
+                               c_repr = xml_doc->createTextNode(SP_STRING(child)->string.c_str());
                        }
                        if ( c_repr ) l = g_slist_prepend (l, c_repr);
                }
@@ -226,10 +228,10 @@ sp_flowdiv_write (SPObject *object, Inkscape::XML::Node *repr, guint flags)
                        }
                }
        }
-               
+
        if (((SPObjectClass *) (flowdiv_parent_class))->write)
                ((SPObjectClass *) (flowdiv_parent_class))->write (object, repr, flags);
-       
+
        return repr;
 }
 
@@ -265,12 +267,12 @@ sp_flowtspan_class_init (SPFlowtspanClass *klass)
 {
        GObjectClass * object_class;
        SPObjectClass * sp_object_class;
-       
+
        object_class = (GObjectClass *) klass;
        sp_object_class = (SPObjectClass *) klass;
 
        flowtspan_parent_class = (SPItemClass *)g_type_class_ref (SP_TYPE_ITEM);
-       
+
        sp_object_class->build = sp_flowtspan_build;
        sp_object_class->set = sp_flowtspan_set;
        sp_object_class->release = sp_flowtspan_release;
@@ -296,13 +298,13 @@ sp_flowtspan_update (SPObject *object, SPCtx *ctx, unsigned int flags)
 //     SPFlowtspan *group=SP_FLOWTSPAN (object);
        SPItemCtx *ictx=(SPItemCtx *) ctx;
        SPItemCtx cctx=*ictx;
-       
+
        if (((SPObjectClass *) (flowtspan_parent_class))->update)
                ((SPObjectClass *) (flowtspan_parent_class))->update (object, ctx, flags);
-       
+
        if (flags & SP_OBJECT_MODIFIED_FLAG) flags |= SP_OBJECT_PARENT_MODIFIED_FLAG;
        flags &= SP_OBJECT_MODIFIED_CASCADE;
-       
+
        GSList* l = NULL;
        for (SPObject *child = sp_object_first_child(object) ; child != NULL ; child = SP_OBJECT_NEXT(child) ) {
                g_object_ref (G_OBJECT (child));
@@ -330,13 +332,13 @@ sp_flowtspan_modified (SPObject *object, guint flags)
 {
        SPObject *child;
        GSList *l;
-       
+
        if (((SPObjectClass *) (flowtspan_parent_class))->modified)
                ((SPObjectClass *) (flowtspan_parent_class))->modified (object, flags);
-       
+
        if (flags & SP_OBJECT_MODIFIED_FLAG) flags |= SP_OBJECT_PARENT_MODIFIED_FLAG;
        flags &= SP_OBJECT_MODIFIED_CASCADE;
-       
+
        l = NULL;
        for (child = sp_object_first_child(object) ; child != NULL ; child = SP_OBJECT_NEXT(child) ) {
                g_object_ref (G_OBJECT (child));
@@ -368,7 +370,8 @@ static Inkscape::XML::Node *
 sp_flowtspan_write (SPObject *object, Inkscape::XML::Node *repr, guint flags)
 {
        if ( flags&SP_OBJECT_WRITE_BUILD ) {
-               if ( repr == NULL ) repr = sp_repr_new ("svg:flowSpan");
+               Inkscape::XML::Document *xml_doc = sp_document_repr_doc(SP_OBJECT_DOCUMENT(object));
+               if ( repr == NULL ) repr = xml_doc->createElement("svg:flowSpan");
                GSList *l = NULL;
                for (SPObject* child = sp_object_first_child(object) ; child != NULL ; child = SP_OBJECT_NEXT(child) ) {
                        Inkscape::XML::Node* c_repr=NULL;
@@ -377,7 +380,7 @@ sp_flowtspan_write (SPObject *object, Inkscape::XML::Node *repr, guint flags)
                        } else if ( SP_IS_FLOWPARA (child) ) {
                                        c_repr = child->updateRepr(NULL, flags);
                        } else if ( SP_IS_STRING(child) ) {
-                               c_repr = sp_repr_new_text(SP_STRING(child)->string.c_str());
+                               c_repr = xml_doc->createTextNode(SP_STRING(child)->string.c_str());
                        }
                        if ( c_repr ) l = g_slist_prepend (l, c_repr);
                }
@@ -397,10 +400,10 @@ sp_flowtspan_write (SPObject *object, Inkscape::XML::Node *repr, guint flags)
                        }
                }
        }
-               
+
        if (((SPObjectClass *) (flowtspan_parent_class))->write)
                ((SPObjectClass *) (flowtspan_parent_class))->write (object, repr, flags);
-       
+
        return repr;
 }
 
@@ -437,12 +440,12 @@ sp_flowpara_class_init (SPFlowparaClass *klass)
 {
        GObjectClass * object_class;
        SPObjectClass * sp_object_class;
-       
+
        object_class = (GObjectClass *) klass;
        sp_object_class = (SPObjectClass *) klass;
-       
+
        flowpara_parent_class = (SPItemClass *)g_type_class_ref (SP_TYPE_ITEM);
-       
+
        sp_object_class->build = sp_flowpara_build;
        sp_object_class->set = sp_flowpara_set;
        sp_object_class->release = sp_flowpara_release;
@@ -467,13 +470,13 @@ sp_flowpara_update (SPObject *object, SPCtx *ctx, unsigned int flags)
 {
        SPItemCtx *ictx=(SPItemCtx *) ctx;
        SPItemCtx cctx=*ictx;
-       
+
        if (((SPObjectClass *) (flowpara_parent_class))->update)
                ((SPObjectClass *) (flowpara_parent_class))->update (object, ctx, flags);
-       
+
        if (flags & SP_OBJECT_MODIFIED_FLAG) flags |= SP_OBJECT_PARENT_MODIFIED_FLAG;
        flags &= SP_OBJECT_MODIFIED_CASCADE;
-       
+
        GSList* l = NULL;
        for (SPObject *child = sp_object_first_child(object) ; child != NULL ; child = SP_OBJECT_NEXT(child) ) {
                g_object_ref (G_OBJECT (child));
@@ -501,13 +504,13 @@ sp_flowpara_modified (SPObject *object, guint flags)
 {
        SPObject *child;
        GSList *l;
-       
+
        if (((SPObjectClass *) (flowpara_parent_class))->modified)
                ((SPObjectClass *) (flowpara_parent_class))->modified (object, flags);
 
        if (flags & SP_OBJECT_MODIFIED_FLAG) flags |= SP_OBJECT_PARENT_MODIFIED_FLAG;
        flags &= SP_OBJECT_MODIFIED_CASCADE;
-       
+
        l = NULL;
        for (child = sp_object_first_child(object) ; child != NULL ; child = SP_OBJECT_NEXT(child) ) {
                g_object_ref (G_OBJECT (child));
@@ -539,9 +542,10 @@ static Inkscape::XML::Node *
 sp_flowpara_write (SPObject *object, Inkscape::XML::Node *repr, guint flags)
 {
        //      SPFlowpara *group = SP_FLOWPARA (object);
-       
+
        if ( flags&SP_OBJECT_WRITE_BUILD ) {
-               if ( repr == NULL ) repr = sp_repr_new ("svg:flowPara");
+               Inkscape::XML::Document *xml_doc = sp_document_repr_doc(SP_OBJECT_DOCUMENT(object));
+               if ( repr == NULL ) repr = xml_doc->createElement("svg:flowPara");
                GSList *l = NULL;
                for (SPObject* child = sp_object_first_child(object) ; child != NULL ; child = SP_OBJECT_NEXT(child) ) {
                        Inkscape::XML::Node* c_repr=NULL;
@@ -550,7 +554,7 @@ sp_flowpara_write (SPObject *object, Inkscape::XML::Node *repr, guint flags)
                        } else if ( SP_IS_FLOWPARA (child) ) {
                                c_repr = child->updateRepr(NULL, flags);
                        } else if ( SP_IS_STRING(child) ) {
-                               c_repr = sp_repr_new_text(SP_STRING(child)->string.c_str());
+                               c_repr = xml_doc->createTextNode(SP_STRING(child)->string.c_str());
                        }
                        if ( c_repr ) l = g_slist_prepend (l, c_repr);
                }
@@ -570,10 +574,10 @@ sp_flowpara_write (SPObject *object, Inkscape::XML::Node *repr, guint flags)
                        }
                }
        }
-               
+
        if (((SPObjectClass *) (flowpara_parent_class))->write)
                ((SPObjectClass *) (flowpara_parent_class))->write (object, repr, flags);
-       
+
        return repr;
 }
 
@@ -608,12 +612,12 @@ sp_flowline_class_init (SPFlowlineClass *klass)
 {
        GObjectClass * object_class;
        SPObjectClass * sp_object_class;
-       
+
        object_class = (GObjectClass *) klass;
        sp_object_class = (SPObjectClass *) klass;
-       
+
        flowline_parent_class = (SPObjectClass *)g_type_class_ref (SP_TYPE_OBJECT);
-       
+
        sp_object_class->release = sp_flowline_release;
        sp_object_class->write = sp_flowline_write;
        sp_object_class->modified = sp_flowline_modified;
@@ -635,7 +639,7 @@ sp_flowline_modified (SPObject *object, guint flags)
 {
        if (((SPObjectClass *) (flowline_parent_class))->modified)
                ((SPObjectClass *) (flowline_parent_class))->modified (object, flags);
-       
+
        if (flags & SP_OBJECT_MODIFIED_FLAG) flags |= SP_OBJECT_PARENT_MODIFIED_FLAG;
        flags &= SP_OBJECT_MODIFIED_CASCADE;
 }
@@ -643,13 +647,14 @@ static Inkscape::XML::Node *
 sp_flowline_write (SPObject *object, Inkscape::XML::Node *repr, guint flags)
 {
        if ( flags&SP_OBJECT_WRITE_BUILD ) {
-               if ( repr == NULL ) repr = sp_repr_new ("svg:flowLine");
+               Inkscape::XML::Document *xml_doc = sp_document_repr_doc(SP_OBJECT_DOCUMENT(object));
+               if ( repr == NULL ) repr = xml_doc->createElement("svg:flowLine");
        } else {
        }
-               
+
        if (((SPObjectClass *) (flowline_parent_class))->write)
                ((SPObjectClass *) (flowline_parent_class))->write (object, repr, flags);
-       
+
        return repr;
 }
 
@@ -684,12 +689,12 @@ sp_flowregionbreak_class_init (SPFlowregionbreakClass *klass)
 {
        GObjectClass * object_class;
        SPObjectClass * sp_object_class;
-       
+
        object_class = (GObjectClass *) klass;
        sp_object_class = (SPObjectClass *) klass;
-       
+
        flowregionbreak_parent_class = (SPObjectClass *)g_type_class_ref (SP_TYPE_OBJECT);
-       
+
        sp_object_class->release = sp_flowregionbreak_release;
        sp_object_class->write = sp_flowregionbreak_write;
        sp_object_class->modified = sp_flowregionbreak_modified;
@@ -711,7 +716,7 @@ sp_flowregionbreak_modified (SPObject *object, guint flags)
 {
        if (((SPObjectClass *) (flowregionbreak_parent_class))->modified)
                ((SPObjectClass *) (flowregionbreak_parent_class))->modified (object, flags);
-       
+
        if (flags & SP_OBJECT_MODIFIED_FLAG) flags |= SP_OBJECT_PARENT_MODIFIED_FLAG;
        flags &= SP_OBJECT_MODIFIED_CASCADE;
 }
@@ -719,12 +724,13 @@ static Inkscape::XML::Node *
 sp_flowregionbreak_write (SPObject *object, Inkscape::XML::Node *repr, guint flags)
 {
        if ( flags&SP_OBJECT_WRITE_BUILD ) {
-               if ( repr == NULL ) repr = sp_repr_new ("svg:flowLine");
+               Inkscape::XML::Document *xml_doc = sp_document_repr_doc(SP_OBJECT_DOCUMENT(object));
+               if ( repr == NULL ) repr = xml_doc->createElement("svg:flowLine");
        } else {
        }
-               
+
        if (((SPObjectClass *) (flowregionbreak_parent_class))->write)
                ((SPObjectClass *) (flowregionbreak_parent_class))->write (object, repr, flags);
-       
+
        return repr;
 }