From 71cd301ca78259c55398a0919e3277fe3cc0a390 Mon Sep 17 00:00:00 2001 From: Yorik van Havre Date: Wed, 14 Oct 2020 17:21:27 +0200 Subject: [PATCH] Draft: Added pref option to set default dimension unit --- .../Resources/ui/preferences-drafttexts.ui | 41 ++++++++++++++++++- src/Mod/Draft/draftutils/utils.py | 2 +- .../draftviewproviders/view_dimension.py | 2 +- 3 files changed, 41 insertions(+), 4 deletions(-) diff --git a/src/Mod/Draft/Resources/ui/preferences-drafttexts.ui b/src/Mod/Draft/Resources/ui/preferences-drafttexts.ui index da2190edaa..6bd59f137f 100644 --- a/src/Mod/Draft/Resources/ui/preferences-drafttexts.ui +++ b/src/Mod/Draft/Resources/ui/preferences-drafttexts.ui @@ -6,8 +6,8 @@ 0 0 - 522 - 473 + 537 + 605 @@ -467,6 +467,43 @@ such as "Arial:Bold" + + + + + + Override unit + + + + + + + Qt::Horizontal + + + + 40 + 20 + + + + + + + + By leaving this field blank, the dimension measurements will be shown in the current unit defined in FreeCAD. By indicating a unit here such as m or cm, you can force new dimensions to be shown in that unit. + + + overrideUnit + + + Mod/Draft + + + + + diff --git a/src/Mod/Draft/draftutils/utils.py b/src/Mod/Draft/draftutils/utils.py index 2bb3633ba3..02a81027c0 100644 --- a/src/Mod/Draft/draftutils/utils.py +++ b/src/Mod/Draft/draftutils/utils.py @@ -171,7 +171,7 @@ def get_param_type(param): return "int" elif param in ("constructiongroupname", "textfont", "patternFile", "template", "snapModes", - "FontFile", "ClonePrefix", + "FontFile", "ClonePrefix","overrideUnit", "labeltype") or "inCommandShortcut" in param: return "string" elif param in ("textheight", "tolerance", "gridSpacing", diff --git a/src/Mod/Draft/draftviewproviders/view_dimension.py b/src/Mod/Draft/draftviewproviders/view_dimension.py index 533fd2c6a4..b1ea97e335 100644 --- a/src/Mod/Draft/draftviewproviders/view_dimension.py +++ b/src/Mod/Draft/draftviewproviders/view_dimension.py @@ -216,7 +216,7 @@ class ViewProviderDimensionBase(ViewProviderDraftAnnotation): "UnitOverride", "Units", _tip) - vobj.UnitOverride = '' + vobj.UnitOverride = utils.get_param("overrideUnit", '') def set_graphics_properties(self, vobj, properties): """Set graphics properties only if they don't already exist."""