summaryrefslogtreecommitdiffstats
path: root/src/extension/internal/grid.cpp
diff options
context:
space:
mode:
authorKrzysztof Kosi??ski <tweenk.pl@gmail.com>2010-04-03 16:50:12 +0000
committerKrzysztof KosiƄski <tweenk.pl@gmail.com>2010-04-03 16:50:12 +0000
commitd037400fcf3fba455e092ed6c1e34163eb6c7b7f (patch)
tree7bd50836bc1e308d76d8edf743b55e045f0cd49a /src/extension/internal/grid.cpp
parentFix pattern knotholder (diff)
downloadinkscape-d037400fcf3fba455e092ed6c1e34163eb6c7b7f.tar.gz
inkscape-d037400fcf3fba455e092ed6c1e34163eb6c7b7f.zip
Fix grid extension
(bzr r9281.1.10)
Diffstat (limited to 'src/extension/internal/grid.cpp')
-rw-r--r--src/extension/internal/grid.cpp18
1 files changed, 6 insertions, 12 deletions
diff --git a/src/extension/internal/grid.cpp b/src/extension/internal/grid.cpp
index d4b35b261..deef367a4 100644
--- a/src/extension/internal/grid.cpp
+++ b/src/extension/internal/grid.cpp
@@ -46,13 +46,12 @@ Grid::load (Inkscape::Extension::Extension */*module*/)
namespace {
-Glib::ustring build_lines(int axis, Geom::Rect bounding_area,
- float offset, float spacing)
+void build_lines(int axis, Geom::Rect bounding_area, float offset,
+ float spacing, SVG::PathString &path_data)
{
Geom::Point point_offset(0.0, 0.0);
point_offset[axis] = offset;
- SVG::PathString path_data;
for (Geom::Point start_point = bounding_area.min();
start_point[axis] + offset <= (bounding_area.max())[axis];
start_point[axis] += spacing) {
@@ -62,8 +61,6 @@ Glib::ustring build_lines(int axis, Geom::Rect bounding_area,
path_data.moveTo(start_point + point_offset)
.lineTo(end_point + point_offset);
}
-
- return path_data;
}
}
@@ -89,10 +86,8 @@ Grid::effect (Inkscape::Extension::Effect *module, Inkscape::UI::View::View *doc
if (bounds) {
bounding_area = *bounds;
}
-
- gdouble doc_height = sp_document_height(document->doc());
- Geom::Rect temprec = Geom::Rect(Geom::Point(bounding_area.min()[Geom::X], doc_height - bounding_area.min()[Geom::Y]),
- Geom::Point(bounding_area.max()[Geom::X], doc_height - bounding_area.max()[Geom::Y]));
+ Geom::Rect temprec = Geom::Rect(Geom::Point(bounding_area.min()[Geom::X], bounding_area.min()[Geom::Y]),
+ Geom::Point(bounding_area.max()[Geom::X], bounding_area.max()[Geom::Y]));
bounding_area = temprec;
}
@@ -103,10 +98,9 @@ Grid::effect (Inkscape::Extension::Effect *module, Inkscape::UI::View::View *doc
float offsets[2] = { module->get_param_float("xoffset"),
module->get_param_float("yoffset") };
- Glib::ustring path_data("");
+ SVG::PathString path_data;
for ( int axis = 0 ; axis < 2 ; ++axis ) {
- path_data += build_lines(axis, bounding_area,
- offsets[axis], spacings[axis]);
+ build_lines(axis, bounding_area, offsets[axis], spacings[axis], path_data);
}
Inkscape::XML::Document * xml_doc = sp_document_repr_doc(document->doc());