summaryrefslogtreecommitdiffstats
path: root/src/display
diff options
context:
space:
mode:
authorJabier Arraiza Cenoz <jabier.arraiza@marker.es>2013-04-18 20:26:00 +0000
committerJabiertxo Arraiza Zenotz <jtx@jtx.marker.es>2013-04-18 20:26:00 +0000
commit89922cdfe7c28fbe5f0ca6e4e0d800b5b1f49604 (patch)
tree3a4b47d67743abeeba37a843149e9d3234722db9 /src/display
parentBack to original colors (diff)
parentPath Union. fix for Bug 614577 (diff)
downloadinkscape-89922cdfe7c28fbe5f0ca6e4e0d800b5b1f49604.tar.gz
inkscape-89922cdfe7c28fbe5f0ca6e4e0d800b5b1f49604.zip
Striped colors and outline, fix icons.svg error,mark for merge
(bzr r11950.1.100)
Diffstat (limited to 'src/display')
-rw-r--r--src/display/canvas-bpath.cpp14
1 files changed, 3 insertions, 11 deletions
diff --git a/src/display/canvas-bpath.cpp b/src/display/canvas-bpath.cpp
index 502bf440e..ee9e14f10 100644
--- a/src/display/canvas-bpath.cpp
+++ b/src/display/canvas-bpath.cpp
@@ -132,6 +132,7 @@ sp_canvas_bpath_render (SPCanvasItem *item, SPCanvasBuf *buf)
SPCanvasBPath *cbp = SP_CANVAS_BPATH (item);
Geom::Rect area = buf->rect;
+
if ( !cbp->curve ||
((cbp->stroke_rgba & 0xff) == 0 && (cbp->fill_rgba & 0xff) == 0 ) ||
cbp->curve->get_segment_count() < 1)
@@ -146,10 +147,9 @@ sp_canvas_bpath_render (SPCanvasItem *item, SPCanvasBuf *buf)
cairo_set_tolerance(buf->ct, 0.5);
cairo_new_path(buf->ct);
- cairo_save(buf->ct);
-
feed_pathvector_to_cairo (buf->ct, cbp->curve->get_pathvector(), cbp->affine, area,
- /* optimized_stroke = */ !dofill, 1);
+ /* optimized_stroke = */ !dofill, 1);
+
if (dofill) {
// RGB / BGR
ink_cairo_set_source_rgba32(buf->ct, cbp->fill_rgba);
@@ -159,20 +159,12 @@ sp_canvas_bpath_render (SPCanvasItem *item, SPCanvasBuf *buf)
}
if (dostroke) {
- ink_cairo_set_source_rgba32(buf->ct, 0xffffff42);
- cairo_set_line_width(buf->ct, 3);
- cairo_stroke_preserve(buf->ct);
- cairo_restore(buf->ct);
- feed_pathvector_to_cairo (buf->ct, cbp->curve->get_pathvector(), cbp->affine, area,
- /* optimized_stroke = */ !dofill, 1);
ink_cairo_set_source_rgba32(buf->ct, cbp->stroke_rgba);
cairo_set_line_width(buf->ct, 1);
if (cbp->dashes[0] != 0 && cbp->dashes[1] != 0) {
cairo_set_dash (buf->ct, cbp->dashes, 2, 0);
}
cairo_stroke(buf->ct);
-
-
} else {
cairo_new_path(buf->ct);
}