PATH: Fix for x10 input field issue in tool table
This commit is contained in:
committed by
wmayer
parent
4c001f40f3
commit
70040e01c4
@@ -218,7 +218,7 @@ class ToolLibraryManager():
|
||||
itemName = QtGui.QStandardItem(t.Name)
|
||||
itemToolType = QtGui.QStandardItem(t.ToolType)
|
||||
itemMaterial = QtGui.QStandardItem(t.Material)
|
||||
itemDiameter = QtGui.QStandardItem(unitconv(t.Diameter))
|
||||
itemDiameter = QtGui.QStandardItem(unitconv(t.Diameter))
|
||||
itemLengthOffset = QtGui.QStandardItem(unitconv(t.LengthOffset))
|
||||
itemFlatRadius = QtGui.QStandardItem(unitconv(t.FlatRadius))
|
||||
itmCornerRadius = QtGui.QStandardItem(unitconv(t.CornerRadius))
|
||||
@@ -239,29 +239,37 @@ class ToolLibraryManager():
|
||||
Handler = HeeksTooltableHandler()
|
||||
else:
|
||||
Handler = FreeCADTooltableHandler()
|
||||
parser.setContentHandler(Handler)
|
||||
parser.parse(str(filename[0]))
|
||||
if not Handler.tooltable:
|
||||
return None
|
||||
|
||||
ht = Handler.tooltable
|
||||
tt = self._findList(listname)
|
||||
for t in ht.Tools:
|
||||
newt = ht.getTool(t).copy()
|
||||
tt.addTools(newt)
|
||||
if listname == "<Main>":
|
||||
self.saveMainLibrary(tt)
|
||||
return True
|
||||
try:
|
||||
parser.setContentHandler(Handler)
|
||||
parser.parse(unicode(filename[0]))
|
||||
if not Handler.tooltable:
|
||||
return None
|
||||
|
||||
ht = Handler.tooltable
|
||||
tt = self._findList(listname)
|
||||
for t in ht.Tools:
|
||||
newt = ht.getTool(t).copy()
|
||||
tt.addTools(newt)
|
||||
if listname == "<Main>":
|
||||
self.saveMainLibrary(tt)
|
||||
return True
|
||||
except Exception, e:
|
||||
print "could not parse file", e
|
||||
|
||||
def write(self, filename, listname):
|
||||
"exports the tooltable to a file"
|
||||
tt = self._findList(listname)
|
||||
if tt:
|
||||
fil = open(str(filename[0]), "wb")
|
||||
fil.write('<?xml version="1.0" encoding="UTF-8"?>\n')
|
||||
fil.write(tt.Content)
|
||||
fil.close()
|
||||
print "Written ", filename[0]
|
||||
try:
|
||||
file = open(unicode(filename[0]), "wb")
|
||||
file.write('<?xml version="1.0" encoding="UTF-8"?>\n')
|
||||
file.write(tt.Content)
|
||||
file.close()
|
||||
print "Written ", unicode(filename[0])
|
||||
|
||||
except Exception, e:
|
||||
print "Could not write file:", e
|
||||
|
||||
def addnew(self, listname, tool, position = None):
|
||||
"adds a new tool at the end of the table"
|
||||
@@ -411,14 +419,14 @@ class EditorPanel():
|
||||
r = editform.exec_()
|
||||
if r:
|
||||
if editform.NameField.text():
|
||||
t.Name = str(editform.NameField.text())
|
||||
t.Name = str(editform.NameField.text()) #FIXME: not unicode safe!
|
||||
t.ToolType = self.getType(editform.TypeField.currentIndex())
|
||||
t.Material = self.getMaterial(editform.MaterialField.currentIndex())
|
||||
t.Diameter = FreeCAD.Units.parseQuantity(editform.DiameterField.text())
|
||||
t.LengthOffset = FreeCAD.Units.parseQuantity(editform.LengthOffsetField.text())
|
||||
t.FlatRadius = FreeCAD.Units.parseQuantity(editform.FlatRadiusField.text())
|
||||
t.CornerRadius = FreeCAD.Units.parseQuantity(editform.CornerRadiusField.text())
|
||||
t.CuttingEdgeAngle = editform.CuttingEdgeAngleField.value()
|
||||
t.CuttingEdgeAngle = FreeCAD.Units.Quantity(editform.CuttingEdgeAngleField.text())
|
||||
t.CuttingEdgeHeight = FreeCAD.Units.parseQuantity(editform.CuttingEdgeHeightField.text())
|
||||
|
||||
listname = self.form.listView.selectedIndexes()[0].data()
|
||||
@@ -480,24 +488,24 @@ class EditorPanel():
|
||||
editform.NameField.setText(tool.Name)
|
||||
editform.TypeField.setCurrentIndex(self.getType(tool.ToolType))
|
||||
editform.MaterialField.setCurrentIndex(self.getMaterial(tool.Material))
|
||||
editform.DiameterField.setText(str(tool.Diameter))
|
||||
editform.LengthOffsetField.setText(str(tool.LengthOffset))
|
||||
editform.FlatRadiusField.setText(str(tool.FlatRadius))
|
||||
editform.CornerRadiusField.setText(str(tool.CornerRadius))
|
||||
editform.CuttingEdgeAngleField.setValue(tool.CuttingEdgeAngle)
|
||||
editform.CuttingEdgeHeightField.setText(str(tool.CuttingEdgeHeight))
|
||||
editform.DiameterField.setText(FreeCAD.Units.Quantity(tool.Diameter, FreeCAD.Units.Length).UserString)
|
||||
editform.LengthOffsetField.setText(FreeCAD.Units.Quantity(tool.LengthOffset, FreeCAD.Units.Length).UserString)
|
||||
editform.FlatRadiusField.setText(FreeCAD.Units.Quantity(tool.FlatRadius, FreeCAD.Units.Length).UserString)
|
||||
editform.CornerRadiusField.setText(FreeCAD.Units.Quantity(tool.CornerRadius, FreeCAD.Units.Length).UserString)
|
||||
editform.CuttingEdgeAngleField.setText(FreeCAD.Units.Quantity(tool.CuttingEdgeAngle, FreeCAD.Units.Angle).UserString)
|
||||
editform.CuttingEdgeHeightField.setText(FreeCAD.Units.Quantity(tool.CuttingEdgeHeight, FreeCAD.Units.Length).UserString)
|
||||
|
||||
r = editform.exec_()
|
||||
if r:
|
||||
if editform.NameField.text():
|
||||
tool.Name = str(editform.NameField.text())
|
||||
tool.Name = str(editform.NameField.text()) #FIXME: not unicode safe!
|
||||
tool.ToolType = self.getType(editform.TypeField.currentIndex())
|
||||
tool.Material = self.getMaterial(editform.MaterialField.currentIndex())
|
||||
tool.Diameter = FreeCAD.Units.parseQuantity(editform.DiameterField.text())
|
||||
tool.LengthOffset = FreeCAD.Units.parseQuantity(editform.LengthOffsetField.text())
|
||||
tool.FlatRadius = FreeCAD.Units.parseQuantity(editform.FlatRadiusField.text())
|
||||
tool.CornerRadius = FreeCAD.Units.parseQuantity(editform.CornerRadiusField.text())
|
||||
tool.CuttingEdgeAngle = editform.CuttingEdgeAngleField.value()
|
||||
tool.CuttingEdgeAngle = FreeCAD.Units.Quantity(editform.CuttingEdgeAngleField.text())
|
||||
tool.CuttingEdgeHeight = FreeCAD.Units.parseQuantity(editform.CuttingEdgeHeightField.text())
|
||||
|
||||
if self.TLM.updateTool(listname, toolnum, tool) is True:
|
||||
@@ -505,9 +513,8 @@ class EditorPanel():
|
||||
|
||||
def importFile(self):
|
||||
"imports a tooltable from a file"
|
||||
filename = QtGui.QFileDialog.getOpenFileName(self.form, _translate(
|
||||
"TooltableEditor", "Open tooltable", None), None, _translate("TooltableEditor", "Tooltable XML (*.xml);;HeeksCAD tooltable (*.tooltable)", None))
|
||||
if filename:
|
||||
filename = QtGui.QFileDialog.getOpenFileName(self.form, _translate( "TooltableEditor", "Open tooltable", None), None, _translate("TooltableEditor", "Tooltable XML (*.xml);;HeeksCAD tooltable (*.tooltable)", None))
|
||||
if filename[0]:
|
||||
listname = self.form.listView.selectedIndexes()[0].data()
|
||||
if self.TLM.read(filename, listname):
|
||||
self.loadTable(self.form.listView.selectedIndexes()[0])
|
||||
@@ -517,7 +524,7 @@ class EditorPanel():
|
||||
"imports a tooltable from a file"
|
||||
filename = QtGui.QFileDialog.getSaveFileName(self.form, _translate("TooltableEditor", "Save tooltable", None), None, _translate("TooltableEditor", "Tooltable XML (*.xml)", None))
|
||||
|
||||
if filename:
|
||||
if filename[0]:
|
||||
listname = self.form.listView.selectedIndexes()[0].data()
|
||||
self.TLM.write(filename, listname)
|
||||
|
||||
|
||||
Reference in New Issue
Block a user