From 605d4da85fb553b533ad2c12e57f4ae2d759ab50 Mon Sep 17 00:00:00 2001 From: Dan Falck Date: Fri, 23 Dec 2016 17:17:22 -0800 Subject: [PATCH] PATH:Tooledit:support for units connected units to ToolEdit and listview in the tooltable library --- .../Path/Gui/Resources/panels/ContourEdit.ui | 34 ++++++++--------- src/Mod/Path/Gui/Resources/panels/ToolEdit.ui | 12 +++--- .../PathScripts/PathToolLibraryManager.py | 37 ++++++++++++++++--- 3 files changed, 55 insertions(+), 28 deletions(-) diff --git a/src/Mod/Path/Gui/Resources/panels/ContourEdit.ui b/src/Mod/Path/Gui/Resources/panels/ContourEdit.ui index f80fdf98c..fd7024e7e 100644 --- a/src/Mod/Path/Gui/Resources/panels/ContourEdit.ui +++ b/src/Mod/Path/Gui/Resources/panels/ContourEdit.ui @@ -31,7 +31,7 @@ 0 0 334 - 318 + 313 @@ -66,19 +66,6 @@ - - - - 3 - - - 0.100000000000000 - - - 1.000000000000000 - - - @@ -93,6 +80,19 @@ + + + + 3 + + + 0.100000000000000 + + + 1.000000000000000 + + + @@ -101,7 +101,7 @@ 0 0 334 - 318 + 313 @@ -151,7 +151,7 @@ 0 0 334 - 318 + 313 @@ -209,7 +209,7 @@ 0 0 334 - 318 + 313 diff --git a/src/Mod/Path/Gui/Resources/panels/ToolEdit.ui b/src/Mod/Path/Gui/Resources/panels/ToolEdit.ui index ebf4ba762..0d18a258f 100644 --- a/src/Mod/Path/Gui/Resources/panels/ToolEdit.ui +++ b/src/Mod/Path/Gui/Resources/panels/ToolEdit.ui @@ -212,7 +212,7 @@ - 12.7 mm + 0 mm 0.125000000000000 @@ -231,7 +231,7 @@ - 25.4 mm + 0 mm 100.000000000000000 @@ -247,7 +247,7 @@ - 0.00 mm + 0 mm 100.000000000000000 @@ -263,7 +263,7 @@ - 0.00 mm + 0 mm 100.000000000000000 @@ -272,14 +272,14 @@ 0.000000000000000 - + mm - 25.4 mm + 0 mm 100.000000000000000 diff --git a/src/Mod/Path/PathScripts/PathToolLibraryManager.py b/src/Mod/Path/PathScripts/PathToolLibraryManager.py index 735e6a419..c8e482d79 100644 --- a/src/Mod/Path/PathScripts/PathToolLibraryManager.py +++ b/src/Mod/Path/PathScripts/PathToolLibraryManager.py @@ -190,6 +190,33 @@ class ToolLibraryManager(): headers = ["","Tool Num.","Name","Tool Type","Material","Diameter","Length Offset","Flat Radius","Corner Radius","Cutting Edge Angle","Cutting Edge Height"] model = QtGui.QStandardItemModel() model.setHorizontalHeaderLabels(headers) + parms = FreeCAD.ParamGet("User parameter:BaseApp/Preferences/Units") + digits = parms.GetContents()[1][2] # user's number of digits of precision + if parms.GetContents()[0][2]==0: + suffix = 'mm' + conversion = 1.0 + elif parms.GetContents()[0][2]==3: + suffix = 'in' + conversion = 25.4 + else: + suffix = '' + + def unitconv(ivalue): + parms = FreeCAD.ParamGet("User parameter:BaseApp/Preferences/Units") + digits = parms.GetContents()[1][2] #get user's number of digits of precision + if parms.GetContents()[0][2]==0: + suffix = 'mm' + conversion = 1.0 + elif parms.GetContents()[0][2]==3: + suffix = 'in' + conversion = 25.4 + else: + suffix = '' + val = FreeCAD.Units.parseQuantity(str(round(ivalue/conversion,digits))+suffix) + displayed_val = val.UserString #just the displayed value-not the internal one + + return displayed_val + if tt: if len(tt.Tools) == 0: tooldata.append([]) @@ -201,12 +228,12 @@ class ToolLibraryManager(): itemName = QtGui.QStandardItem(t.Name) itemToolType = QtGui.QStandardItem(t.ToolType) itemMaterial = QtGui.QStandardItem(t.Material) - itemDiameter = QtGui.QStandardItem(str(t.Diameter)) - itemLengthOffset = QtGui.QStandardItem(str(t.LengthOffset)) - itemFlatRadius = QtGui.QStandardItem(str(t.FlatRadius)) - itmCornerRadius = QtGui.QStandardItem(str(t.CornerRadius)) + itemDiameter = QtGui.QStandardItem(unitconv(t.Diameter)) + itemLengthOffset = QtGui.QStandardItem(unitconv(t.LengthOffset)) + itemFlatRadius = QtGui.QStandardItem(unitconv(t.FlatRadius)) + itmCornerRadius = QtGui.QStandardItem(unitconv(t.CornerRadius)) itemCuttingEdgeAngle = QtGui.QStandardItem(str(t.CuttingEdgeAngle)) - itemCuttingEdgeHeight = QtGui.QStandardItem(str(t.CuttingEdgeHeight)) + itemCuttingEdgeHeight = QtGui.QStandardItem(unitconv(t.CuttingEdgeHeight)) row = [itemcheck, itemNumber, itemName, itemToolType, itemMaterial, itemDiameter, itemLengthOffset, itemFlatRadius, itmCornerRadius, itemCuttingEdgeAngle, itemCuttingEdgeHeight] model.appendRow(row)