Fixed merge issues

This commit is contained in:
Markus Lampert
2018-09-03 12:52:03 -07:00
committed by wmayer
parent 7a65e48d33
commit 18bf6b6cb8
8 changed files with 389 additions and 234 deletions

View File

@@ -80,115 +80,6 @@ class CommandJobCreate:
FreeCADGui.doCommand('PathScripts.PathJobGui.Create(%s, %s)' % ([o.Name for o in base], template))
class DlgJobTemplateExport:
DataObject = QtCore.Qt.ItemDataRole.UserRole
def __init__(self, job, parent=None):
self.job = job
self.dialog = FreeCADGui.PySideUic.loadUi(":/panels/DlgJobTemplateExport.ui")
if parent:
self.dialog.setParent(parent)
parent.layout().addWidget(self.dialog)
self.dialog.dialogButtonBox.hide()
else:
self.dialog.exportButtonBox.hide()
self.updateUI()
self.dialog.toolsGroup.clicked.connect(self.checkUncheckTools)
def exportButton(self):
return self.dialog.exportButton
def updateUI(self):
job = self.job
if job.PostProcessor:
ppHint = "%s %s %s" % (job.PostProcessor, job.PostProcessorArgs, job.PostProcessorOutputFile)
self.dialog.postProcessingHint.setText(ppHint)
else:
self.dialog.postProcessingGroup.setEnabled(False)
self.dialog.postProcessingGroup.setChecked(False)
if job.Stock and not PathJob.isResourceClone(job, 'Stock', 'Stock'):
stockType = PathStock.StockType.FromStock(job.Stock)
if stockType == PathStock.StockType.FromBase:
seHint = translate('PathJob', "Base -/+ %.2f/%.2f %.2f/%.2f %.2f/%.2f") % (job.Stock.ExtXneg, job.Stock.ExtXpos, job.Stock.ExtYneg, job.Stock.ExtYpos, job.Stock.ExtZneg, job.Stock.ExtZpos)
self.dialog.stockPlacement.setChecked(False)
elif stockType == PathStock.StockType.CreateBox:
seHint = translate('PathJob', "Box: %.2f x %.2f x %.2f") % (job.Stock.Length, job.Stock.Width, job.Stock.Height)
elif stockType == PathStock.StockType.CreateCylinder:
seHint = translate('PathJob', "Cylinder: %.2f x %.2f") % (job.Stock.Radius, job.Stock.Height)
else:
seHint = '-'
PathLog.error(translate('PathJob', 'Unsupported stock type'))
self.dialog.stockExtentHint.setText(seHint)
spHint = "%s" % job.Stock.Placement
self.dialog.stockPlacementHint.setText(spHint)
rapidChanged = not job.SetupSheet.Proxy.hasDefaultToolRapids()
depthsChanged = not job.SetupSheet.Proxy.hasDefaultOperationDepths()
heightsChanged = not job.SetupSheet.Proxy.hasDefaultOperationHeights()
opsWithSettings = job.SetupSheet.Proxy.operationsWithSettings()
settingsChanged = rapidChanged or depthsChanged or heightsChanged or 0 != len(opsWithSettings)
self.dialog.settingsGroup.setChecked(settingsChanged)
self.dialog.settingToolRapid.setChecked(rapidChanged)
self.dialog.settingOperationDepths.setChecked(depthsChanged)
self.dialog.settingOperationHeights.setChecked(heightsChanged)
self.dialog.settingsOpsList.clear()
for op in opsWithSettings:
item = QtGui.QListWidgetItem(op)
item.setCheckState(QtCore.Qt.CheckState.Checked)
self.dialog.settingsOpsList.addItem(item)
self.dialog.toolsList.clear()
for tc in sorted(job.ToolController, key=lambda o: o.Label):
item = QtGui.QListWidgetItem(tc.Label)
item.setData(self.DataObject, tc)
item.setCheckState(QtCore.Qt.CheckState.Checked)
self.dialog.toolsList.addItem(item)
def checkUncheckTools(self):
state = QtCore.Qt.CheckState.Checked if self.dialog.toolsGroup.isChecked() else QtCore.Qt.CheckState.Unchecked
for i in range(self.dialog.toolsList.count()):
self.dialog.toolsList.item(i).setCheckState(state)
def includePostProcessing(self):
return self.dialog.postProcessingGroup.isChecked()
def includeToolControllers(self):
tcs = []
for i in range(self.dialog.toolsList.count()):
item = self.dialog.toolsList.item(i)
if item.checkState() == QtCore.Qt.CheckState.Checked:
tcs.append(item.data(self.DataObject))
return tcs
def includeStock(self):
return self.dialog.stockGroup.isChecked()
def includeStockExtent(self):
return self.dialog.stockExtent.isChecked()
def includeStockPlacement(self):
return self.dialog.stockPlacement.isChecked()
def includeSettings(self):
return self.dialog.settingsGroup.isChecked()
def includeSettingToolRapid(self):
return self.dialog.settingToolRapid.isChecked()
def includeSettingOperationHeights(self):
return self.dialog.settingOperationHeights.isChecked()
def includeSettingOperationDepths(self):
return self.dialog.settingOperationDepths.isChecked()
def includeSettingOpsSettings(self):
ops = []
for i in range(self.dialog.settingsOpsList.count()):
item = self.dialog.settingsOpsList.item(i)
if item.checkState() == QtCore.Qt.CheckState.Checked:
ops.append(item.text())
return ops
def exec_(self):
return self.dialog.exec_()
class CommandJobTemplateExport:
'''
Command to export a template of a given job.