summaryrefslogtreecommitdiffstats
path: root/src/sp-pattern.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/sp-pattern.cpp')
-rw-r--r--src/sp-pattern.cpp108
1 files changed, 54 insertions, 54 deletions
diff --git a/src/sp-pattern.cpp b/src/sp-pattern.cpp
index 408a57195..213b57559 100644
--- a/src/sp-pattern.cpp
+++ b/src/sp-pattern.cpp
@@ -338,7 +338,7 @@ pattern_ref_changed(SPObject *old_ref, SPObject *ref, SPPattern *pat)
pat->modified_connection = ref->connectModified(sigc::bind<2>(sigc::ptr_fun(&pattern_ref_modified), pat));
}
- pattern_ref_modified (ref, 0, pat);
+ pattern_ref_modified (ref, 0, pat);
}
/**
@@ -389,56 +389,56 @@ count_pattern_hrefs(SPObject *o, SPPattern *pat)
SPPattern *pattern_chain(SPPattern *pattern)
{
- SPDocument *document = pattern->document;
+ SPDocument *document = pattern->document;
Inkscape::XML::Document *xml_doc = document->getReprDoc();
- Inkscape::XML::Node *defsrepr = document->getDefs()->getRepr();
+ Inkscape::XML::Node *defsrepr = document->getDefs()->getRepr();
- Inkscape::XML::Node *repr = xml_doc->createElement("svg:pattern");
- repr->setAttribute("inkscape:collect", "always");
- gchar *parent_ref = g_strconcat("#", pattern->getRepr()->attribute("id"), NULL);
- repr->setAttribute("xlink:href", parent_ref);
- g_free (parent_ref);
+ Inkscape::XML::Node *repr = xml_doc->createElement("svg:pattern");
+ repr->setAttribute("inkscape:collect", "always");
+ gchar *parent_ref = g_strconcat("#", pattern->getRepr()->attribute("id"), NULL);
+ repr->setAttribute("xlink:href", parent_ref);
+ g_free (parent_ref);
- defsrepr->addChild(repr, NULL);
- const gchar *child_id = repr->attribute("id");
- SPObject *child = document->getObjectById(child_id);
- g_assert (SP_IS_PATTERN (child));
+ defsrepr->addChild(repr, NULL);
+ const gchar *child_id = repr->attribute("id");
+ SPObject *child = document->getObjectById(child_id);
+ g_assert (SP_IS_PATTERN (child));
- return SP_PATTERN (child);
+ return SP_PATTERN (child);
}
SPPattern *
sp_pattern_clone_if_necessary (SPItem *item, SPPattern *pattern, const gchar *property)
{
- if (!pattern->href || pattern->hrefcount > count_pattern_hrefs(item, pattern)) {
- pattern = pattern_chain (pattern);
- gchar *href = g_strconcat("url(#", pattern->getRepr()->attribute("id"), ")", NULL);
+ if (!pattern->href || pattern->hrefcount > count_pattern_hrefs(item, pattern)) {
+ pattern = pattern_chain (pattern);
+ gchar *href = g_strconcat("url(#", pattern->getRepr()->attribute("id"), ")", NULL);
- SPCSSAttr *css = sp_repr_css_attr_new ();
- sp_repr_css_set_property (css, property, href);
- sp_repr_css_change_recursive(item->getRepr(), css, "style");
- }
- return pattern;
+ SPCSSAttr *css = sp_repr_css_attr_new ();
+ sp_repr_css_set_property (css, property, href);
+ sp_repr_css_change_recursive(item->getRepr(), css, "style");
+ }
+ return pattern;
}
void
sp_pattern_transform_multiply (SPPattern *pattern, Geom::Affine postmul, bool set)
{
- // this formula is for a different interpretation of pattern transforms as described in (*) in sp-pattern.cpp
- // for it to work, we also need sp_object_read_attr( item, "transform");
- //pattern->patternTransform = premul * item->transform * pattern->patternTransform * item->transform.inverse() * postmul;
-
- // otherwise the formula is much simpler
- if (set) {
- pattern->patternTransform = postmul;
- } else {
- pattern->patternTransform = pattern_patternTransform(pattern) * postmul;
- }
- pattern->patternTransform_set = TRUE;
+ // this formula is for a different interpretation of pattern transforms as described in (*) in sp-pattern.cpp
+ // for it to work, we also need sp_object_read_attr( item, "transform");
+ //pattern->patternTransform = premul * item->transform * pattern->patternTransform * item->transform.inverse() * postmul;
+
+ // otherwise the formula is much simpler
+ if (set) {
+ pattern->patternTransform = postmul;
+ } else {
+ pattern->patternTransform = pattern_patternTransform(pattern) * postmul;
+ }
+ pattern->patternTransform_set = TRUE;
- gchar *c=sp_svg_transform_write(pattern->patternTransform);
- pattern->getRepr()->setAttribute("patternTransform", c);
- g_free(c);
+ gchar *c=sp_svg_transform_write(pattern->patternTransform);
+ pattern->getRepr()->setAttribute("patternTransform", c);
+ g_free(c);
}
const gchar *pattern_tile(GSList *reprs, Geom::Rect bounds, SPDocument *document, Geom::Affine transform, Geom::Affine move)
@@ -446,33 +446,33 @@ const gchar *pattern_tile(GSList *reprs, Geom::Rect bounds, SPDocument *document
Inkscape::XML::Document *xml_doc = document->getReprDoc();
Inkscape::XML::Node *defsrepr = document->getDefs()->getRepr();
- Inkscape::XML::Node *repr = xml_doc->createElement("svg:pattern");
- repr->setAttribute("patternUnits", "userSpaceOnUse");
- sp_repr_set_svg_double(repr, "width", bounds.dimensions()[Geom::X]);
- sp_repr_set_svg_double(repr, "height", bounds.dimensions()[Geom::Y]);
+ Inkscape::XML::Node *repr = xml_doc->createElement("svg:pattern");
+ repr->setAttribute("patternUnits", "userSpaceOnUse");
+ sp_repr_set_svg_double(repr, "width", bounds.dimensions()[Geom::X]);
+ sp_repr_set_svg_double(repr, "height", bounds.dimensions()[Geom::Y]);
- gchar *t=sp_svg_transform_write(transform);
- repr->setAttribute("patternTransform", t);
- g_free(t);
+ gchar *t=sp_svg_transform_write(transform);
+ repr->setAttribute("patternTransform", t);
+ g_free(t);
- defsrepr->appendChild(repr);
- const gchar *pat_id = repr->attribute("id");
- SPObject *pat_object = document->getObjectById(pat_id);
+ defsrepr->appendChild(repr);
+ const gchar *pat_id = repr->attribute("id");
+ SPObject *pat_object = document->getObjectById(pat_id);
- for (GSList *i = reprs; i != NULL; i = i->next) {
- Inkscape::XML::Node *node = (Inkscape::XML::Node *)(i->data);
- SPItem *copy = SP_ITEM(pat_object->appendChildRepr(node));
+ for (GSList *i = reprs; i != NULL; i = i->next) {
+ Inkscape::XML::Node *node = (Inkscape::XML::Node *)(i->data);
+ SPItem *copy = SP_ITEM(pat_object->appendChildRepr(node));
- Geom::Affine dup_transform;
- if (!sp_svg_transform_read (node->attribute("transform"), &dup_transform))
- dup_transform = Geom::identity();
- dup_transform *= move;
+ Geom::Affine dup_transform;
+ if (!sp_svg_transform_read (node->attribute("transform"), &dup_transform))
+ dup_transform = Geom::identity();
+ dup_transform *= move;
copy->doWriteTransform(copy->getRepr(), dup_transform, NULL, false);
}
- Inkscape::GC::release(repr);
- return pat_id;
+ Inkscape::GC::release(repr);
+ return pat_id;
}
SPPattern *pattern_getroot(SPPattern *pat)