diff options
| author | Tavmjong Bah <tavmjong@free.fr> | 2014-03-11 14:52:08 +0000 |
|---|---|---|
| committer | tavmjong-free <tavmjong@free.fr> | 2014-03-11 14:52:08 +0000 |
| commit | 1d31728fb7399f48d272560a290dc990b75a197e (patch) | |
| tree | a343611a11ff84857602a12ef0bf872cfa28cf56 /src/extension/internal/cairo-render-context.cpp | |
| parent | Add a few more style tests. (diff) | |
| download | inkscape-1d31728fb7399f48d272560a290dc990b75a197e.tar.gz inkscape-1d31728fb7399f48d272560a290dc990b75a197e.zip | |
Change stroke-dasharray and stroke-dashoffset handling to match other properties.
Split style.h into more manageable size files.
(bzr r13135)
Diffstat (limited to 'src/extension/internal/cairo-render-context.cpp')
| -rw-r--r-- | src/extension/internal/cairo-render-context.cpp | 10 |
1 files changed, 7 insertions, 3 deletions
diff --git a/src/extension/internal/cairo-render-context.cpp b/src/extension/internal/cairo-render-context.cpp index 2916d9fa9..4ec6ae1c8 100644 --- a/src/extension/internal/cairo-render-context.cpp +++ b/src/extension/internal/cairo-render-context.cpp @@ -1297,10 +1297,14 @@ CairoRenderContext::_setStrokeStyle(SPStyle const *style, Geom::OptRect const &p } } - if (style->stroke_dash.n_dash && - style->stroke_dash.dash ) + if (!style->stroke_dasharray.values.empty()) { - cairo_set_dash(_cr, style->stroke_dash.dash, style->stroke_dash.n_dash, style->stroke_dash.offset); + size_t ndashes = style->stroke_dasharray.values.size(); + double* dashes =(double*)malloc(ndashes*sizeof(double)); + for( unsigned i = 0; i < ndashes; ++i ) { + dashes[i] = style->stroke_dasharray.values[i]; + } + cairo_set_dash(_cr, dashes, ndashes, style->stroke_dashoffset.value); } else { cairo_set_dash(_cr, NULL, 0, 0.0); // disable dashing } |
