From c779f34fee1b77f1ed6d3c2f3ef05c0329d6bfa1 Mon Sep 17 00:00:00 2001 From: babaroga Date: Tue, 16 Apr 2019 19:37:28 +0200 Subject: [PATCH] FIX: Prevent situation where default format entered in preferences, overwrites prefixes on eg. circular dimensions --- src/Mod/TechDraw/App/DrawViewDimension.cpp | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/src/Mod/TechDraw/App/DrawViewDimension.cpp b/src/Mod/TechDraw/App/DrawViewDimension.cpp index 7153801895..aa71d8e723 100644 --- a/src/Mod/TechDraw/App/DrawViewDimension.cpp +++ b/src/Mod/TechDraw/App/DrawViewDimension.cpp @@ -981,6 +981,7 @@ std::string DrawViewDimension::getDefaultFormatSpec() const .GetGroup("BaseApp")->GetGroup("Preferences")->GetGroup("Mod/TechDraw/Dimensions"); std::string prefFormat = hGrp->GetASCII("formatSpec",""); QString formatSpec; + QString qPrefix; if (prefFormat.empty()) { QString format1 = Base::Tools::fromStdString("%."); QString format2 = Base::Tools::fromStdString("f"); @@ -993,14 +994,18 @@ std::string DrawViewDimension::getDefaultFormatSpec() const QString formatPrecision = QString::number(precision); std::string prefix = getPrefix(); - QString qPrefix; + if (!prefix.empty()) { qPrefix = QString::fromUtf8(prefix.data(),prefix.size()); } formatSpec = qPrefix + format1 + formatPrecision + format2; } else { - return prefFormat; + + std::string prefix = getPrefix(); + qPrefix = QString::fromUtf8(prefix.data(),prefix.size()); + formatSpec = qPrefix + QString::fromStdString(prefFormat); + } return Base::Tools::toStdString(formatSpec);