diff --git a/cura/Settings/MachineManager.py b/cura/Settings/MachineManager.py index cc5c4aa539..d802c9d142 100755 --- a/cura/Settings/MachineManager.py +++ b/cura/Settings/MachineManager.py @@ -1490,3 +1490,9 @@ class MachineManager(QObject): stacks = ExtruderManager.getInstance().getActiveExtruderStacks() stacks.append(self._global_container_stack) return [ s.containersChanged for s in stacks ] + + @pyqtSlot(str, str, str) + def setSettingForAllExtruders(self, setting_name: str, property_name: str, property_value: str): + for key, extruder in self._global_container_stack.extruders.items(): + container = extruder.getContainer(0) + container.setProperty(setting_name, property_name, property_value) diff --git a/resources/qml/SidebarSimple.qml b/resources/qml/SidebarSimple.qml index ae9fe57b64..6630291e56 100644 --- a/resources/qml/SidebarSimple.qml +++ b/resources/qml/SidebarSimple.qml @@ -524,6 +524,8 @@ Item // Explicitly cast to string to make sure the value passed to Python is an integer. infillDensity.setPropertyValue("value", String(roundedSliderValue)) + + Cura.MachineManager.setSettingForAllExtruders("infill_sparse_density", "value", roundedSliderValue) } style: SliderStyle @@ -656,11 +658,19 @@ Item if (parseInt(infillSteps.properties.value) == 0) { previousInfillDensity = parseInt(infillDensity.properties.value) infillDensity.setPropertyValue("value", String(90)) + Cura.MachineManager.setSettingForAllExtruders("infill_sparse_density", "value", String(90)) } else { infillDensity.setPropertyValue("value", String(previousInfillDensity)) + Cura.MachineManager.setSettingForAllExtruders("infill_sparse_density", "value", String(previousInfillDensity)) } - infillSteps.setPropertyValue("value", (parseInt(infillSteps.properties.value) == 0) ? 5 : 0) + var infill_steps_value = 0; + if (parseInt(infillSteps.properties.value) == 0) + infill_steps_value = 5; + + infillSteps.setPropertyValue("value", infill_steps_value) + + Cura.MachineManager.setSettingForAllExtruders("gradual_infill_steps", "value", infill_steps_value) } onEntered: {