Persiste ExtensionCorners state for consistent UI
This commit is contained in:
@@ -188,6 +188,9 @@ class ObjectPocket(PathPocketBase.ObjectPocket):
|
||||
obj.addProperty('App::PropertyDistance', 'ExtensionLengthDefault', 'Extension', QtCore.QT_TRANSLATE_NOOP('PathPocketShape', 'Default length of extensions.'))
|
||||
if not hasattr(obj, 'ExtensionFeature'):
|
||||
obj.addProperty('App::PropertyLinkSubListGlobal', 'ExtensionFeature', 'Extension', QtCore.QT_TRANSLATE_NOOP('PathPocketShape', 'List of features to extend.'))
|
||||
if not hasattr(obj, 'ExtensionCorners'):
|
||||
obj.addProperty('App::PropertyBool', 'ExtensionCorners', 'Extension', QtCore.QT_TRANSLATE_NOOP('PathPocketShape', 'When enabled connected extension edges are combined to wires.'))
|
||||
obj.UseOutline = True
|
||||
|
||||
obj.setEditorMode('ExtensionFeature', 2)
|
||||
|
||||
|
||||
@@ -190,6 +190,8 @@ class TaskPanelExtensionPage(PathOpGui.TaskPanelPage):
|
||||
def getFields(self, obj):
|
||||
PathLog.track(obj.Label, self.model.rowCount(), self.model.columnCount())
|
||||
|
||||
if obj.ExtensionCorners != self.form.extendCorners.isChecked():
|
||||
obj.ExtensionCorners = self.form.extendCorners.isChecked()
|
||||
self.defaultLength.updateProperty()
|
||||
|
||||
extensions = []
|
||||
@@ -206,6 +208,8 @@ class TaskPanelExtensionPage(PathOpGui.TaskPanelPage):
|
||||
def setFields(self, obj):
|
||||
PathLog.track(obj.Label)
|
||||
|
||||
if obj.ExtensionCorners != self.form.extendCorners.isChecked():
|
||||
self.form.extendCorners.toggle()
|
||||
self.defaultLength.updateSpinBox()
|
||||
self.extensions = obj.Proxy.getExtensions(obj)
|
||||
self.setExtensions(self.extensions)
|
||||
@@ -409,6 +413,11 @@ class TaskPanelExtensionPage(PathOpGui.TaskPanelPage):
|
||||
self.forAllItemsCall(disableExtensionEdit)
|
||||
#self.setDirty()
|
||||
|
||||
def toggleExtensionCorners(self):
|
||||
self.setExtensions(self.obj.Proxy.getExtensions(self.obj))
|
||||
self.selectionChanged()
|
||||
self.setDirty()
|
||||
|
||||
def getSignalsForUpdate(self, obj):
|
||||
PathLog.track(obj.Label)
|
||||
signals = []
|
||||
@@ -417,7 +426,7 @@ class TaskPanelExtensionPage(PathOpGui.TaskPanelPage):
|
||||
|
||||
def registerSignalHandlers(self, obj):
|
||||
self.form.showExtensions.clicked.connect(self.showHideExtension)
|
||||
self.form.extendCorners.clicked.connect(lambda : self.setExtensions(obj.Proxy.getExtensions(obj)))
|
||||
self.form.extendCorners.clicked.connect(self.toggleExtensionCorners)
|
||||
self.form.buttonClear.clicked.connect(self.extensionsClear)
|
||||
self.form.buttonDisable.clicked.connect(self.extensionsDisable)
|
||||
self.form.buttonEnable.clicked.connect(self.extensionsEnable)
|
||||
|
||||
Reference in New Issue
Block a user