diff options
| author | Jabier Arraiza <jabier.arraiza@marker.es> | 2018-06-10 20:20:18 +0000 |
|---|---|---|
| committer | Jabier Arraiza <jabier.arraiza@marker.es> | 2018-08-05 00:31:06 +0000 |
| commit | 850515e890b2bebbac5dcde3b04d3fc0cff52654 (patch) | |
| tree | 29bf5ff744acaedf5bc3ad5d7c831d6a618d2a71 /src/widgets | |
| parent | Allow inkscape handle units and percent in dasharray and dashoffset. Add pref... (diff) | |
| download | inkscape-850515e890b2bebbac5dcde3b04d3fc0cff52654.tar.gz inkscape-850515e890b2bebbac5dcde3b04d3fc0cff52654.zip | |
Revert changes
Diffstat (limited to 'src/widgets')
| -rw-r--r-- | src/widgets/dash-selector.cpp | 13 | ||||
| -rw-r--r-- | src/widgets/stroke-style.cpp | 40 |
2 files changed, 9 insertions, 44 deletions
diff --git a/src/widgets/dash-selector.cpp b/src/widgets/dash-selector.cpp index 43f5f66e9..37bf08b3d 100644 --- a/src/widgets/dash-selector.cpp +++ b/src/widgets/dash-selector.cpp @@ -27,9 +27,7 @@ #include "preferences.h" #include "display/cairo-utils.h" -#include "util/units.h" -#include "inkscape.h" -#include "object/sp-namedview.h" + #include "style.h" #include "ui/dialog-events.h" @@ -113,12 +111,7 @@ void SPDashSelector::init_dashes() { if (!dash_prefs.empty()) { SPStyle style; dashes = g_new (double *, dash_prefs.size() + 2); // +1 for custom slot, +1 for terminator slot - SPDocument * document = SP_ACTIVE_DOCUMENT; - SPNamedView *nv = sp_document_namedview(document, NULL); - Glib::ustring display_unit = "px"; - if (nv) { - display_unit = nv->display_units->abbr; - } + for (std::vector<Glib::ustring>::iterator i = dash_prefs.begin(); i != dash_prefs.end(); ++i) { style.readFromPrefs( *i ); @@ -127,7 +120,7 @@ void SPDashSelector::init_dashes() { double *d = dashes[pos]; unsigned i = 0; for (; i < style.stroke_dasharray.values.size(); i++) { - d[i] = Inkscape::Util::Quantity::convert(style.stroke_dasharray.values[i].computed, "px", display_unit.c_str()); + d[i] = style.stroke_dasharray.values[i]; } d[i] = -1; } else { diff --git a/src/widgets/stroke-style.cpp b/src/widgets/stroke-style.cpp index 74c5e6efc..3a5abbca4 100644 --- a/src/widgets/stroke-style.cpp +++ b/src/widgets/stroke-style.cpp @@ -25,8 +25,6 @@ #include "object/sp-rect.h" #include "object/sp-stop.h" #include "object/sp-text.h" -#include "util/units.h" -#include "inkscape.h" #include "svg/svg-color.h" @@ -743,38 +741,15 @@ StrokeStyle::setDashSelectorFromStyle(SPDashSelector *dsel, SPStyle *style) if (!style->stroke_dasharray.values.empty()) { double d[64]; size_t len = MIN(style->stroke_dasharray.values.size(), 64); - SPDocument * document = SP_ACTIVE_DOCUMENT; - SPNamedView *nv = sp_document_namedview(document, NULL); - Geom::Rect vbox = document->getViewBox(); - Glib::ustring display_unit = "px"; - if (nv) { - display_unit = nv->display_units->abbr; - } for (unsigned i = 0; i < len; i++) { - double dash = 0; - if(style->stroke_dasharray.values[i].unit == SVGLength::NONE) { - dash = style->stroke_dasharray.values[i].value; - } else if (style->stroke_dasharray.values[i].unit == SVGLength::PERCENT) { - dash = vbox.width() * style->stroke_dasharray.values[i].value; - } else { - dash = Inkscape::Util::Quantity::convert(style->stroke_dasharray.values[i].computed, "px", display_unit.c_str()); - } if (style->stroke_width.computed != 0) - d[i] = dash / style->stroke_width.computed; + d[i] = style->stroke_dasharray.values[i] / style->stroke_width.computed; else - d[i] = dash; // is there a better thing to do for stroke_width==0? - } - double dash_offset = 0; - if (style->stroke_dashoffset.unit == SVGLength::NONE) { - dash_offset = style->stroke_dashoffset.value; - } else if (style->stroke_dashoffset.unit == SVGLength::PERCENT) { - dash_offset = vbox.width() * style->stroke_dashoffset.value; - } else { - dash_offset = Inkscape::Util::Quantity::convert(style->stroke_dashoffset.computed, "px", display_unit.c_str()); + d[i] = style->stroke_dasharray.values[i]; // is there a better thing to do for stroke_width==0? } dsel->set_dash(len, d, style->stroke_width.computed != 0 ? - dash_offset / style->stroke_width.computed : - dash_offset); + style->stroke_dashoffset.value / style->stroke_width.computed : + style->stroke_dashoffset.value); } else { dsel->set_dash(0, nullptr, 0.0); } @@ -1067,11 +1042,8 @@ StrokeStyle::scaleLine() } /* Set dash */ - Inkscape::Preferences *prefs = Inkscape::Preferences::get(); - gboolean scale = prefs->getBool("/options/dash/scale", true); - if (scale) { - setScaledDash(css, ndash, dash, offset, width); - } + setScaledDash(css, ndash, dash, offset, width); + sp_desktop_apply_css_recursive ((*i), css, true); } |
