mirror of
https://github.com/Ultimaker/Cura.git
synced 2025-07-10 08:17:49 -06:00
CURA-4400 prevent disabling last enabled extruder
This commit is contained in:
parent
2c364f4699
commit
8af82cc3f4
3 changed files with 10 additions and 1 deletions
|
@ -145,6 +145,7 @@ class MachineManager(QObject):
|
||||||
activeStackValueChanged = pyqtSignal() # Emitted whenever a value inside the active stack is changed.
|
activeStackValueChanged = pyqtSignal() # Emitted whenever a value inside the active stack is changed.
|
||||||
activeStackValidationChanged = pyqtSignal() # Emitted whenever a validation inside active container is changed
|
activeStackValidationChanged = pyqtSignal() # Emitted whenever a validation inside active container is changed
|
||||||
stacksValidationChanged = pyqtSignal() # Emitted whenever a validation is changed
|
stacksValidationChanged = pyqtSignal() # Emitted whenever a validation is changed
|
||||||
|
numberExtrudersEnabledChanged = pyqtSignal() # Emitted when the number of extruders that are enabled changed
|
||||||
|
|
||||||
blurSettings = pyqtSignal() # Emitted to force fields in the advanced sidebar to un-focus, so they update properly
|
blurSettings = pyqtSignal() # Emitted to force fields in the advanced sidebar to un-focus, so they update properly
|
||||||
|
|
||||||
|
@ -880,7 +881,13 @@ class MachineManager(QObject):
|
||||||
for position, extruder in self._global_container_stack.extruders.items():
|
for position, extruder in self._global_container_stack.extruders.items():
|
||||||
if extruder.isEnabled:
|
if extruder.isEnabled:
|
||||||
extruder_count += 1
|
extruder_count += 1
|
||||||
definition_changes_container.setProperty("extruders_enabled_count", "value", extruder_count)
|
if self.numberExtrudersEnabled != extruder_count:
|
||||||
|
definition_changes_container.setProperty("extruders_enabled_count", "value", extruder_count)
|
||||||
|
self.numberExtrudersEnabledChanged.emit()
|
||||||
|
|
||||||
|
@pyqtProperty(int, notify = numberExtrudersEnabledChanged)
|
||||||
|
def numberExtrudersEnabled(self):
|
||||||
|
return self._global_container_stack.definitionChanges.getProperty("extruders_enabled_count", "value")
|
||||||
|
|
||||||
@pyqtProperty(str, notify = extruderChanged)
|
@pyqtProperty(str, notify = extruderChanged)
|
||||||
def defaultExtruderPosition(self):
|
def defaultExtruderPosition(self):
|
||||||
|
|
|
@ -217,6 +217,7 @@ UM.MainWindow
|
||||||
text: catalog.i18nc("@action:inmenu", "Disable Extruder")
|
text: catalog.i18nc("@action:inmenu", "Disable Extruder")
|
||||||
onTriggered: Cura.MachineManager.setExtruderEnabled(model.index, false)
|
onTriggered: Cura.MachineManager.setExtruderEnabled(model.index, false)
|
||||||
visible: Cura.MachineManager.getExtruder(model.index).isEnabled
|
visible: Cura.MachineManager.getExtruder(model.index).isEnabled
|
||||||
|
enabled: Cura.MachineManager.numberExtrudersEnabled > 1
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -178,6 +178,7 @@ Column
|
||||||
text: catalog.i18nc("@action:inmenu", "Disable Extruder")
|
text: catalog.i18nc("@action:inmenu", "Disable Extruder")
|
||||||
onTriggered: Cura.MachineManager.setExtruderEnabled(model.index, false)
|
onTriggered: Cura.MachineManager.setExtruderEnabled(model.index, false)
|
||||||
visible: extruder_enabled
|
visible: extruder_enabled
|
||||||
|
enabled: Cura.MachineManager.numberExtrudersEnabled > 1
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue