=== modified file 'src/preferences-skeleton.h' --- src/preferences-skeleton.h 2016-03-14 17:19:58 +0000 +++ src/preferences-skeleton.h 2016-03-31 11:54:20 +0000 @@ -311,6 +311,7 @@ " \n" " \n" " \n" +" \n" " \n" " \n" " \n" === modified file 'src/sp-offset.cpp' --- src/sp-offset.cpp 2016-03-24 18:04:10 +0000 +++ src/sp-offset.cpp 2016-03-31 16:26:23 +0000 @@ -85,7 +85,9 @@ // reappearing in offset when the radius becomes too large //TODO: need fix for bug: #384688 with fix released in r.14156 //but reverted because bug #1507049 seems has more priority. -static bool use_slow_but_correct_offset_method = false; +// static bool use_slow_but_correct_offset_method = false; +// NOTE: this is now: prefs->getBool("/options/use_slow_but_correct_offset_method/value", true); + // the default is set in preferences-skeleton.h SPOffset::SPOffset() : SPShape() { this->rad = 1.0; @@ -379,6 +381,9 @@ Path *orig = new Path; orig->Copy ((Path *)this->originalPath); + + Inkscape::Preferences *prefs = Inkscape::Preferences::get(); + bool use_slow_but_correct_offset_method = prefs->getBool("/options/use_slow_but_correct_offset_method/value", true); if ( use_slow_but_correct_offset_method == false ) { // version par outline === modified file 'src/ui/dialog/inkscape-preferences.cpp' --- src/ui/dialog/inkscape-preferences.cpp 2016-03-02 19:44:36 +0000 +++ src/ui/dialog/inkscape-preferences.cpp 2016-04-07 21:08:50 +0000 @@ -52,6 +52,7 @@ #include "inkscape.h" #include "shortcuts.h" #include "document.h" +#include "sp-root.h" #ifdef HAVE_ASPELL @@ -1478,6 +1479,15 @@ _("Lower quality (some artifacts), but display is faster")); _page_rendering.add_line( true, "", _filter_quality_worst, "", _("Lowest quality (considerable artifacts), but display is fastest")); + + + _use_slow_but_correct_offset_method.init( _("Workaround to fix linked offset text artifacts (uses imprecise offset behavior!)"), "/options/use_slow_but_correct_offset_method/value", true); + _use_slow_but_correct_offset_method.signal_toggled().connect( sigc::mem_fun(*this, &InkscapePreferences::onOffsetMethodChange) ); + + _page_rendering.add_group_header( _("Offset method")); + _page_rendering.add_line( true, "", _use_slow_but_correct_offset_method, "", + _("Select this if you have artifacts appearing in linked offsets of text and want to get rid of them.")); + this->AddPage(_page_rendering, _("Rendering"), PREFS_PAGE_RENDERING); } @@ -1649,6 +1659,16 @@ } + +void InkscapePreferences::onOffsetMethodChange() +{ + SPDesktop *desktop = SP_ACTIVE_DESKTOP; + if (desktop == NULL) return; + desktop->currentRoot ()->updateRepr(); +} + + + void InkscapePreferences::onKBList() { sp_shortcut_init(); === modified file 'src/ui/dialog/inkscape-preferences.h' --- src/ui/dialog/inkscape-preferences.h 2016-03-02 19:44:36 +0000 +++ src/ui/dialog/inkscape-preferences.h 2016-03-31 12:52:42 +0000 @@ -297,6 +297,7 @@ UI::Widget::PrefRadioButton _filter_quality_normal; UI::Widget::PrefRadioButton _filter_quality_worse; UI::Widget::PrefRadioButton _filter_quality_worst; + UI::Widget::PrefCheckButton _use_slow_but_correct_offset_method; UI::Widget::PrefCheckButton _show_filters_info_box; UI::Widget::PrefCombo _dockbar_style; UI::Widget::PrefCombo _switcher_style; @@ -522,6 +523,7 @@ void _presentPages(); + void onOffsetMethodChange(); /* * Functions for the Keyboard shortcut editor panel */