Prevent changing material / variant of disabled extruder

It is disabled, so changing it's material / variant doesn't make that much sense...

CURA-6872
This commit is contained in:
Jaime van Kessel 2019-10-10 13:03:39 +02:00
parent ec4817db87
commit 07a20e131a
No known key found for this signature in database
GPG key ID: 3710727397403C91
3 changed files with 8 additions and 2 deletions

View file

@ -221,6 +221,7 @@ Item
OldControls.CheckBox OldControls.CheckBox
{ {
id: enabledCheckbox
checked: Cura.MachineManager.activeStack != null ? Cura.MachineManager.activeStack.isEnabled : false checked: Cura.MachineManager.activeStack != null ? Cura.MachineManager.activeStack.isEnabled : false
enabled: !checked || Cura.MachineManager.numberExtrudersEnabled > 1 //Disable if it's the last enabled extruder. enabled: !checked || Cura.MachineManager.numberExtrudersEnabled > 1 //Disable if it's the last enabled extruder.
height: parent.height height: parent.height
@ -265,6 +266,7 @@ Item
text: Cura.MachineManager.activeStack !== null ? Cura.MachineManager.activeStack.material.name : "" text: Cura.MachineManager.activeStack !== null ? Cura.MachineManager.activeStack.material.name : ""
tooltip: text tooltip: text
enabled: enabledCheckbox.checked
width: selectors.controlWidth width: selectors.controlWidth
height: parent.height height: parent.height
@ -324,7 +326,8 @@ Item
height: parent.height height: parent.height
width: selectors.controlWidth width: selectors.controlWidth
style: UM.Theme.styles.print_setup_header_button style: UM.Theme.styles.print_setup_header_button
activeFocusOnPress: true; activeFocusOnPress: true
enabled: enabledCheckbox.checked
menu: Cura.NozzleMenu { extruderIndex: Cura.ExtruderManager.activeExtruderIndex } menu: Cura.NozzleMenu { extruderIndex: Cura.ExtruderManager.activeExtruderIndex }
} }

View file

@ -50,6 +50,7 @@ Menu
{ {
text: model.brand + " " + model.name text: model.brand + " " + model.name
checkable: true checkable: true
enabled: Cura.MachineManager.activeMachine.extruderList[extruderIndex].isEnabled
checked: model.root_material_id === menu.currentRootMaterialId checked: model.root_material_id === menu.currentRootMaterialId
onTriggered: Cura.MachineManager.setMaterial(extruderIndex, model.container_node) onTriggered: Cura.MachineManager.setMaterial(extruderIndex, model.container_node)
exclusiveGroup: favoriteGroup // One favorite and one item from the others can be active at the same time. exclusiveGroup: favoriteGroup // One favorite and one item from the others can be active at the same time.
@ -72,6 +73,7 @@ Menu
{ {
text: model.name text: model.name
checkable: true checkable: true
enabled: Cura.MachineManager.activeMachine.extruderList[extruderIndex].isEnabled
checked: model.root_material_id === menu.currentRootMaterialId checked: model.root_material_id === menu.currentRootMaterialId
exclusiveGroup: group exclusiveGroup: group
onTriggered: Cura.MachineManager.setMaterial(extruderIndex, model.container_node) onTriggered: Cura.MachineManager.setMaterial(extruderIndex, model.container_node)
@ -110,6 +112,7 @@ Menu
{ {
text: model.name text: model.name
checkable: true checkable: true
enabled: Cura.MachineManager.activeMachine.extruderList[extruderIndex].isEnabled
checked: model.id === menu.activeMaterialId checked: model.id === menu.activeMaterialId
exclusiveGroup: group exclusiveGroup: group
onTriggered: Cura.MachineManager.setMaterial(extruderIndex, model.container_node) onTriggered: Cura.MachineManager.setMaterial(extruderIndex, model.container_node)

View file

@ -32,7 +32,7 @@ Menu
return extruder.variant.name == model.hotend_name return extruder.variant.name == model.hotend_name
} }
exclusiveGroup: group exclusiveGroup: group
enabled: Cura.MachineManager.activeMachine.extruderList[extruderIndex].isEnabled
onTriggered: { onTriggered: {
Cura.MachineManager.setVariant(menu.extruderIndex, model.container_node); Cura.MachineManager.setVariant(menu.extruderIndex, model.container_node);
} }