Arch: Finally using proper UnitStrings in Arch tools
This commit is contained in:
@@ -104,8 +104,6 @@ class _CommandPanel:
|
||||
self.Profile = None
|
||||
self.continueCmd = False
|
||||
self.rotated = False
|
||||
self.DECIMALS = FreeCAD.ParamGet("User parameter:BaseApp/Preferences/Units").GetInt("Decimals",2)
|
||||
self.FORMAT = "%." + str(self.DECIMALS) + "f mm"
|
||||
sel = FreeCADGui.Selection.getSelection()
|
||||
if sel:
|
||||
if len(sel) == 1:
|
||||
@@ -173,21 +171,21 @@ class _CommandPanel:
|
||||
# length
|
||||
label1 = QtGui.QLabel(translate("Arch","Length").decode("utf8"))
|
||||
self.vLength = ui.createWidget("Gui::InputField")
|
||||
self.vLength.setText(self.FORMAT % self.Length)
|
||||
self.vLength.setText(FreeCAD.Units.Quantity(self.Length,FreeCAD.Units.Length).UserString)
|
||||
grid.addWidget(label1,1,0,1,1)
|
||||
grid.addWidget(self.vLength,1,1,1,1)
|
||||
|
||||
# width
|
||||
label2 = QtGui.QLabel(translate("Arch","Width").decode("utf8"))
|
||||
self.vWidth = ui.createWidget("Gui::InputField")
|
||||
self.vWidth.setText(self.FORMAT % self.Width)
|
||||
self.vWidth.setText(FreeCAD.Units.Quantity(self.Width,FreeCAD.Units.Length).UserString)
|
||||
grid.addWidget(label2,2,0,1,1)
|
||||
grid.addWidget(self.vWidth,2,1,1,1)
|
||||
|
||||
# height
|
||||
label3 = QtGui.QLabel(translate("Arch","Thickness").decode("utf8"))
|
||||
self.vHeight = ui.createWidget("Gui::InputField")
|
||||
self.vHeight.setText(self.FORMAT % self.Thickness)
|
||||
self.vHeight.setText(FreeCAD.Units.Quantity(self.Thickness,FreeCAD.Units.Length).UserString)
|
||||
grid.addWidget(label3,3,0,1,1)
|
||||
grid.addWidget(self.vHeight,3,1,1,1)
|
||||
|
||||
@@ -244,9 +242,9 @@ class _CommandPanel:
|
||||
|
||||
def setPreset(self,i):
|
||||
if i > 0:
|
||||
self.vLength.setText(self.FORMAT % float(Presets[i][1]))
|
||||
self.vWidth.setText(self.FORMAT % float(Presets[i][2]))
|
||||
self.vHeight.setText(self.FORMAT % float(Presets[i][3]))
|
||||
self.vLength.setText(FreeCAD.Units.Quantity(float(Presets[i][1]),FreeCAD.Units.Length).UserString)
|
||||
self.vWidth.setText(FreeCAD.Units.Quantity(float(Presets[i][2]),FreeCAD.Units.Length).UserString)
|
||||
self.vHeight.setText(FreeCAD.Units.Quantity(float(Presets[i][3]),FreeCAD.Units.Length).UserString)
|
||||
|
||||
def rotate(self):
|
||||
self.rotated = not self.rotated
|
||||
|
||||
@@ -137,9 +137,6 @@ class _CommandStructure:
|
||||
self.Height = p.GetFloat("StructureHeight",1000)
|
||||
self.Profile = None
|
||||
self.continueCmd = False
|
||||
self.DECIMALS = FreeCAD.ParamGet("User parameter:BaseApp/Preferences/Units").GetInt("Decimals",2)
|
||||
import DraftGui
|
||||
self.FORMAT = DraftGui.makeFormatSpec(self.DECIMALS,'Length')
|
||||
sel = FreeCADGui.Selection.getSelection()
|
||||
if sel:
|
||||
st = Draft.getObjectsOfType(sel,"Structure")
|
||||
@@ -233,27 +230,29 @@ class _CommandStructure:
|
||||
# length
|
||||
label1 = QtGui.QLabel(translate("Arch","Length").decode("utf8"))
|
||||
self.vLength = ui.createWidget("Gui::InputField")
|
||||
self.vLength.setText(self.FORMAT % self.Length)
|
||||
self.vLength.setText(FreeCAD.Units.Quantity(self.Length,FreeCAD.Units.Length).UserString)
|
||||
grid.addWidget(label1,2,0,1,1)
|
||||
grid.addWidget(self.vLength,2,1,1,1)
|
||||
|
||||
# width
|
||||
label2 = QtGui.QLabel(translate("Arch","Width").decode("utf8"))
|
||||
self.vWidth = ui.createWidget("Gui::InputField")
|
||||
self.vWidth.setText(self.FORMAT % self.Width)
|
||||
self.vWidth.setText(FreeCAD.Units.Quantity(self.Width,FreeCAD.Units.Length).UserString)
|
||||
grid.addWidget(label2,3,0,1,1)
|
||||
grid.addWidget(self.vWidth,3,1,1,1)
|
||||
|
||||
# height
|
||||
label3 = QtGui.QLabel(translate("Arch","Height").decode("utf8"))
|
||||
self.vHeight = ui.createWidget("Gui::InputField")
|
||||
self.vHeight.setText(self.FORMAT % self.Height)
|
||||
self.vHeight.setText(FreeCAD.Units.Quantity(self.Height,FreeCAD.Units.Length).UserString)
|
||||
grid.addWidget(label3,4,0,1,1)
|
||||
grid.addWidget(self.vHeight,4,1,1,1)
|
||||
|
||||
# horizontal button
|
||||
value5 = QtGui.QPushButton(translate("Arch","Switch Length/Height").decode("utf8"))
|
||||
grid.addWidget(value5,5,0,1,2)
|
||||
value5 = QtGui.QPushButton(translate("Arch","Switch L/H").decode("utf8"))
|
||||
grid.addWidget(value5,5,0,1,1)
|
||||
value6 = QtGui.QPushButton(translate("Arch","Switch L/W").decode("utf8"))
|
||||
grid.addWidget(value6,5,1,1,1)
|
||||
|
||||
# continue button
|
||||
label4 = QtGui.QLabel(translate("Arch","Con&tinue").decode("utf8"))
|
||||
@@ -273,7 +272,8 @@ class _CommandStructure:
|
||||
QtCore.QObject.connect(self.vWidth,QtCore.SIGNAL("valueChanged(double)"),self.setWidth)
|
||||
QtCore.QObject.connect(self.vHeight,QtCore.SIGNAL("valueChanged(double)"),self.setHeight)
|
||||
QtCore.QObject.connect(value4,QtCore.SIGNAL("stateChanged(int)"),self.setContinue)
|
||||
QtCore.QObject.connect(value5,QtCore.SIGNAL("pressed()"),self.rotate)
|
||||
QtCore.QObject.connect(value5,QtCore.SIGNAL("pressed()"),self.rotateLH)
|
||||
QtCore.QObject.connect(value6,QtCore.SIGNAL("pressed()"),self.rotateLW)
|
||||
return w
|
||||
|
||||
def update(self,point,info):
|
||||
@@ -316,19 +316,20 @@ class _CommandStructure:
|
||||
def setPreset(self,i):
|
||||
if i > 0:
|
||||
p=self.pSelect[i-1][0]
|
||||
self.vLength.setText(self.FORMAT % float(Presets[p][4]))
|
||||
self.vWidth.setText(self.FORMAT % float(Presets[p][5]))
|
||||
self.vLength.setText(FreeCAD.Units.Quantity(float(Presets[p][4]),FreeCAD.Units.Length).UserString)
|
||||
self.vWidth.setText(FreeCAD.Units.Quantity(float(Presets[p][5]),FreeCAD.Units.Length).UserString)
|
||||
self.Profile = Presets[p]
|
||||
else:
|
||||
self.Profile = None
|
||||
|
||||
def rotate(self):
|
||||
l = self.Length
|
||||
w = self.Width
|
||||
h = self.Height
|
||||
self.vLength.setText(self.FORMAT % h)
|
||||
self.vHeight.setText(self.FORMAT % w)
|
||||
self.vWidth.setText(self.FORMAT % l)
|
||||
def rotateLH(self):
|
||||
self.vLength.setText(FreeCAD.Units.Quantity(self.Height,FreeCAD.Units.Length).UserString)
|
||||
self.vHeight.setText(FreeCAD.Units.Quantity(self.Length,FreeCAD.Units.Length).UserString)
|
||||
|
||||
def rotateLW(self):
|
||||
self.vLength.setText(FreeCAD.Units.Quantity(self.Width,FreeCAD.Units.Length).UserString)
|
||||
self.vWidth.setText(FreeCAD.Units.Quantity(self.Length,FreeCAD.Units.Length).UserString)
|
||||
|
||||
|
||||
class _Structure(ArchComponent.Component):
|
||||
"The Structure object"
|
||||
|
||||
@@ -168,9 +168,6 @@ class _CommandWall:
|
||||
self.Height = p.GetFloat("WallHeight",3000)
|
||||
self.JOIN_WALLS_SKETCHES = p.GetBool("joinWallSketches",False)
|
||||
self.AUTOJOIN = p.GetBool("autoJoinWalls",True)
|
||||
self.DECIMALS = FreeCAD.ParamGet("User parameter:BaseApp/Preferences/Units").GetInt("Decimals",2)
|
||||
import DraftGui
|
||||
self.FORMAT = DraftGui.makeFormatSpec(self.DECIMALS,'Length')
|
||||
sel = FreeCADGui.Selection.getSelectionEx()
|
||||
done = False
|
||||
self.existing = []
|
||||
@@ -279,7 +276,7 @@ class _CommandWall:
|
||||
dv = dv.negative()
|
||||
self.tracker.update([b.add(dv),point.add(dv)])
|
||||
if self.Length:
|
||||
self.Length.setText(self.FORMAT % bv.Length)
|
||||
self.Length.setText(FreeCAD.Units.Quantity(bv.Length,FreeCAD.Units.Length).UserString)
|
||||
|
||||
def taskbox(self):
|
||||
"sets up a taskbox widget"
|
||||
@@ -296,13 +293,13 @@ class _CommandWall:
|
||||
|
||||
label1 = QtGui.QLabel(translate("Arch","Width").decode("utf8"))
|
||||
value1 = ui.createWidget("Gui::InputField")
|
||||
value1.setText(self.FORMAT % self.Width)
|
||||
value1.setText(FreeCAD.Units.Quantity(self.Width,FreeCAD.Units.Length).UserString)
|
||||
grid.addWidget(label1,1,0,1,1)
|
||||
grid.addWidget(value1,1,1,1,1)
|
||||
|
||||
label2 = QtGui.QLabel(translate("Arch","Height").decode("utf8"))
|
||||
value2 = ui.createWidget("Gui::InputField")
|
||||
value2.setText(self.FORMAT % self.Height)
|
||||
value2.setText(FreeCAD.Units.Quantity(self.Height,FreeCAD.Units.Length).UserString)
|
||||
grid.addWidget(label2,2,0,1,1)
|
||||
grid.addWidget(value2,2,1,1,1)
|
||||
|
||||
|
||||
@@ -397,9 +397,6 @@ class _CommandWindow:
|
||||
self.Include = True
|
||||
self.baseFace = None
|
||||
self.wparams = ["Width","Height","H1","H2","H3","W1","W2","O1","O2"]
|
||||
self.DECIMALS = FreeCAD.ParamGet("User parameter:BaseApp/Preferences/Units").GetInt("Decimals",2)
|
||||
import DraftGui
|
||||
self.FORMAT = DraftGui.makeFormatSpec(self.DECIMALS,'Length')
|
||||
|
||||
# autobuild mode
|
||||
if FreeCADGui.Selection.getSelectionEx():
|
||||
@@ -556,11 +553,11 @@ class _CommandWindow:
|
||||
setattr(self,"val"+param,ui.createWidget("Gui::InputField"))
|
||||
wid = getattr(self,"val"+param)
|
||||
if param == "Width":
|
||||
wid.setText(self.FORMAT % self.Width)
|
||||
wid.setText(FreeCAD.Units.Quantity(self.Width,FreeCAD.Units.Length).UserString)
|
||||
elif param == "Height":
|
||||
wid.setText(self.FORMAT % self.Height)
|
||||
wid.setText(FreeCAD.Units.Quantity(self.Height,FreeCAD.Units.Length).UserString)
|
||||
else:
|
||||
wid.setText(self.FORMAT % self.Thickness)
|
||||
wid.setText(FreeCAD.Units.Quantity(self.Thickness,FreeCAD.Units.Length).UserString)
|
||||
setattr(self,param,self.Thickness)
|
||||
grid.addWidget(lab,i,0,1,1)
|
||||
grid.addWidget(wid,i,1,1,1)
|
||||
@@ -862,9 +859,6 @@ class _ArchWindowTaskPanel:
|
||||
def __init__(self):
|
||||
|
||||
self.obj = None
|
||||
self.DECIMALS = FreeCAD.ParamGet("User parameter:BaseApp/Preferences/Units").GetInt("Decimals",2)
|
||||
import DraftGui
|
||||
self.FORMAT = DraftGui.makeFormatSpec(self.DECIMALS,'Length')
|
||||
self.form = QtGui.QWidget()
|
||||
self.form.setObjectName("TaskPanel")
|
||||
self.grid = QtGui.QGridLayout(self.form)
|
||||
@@ -1079,7 +1073,7 @@ class _ArchWindowTaskPanel:
|
||||
else:
|
||||
f.setCurrentIndex(0)
|
||||
elif i in [3,4]:
|
||||
f.setProperty("text",self.FORMAT % float(t))
|
||||
f.setProperty("text",FreeCAD.Units.Quantity(float(t),FreeCAD.Units.Length).UserString)
|
||||
else:
|
||||
f.setText(t)
|
||||
|
||||
|
||||
Reference in New Issue
Block a user