Renamed Settings to SetupSheet.
This commit is contained in:
@@ -74,7 +74,7 @@ SET(PathScripts_SRCS
|
||||
PathScripts/PathProfileFacesGui.py
|
||||
PathScripts/PathSanity.py
|
||||
PathScripts/PathSelection.py
|
||||
PathScripts/PathSettings.py
|
||||
PathScripts/PathSetupSheet.py
|
||||
PathScripts/PathSimpleCopy.py
|
||||
PathScripts/PathStock.py
|
||||
PathScripts/PathStop.py
|
||||
|
||||
@@ -115,7 +115,7 @@
|
||||
<string><html><head/><body><p>Enable to include the default values in the template.</p></body></html></string>
|
||||
</property>
|
||||
<property name="title">
|
||||
<string>Settings</string>
|
||||
<string>Setup Sheet</string>
|
||||
</property>
|
||||
<property name="checkable">
|
||||
<bool>true</bool>
|
||||
|
||||
@@ -27,7 +27,7 @@ import Draft
|
||||
import FreeCAD
|
||||
import PathScripts.PathIconViewProvider as PathIconViewProvider
|
||||
import PathScripts.PathLog as PathLog
|
||||
import PathScripts.PathSettings as PathSettings
|
||||
import PathScripts.PathSetupSheet as PathSetupSheet
|
||||
import PathScripts.PathStock as PathStock
|
||||
import PathScripts.PathToolController as PathToolController
|
||||
import PathScripts.PathUtil as PathUtil
|
||||
@@ -57,7 +57,7 @@ class JobTemplate:
|
||||
PostProcessor = 'Post'
|
||||
PostProcessorArgs = 'PostArgs'
|
||||
PostProcessorOutputFile = 'Output'
|
||||
Settings = 'Settings'
|
||||
SetupSheet = 'SetupSheet'
|
||||
Stock = 'Stock'
|
||||
ToolController = 'ToolController'
|
||||
Version = 'Version'
|
||||
@@ -121,7 +121,7 @@ class ObjectJob:
|
||||
obj.setEditorMode('Operations', 2) # hide
|
||||
obj.setEditorMode('Placement', 2)
|
||||
|
||||
self.setupSettings(obj)
|
||||
self.setupSetupSheet(obj)
|
||||
|
||||
obj.Base = createResourceClone(obj, base, 'Base', 'BaseGeometry')
|
||||
obj.Proxy = self
|
||||
@@ -136,11 +136,11 @@ class ObjectJob:
|
||||
if obj.Stock.ViewObject:
|
||||
obj.Stock.ViewObject.Visibility = False
|
||||
|
||||
def setupSettings(self, obj):
|
||||
self.settings = PathSettings.Settings(obj)
|
||||
if not hasattr(obj, 'Settings'):
|
||||
obj.addProperty('App::PropertyLink', 'Settings', 'Base', QtCore.QT_TRANSLATE_NOOP('PathJob', 'Spreadsheet holding the settings for this job'))
|
||||
self.settings.setup()
|
||||
def setupSetupSheet(self, obj):
|
||||
self.setupSheet = PathSetupSheet.SetupSheet(obj)
|
||||
if not hasattr(obj, 'SetupSheet'):
|
||||
obj.addProperty('App::PropertyLink', 'SetupSheet', 'Base', QtCore.QT_TRANSLATE_NOOP('PathJob', 'Spreadsheet holding the settings for this job'))
|
||||
self.setupSheet.setup()
|
||||
|
||||
def onDelete(self, obj, arg2=None):
|
||||
'''Called by the view provider, there doesn't seem to be a callback on the obj itself.'''
|
||||
@@ -171,9 +171,9 @@ class ObjectJob:
|
||||
for tc in obj.ToolController:
|
||||
doc.removeObject(tc.Name)
|
||||
obj.ToolController = []
|
||||
# Settings
|
||||
doc.removeObject(obj.Settings.Name)
|
||||
obj.Settings = None
|
||||
# SetupSheet
|
||||
doc.removeObject(obj.SetupSheet.Name)
|
||||
obj.SetupSheet = None
|
||||
|
||||
def fixupResourceClone(self, obj, name, icon):
|
||||
if not isResourceClone(obj, name, name) and not isArchPanelSheet(obj):
|
||||
@@ -183,7 +183,7 @@ class ObjectJob:
|
||||
|
||||
def onDocumentRestored(self, obj):
|
||||
self.fixupResourceClone(obj, 'Base', 'BaseGeometry')
|
||||
self.setupSettings(obj)
|
||||
self.setupSetupSheet(obj)
|
||||
|
||||
def onChanged(self, obj, prop):
|
||||
if prop == "PostProcessor" and obj.PostProcessor:
|
||||
@@ -206,8 +206,8 @@ class ObjectJob:
|
||||
attrs = json.load(fp)
|
||||
|
||||
if attrs.get(JobTemplate.Version) and 1 == int(attrs[JobTemplate.Version]):
|
||||
if attrs.get(JobTemplate.Settings):
|
||||
self.settings.setFromTemplate(attrs[JobTemplate.Settings])
|
||||
if attrs.get(JobTemplate.SetupSheet):
|
||||
self.setupSheet.setFromTemplate(attrs[JobTemplate.SetupSheet])
|
||||
|
||||
if attrs.get(JobTemplate.GeometryTolerance):
|
||||
obj.GeometryTolerance = float(attrs.get(JobTemplate.GeometryTolerance))
|
||||
@@ -272,8 +272,8 @@ class ObjectJob:
|
||||
group = self.obj.ToolController
|
||||
PathLog.debug("addToolController(%s): %s" % (tc.Label, [t.Label for t in group]))
|
||||
if tc.Name not in [str(t.Name) for t in group]:
|
||||
tc.setExpression('VertRapid', "%s.%s" % (self.obj.Settings.Name, PathSettings.Default.VertRapid))
|
||||
tc.setExpression('HorizRapid', "%s.%s" % (self.obj.Settings.Name, PathSettings.Default.HorizRapid))
|
||||
tc.setExpression('VertRapid', "%s.%s" % (self.obj.SetupSheet.Name, PathSetupSheet.Default.VertRapid))
|
||||
tc.setExpression('HorizRapid', "%s.%s" % (self.obj.SetupSheet.Name, PathSetupSheet.Default.HorizRapid))
|
||||
group.append(tc)
|
||||
self.obj.ToolController = group
|
||||
|
||||
|
||||
@@ -252,14 +252,14 @@ class CommandJobTemplateExport:
|
||||
if stockAttrs:
|
||||
attrs[PathJob.JobTemplate.Stock] = stockAttrs
|
||||
|
||||
# settings
|
||||
settingsAttrs = None
|
||||
# setup sheet
|
||||
setupSheetAttrs = None
|
||||
if dialog:
|
||||
settingsAttrs = job.Proxy.settings.templateAttributes(dialog.includeDefaultToolRapid(), dialog.includeDefaultOperationHeights())
|
||||
setupSheetAttrs = job.Proxy.setupSheet.templateAttributes(dialog.includeDefaultToolRapid(), dialog.includeDefaultOperationHeights())
|
||||
else:
|
||||
settingsAttrs = job.Proxy.settings.templateAttributes(True, True)
|
||||
if settingsAttrs:
|
||||
attrs[PathJob.JobTemplate.Settings] = settingsAttrs
|
||||
setupSheetAttrs = job.Proxy.setupSheet.templateAttributes(True, True)
|
||||
if setupSheetAttrs:
|
||||
attrs[PathJob.JobTemplate.SetupSheet] = setupSheetAttrs
|
||||
|
||||
# write template
|
||||
with open(unicode(path), 'wb') as fp:
|
||||
|
||||
@@ -156,9 +156,9 @@ class ViewProvider:
|
||||
children.append(self.obj.Base)
|
||||
if self.obj.Stock:
|
||||
children.append(self.obj.Stock)
|
||||
if hasattr(self.obj, 'Settings'):
|
||||
# when loading a job that didn't have settings they might not've been created yet
|
||||
children.append(self.obj.Settings)
|
||||
if hasattr(self.obj, 'SetupSheet'):
|
||||
# when loading a job that didn't have a setup sheet they might not've been created yet
|
||||
children.append(self.obj.SetupSheet)
|
||||
return children
|
||||
|
||||
def onDelete(self, vobj, arg2=None):
|
||||
|
||||
@@ -25,7 +25,7 @@
|
||||
import FreeCAD
|
||||
import Path
|
||||
import PathScripts.PathLog as PathLog
|
||||
import PathScripts.PathSettings as PathSettings
|
||||
import PathScripts.PathSetupSheet as PathSetupSheet
|
||||
import PathScripts.PathUtil as PathUtil
|
||||
import PathScripts.PathUtils as PathUtils
|
||||
|
||||
@@ -255,8 +255,8 @@ class ObjectOp(object):
|
||||
obj.setExpression('StepDown', 'OpToolDiameter')
|
||||
|
||||
if FeatureHeights & features:
|
||||
obj.setExpression('SafeHeight', "%s.%s+StartDepth" % (job.Settings.Name, PathSettings.Default.SafeHeight))
|
||||
obj.setExpression('ClearanceHeight', "%s.%s+StartDepth" % (job.Settings.Name, PathSettings.Default.ClearanceHeight))
|
||||
obj.setExpression('SafeHeight', "%s.%s+StartDepth" % (job.SetupSheet.Name, PathSetupSheet.Default.SafeHeight))
|
||||
obj.setExpression('ClearanceHeight', "%s.%s+StartDepth" % (job.SetupSheet.Name, PathSetupSheet.Default.ClearanceHeight))
|
||||
|
||||
if FeatureStartPoint & features:
|
||||
obj.UseStartPoint = False
|
||||
|
||||
@@ -27,7 +27,7 @@ import Path
|
||||
import PathScripts.PathLog as PathLog
|
||||
import PySide
|
||||
|
||||
__title__ = "Settings for a Job."
|
||||
__title__ = "Setup Sheet for a Job."
|
||||
__author__ = "sliptonic (Brad Collette)"
|
||||
__url__ = "http://www.freecadweb.org"
|
||||
__doc__ = "A container for all default values and job specific configuration values."
|
||||
@@ -47,34 +47,35 @@ class Default:
|
||||
SafeHeight = 'DefaultSafeHeight'
|
||||
ClearanceHeight = 'DefaultClearanceHeight'
|
||||
|
||||
class Settings:
|
||||
class SetupSheet:
|
||||
|
||||
def __init__(self, obj):
|
||||
self.obj = obj
|
||||
|
||||
def setup(self):
|
||||
self.obj.Settings = self.obj.Document.addObject('Spreadsheet::Sheet', 'Settings')
|
||||
self.obj.Settings.set('A2', translate('PathSettings', 'Tool Rapid Speeds'))
|
||||
self.createSetting(3, Default.HorizRapid, '0 mm/s', translate('PathSettings', 'Horizontal'), translate('PathSettings', 'Default speed for horizzontal rapid moves.'))
|
||||
self.createSetting(4, Default.VertRapid, '0 mm/s', translate('PathSettings', 'Vertical'), translate('PathSettings', 'Default speed for vertical rapid moves.'))
|
||||
self.obj.Settings.set('A6', translate('PathSettings', 'Operation Heights'))
|
||||
self.createSetting(7, Default.SafeHeight, '3 mm', translate('PathSettings', 'Safe Height'), translate('PathSettings', 'Default value added to StartDepth used for the safe height.'))
|
||||
self.createSetting(8, Default.ClearanceHeight, '5 mm', translate('PathSettings', 'Clearance Height'), translate('PathSettings', 'Default value added to StartDepth used for the clearance height.'))
|
||||
self.obj.SetupSheet = self.obj.Document.addObject('Spreadsheet::Sheet', 'Setup_Sheet')
|
||||
self.obj.SetupSheet.Label = translate('PathSetupSheet', 'Setup Sheet')
|
||||
self.obj.SetupSheet.set('A2', translate('PathSetupSheet', 'Tool Rapid Speeds'))
|
||||
self.createSetting(3, Default.HorizRapid, '0 mm/s', translate('PathSetupSheet', 'Horizontal'), translate('PathSetupSheet', 'Default speed for horizzontal rapid moves.'))
|
||||
self.createSetting(4, Default.VertRapid, '0 mm/s', translate('PathSetupSheet', 'Vertical'), translate('PathSetupSheet', 'Default speed for vertical rapid moves.'))
|
||||
self.obj.SetupSheet.set('A6', translate('PathSetupSheet', 'Operation Heights'))
|
||||
self.createSetting(7, Default.SafeHeight, '3 mm', translate('PathSetupSheet', 'Safe Height'), translate('PathSetupSheet', 'Default value added to StartDepth used for the safe height.'))
|
||||
self.createSetting(8, Default.ClearanceHeight, '5 mm', translate('PathSetupSheet', 'Clearance Height'), translate('PathSetupSheet', 'Default value added to StartDepth used for the clearance height.'))
|
||||
|
||||
def updateSetting(self, name, value):
|
||||
cell = self.obj.Settings.getCellFromAlias(name)
|
||||
cell = self.obj.SetupSheet.getCellFromAlias(name)
|
||||
PathLog.debug("updateSetting(%s, %s): %s" % (name, value, cell))
|
||||
self.obj.Settings.set(cell, value)
|
||||
self.obj.SetupSheet.set(cell, value)
|
||||
|
||||
def createSetting(self, row, name, value, label, desc):
|
||||
labelCell = "B%d" % row
|
||||
valueCell = "C%d" % row
|
||||
descCell = "D%d" % row
|
||||
PathLog.debug("createSetting(%d, %s, %s): %s" % (row, name, value, valueCell))
|
||||
self.obj.Settings.set(labelCell, label)
|
||||
self.obj.Settings.set(valueCell, value)
|
||||
self.obj.Settings.setAlias(valueCell, name)
|
||||
self.obj.Settings.set(descCell, desc)
|
||||
self.obj.SetupSheet.set(labelCell, label)
|
||||
self.obj.SetupSheet.set(valueCell, value)
|
||||
self.obj.SetupSheet.setAlias(valueCell, name)
|
||||
self.obj.SetupSheet.set(descCell, desc)
|
||||
|
||||
def setFromTemplate(self, attrs):
|
||||
if attrs.get(Default.VertRapid):
|
||||
@@ -89,10 +90,10 @@ class Settings:
|
||||
def templateAttributes(self, includeRapids, includeHeights):
|
||||
attrs = {}
|
||||
if includeRapids:
|
||||
attrs[Default.VertRapid] = self.obj.Settings.DefaultVertRapid.UserString
|
||||
attrs[Default.HorizRapid] = self.obj.Settings.DefaultHorizRapid.UserString
|
||||
attrs[Default.VertRapid] = self.obj.SetupSheet.DefaultVertRapid.UserString
|
||||
attrs[Default.HorizRapid] = self.obj.SetupSheet.DefaultHorizRapid.UserString
|
||||
if includeHeights:
|
||||
attrs[Default.SafeHeight] = self.obj.Settings.DefaultSafeHeight.UserString
|
||||
attrs[Default.ClearanceHeight] = self.obj.Settings.DefaultClearanceHeight.UserString
|
||||
attrs[Default.SafeHeight] = self.obj.SetupSheet.DefaultSafeHeight.UserString
|
||||
attrs[Default.ClearanceHeight] = self.obj.SetupSheet.DefaultClearanceHeight.UserString
|
||||
return attrs
|
||||
|
||||
Reference in New Issue
Block a user