From f252aaff6872ebdd7e30f07e9835404a53a7c5d9 Mon Sep 17 00:00:00 2001 From: wandererfan Date: Mon, 23 Dec 2019 15:03:41 -0500 Subject: [PATCH] [TD]add static routine for default line weights --- src/Mod/TechDraw/App/LineGroup.cpp | 17 +++++++++++++++++ src/Mod/TechDraw/App/LineGroup.h | 4 ++++ 2 files changed, 21 insertions(+) diff --git a/src/Mod/TechDraw/App/LineGroup.cpp b/src/Mod/TechDraw/App/LineGroup.cpp index d8f373eb7e..a1530a75e3 100644 --- a/src/Mod/TechDraw/App/LineGroup.cpp +++ b/src/Mod/TechDraw/App/LineGroup.cpp @@ -197,3 +197,20 @@ LineGroup* LineGroup::lineGroupFactory(std::string groupName) } return lg; } + +//valid weight names: Thick, Thin, Graphic, Extra +double LineGroup::getDefaultWidth(std::string weightName, std::string groupName) +{ + //default line weights + Base::Reference hGrp = App::GetApplication().GetUserParameter().GetGroup("BaseApp")-> + GetGroup("Preferences")->GetGroup("Mod/TechDraw/Decorations"); + std::string lgName = groupName; + if (groupName.empty()) { + lgName = hGrp->GetASCII("LineGroup","FC 0.70mm"); + } + auto lg = TechDraw::LineGroup::lineGroupFactory(lgName); + + double weight = lg->getWeight(weightName); + delete lg; + return weight; +} diff --git a/src/Mod/TechDraw/App/LineGroup.h b/src/Mod/TechDraw/App/LineGroup.h index a1c0dfd1f0..9e258970d8 100644 --- a/src/Mod/TechDraw/App/LineGroup.h +++ b/src/Mod/TechDraw/App/LineGroup.h @@ -55,6 +55,10 @@ public: //static LineGroup maker static LineGroup* lineGroupFactory(std::string groupName); + static double getDefaultWidth(std::string weightName, + std::string groupName = std::string()); + + protected: void init(void);