From d97c9f6e4c37a09bb2ef9efd0ff80ce4a1da1c19 Mon Sep 17 00:00:00 2001 From: Ghostkeeper Date: Thu, 4 Aug 2016 11:36:45 +0200 Subject: [PATCH 1/3] Don't use extruder fallback on single-extrusion machines Due to a gnawing feeling in the back of my head, I tested this with an UM2 and adding settings failed there. This fixes it. Contributes to issue CURA-2011. --- .../PerObjectSettingsTool/PerObjectSettingVisibilityHandler.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/plugins/PerObjectSettingsTool/PerObjectSettingVisibilityHandler.py b/plugins/PerObjectSettingsTool/PerObjectSettingVisibilityHandler.py index ebb372ad96..8386095ee1 100644 --- a/plugins/PerObjectSettingsTool/PerObjectSettingVisibilityHandler.py +++ b/plugins/PerObjectSettingsTool/PerObjectSettingVisibilityHandler.py @@ -59,7 +59,7 @@ class PerObjectSettingVisibilityHandler(UM.Settings.Models.SettingVisibilityHand definition = self._stack.getSettingDefinition(item) if definition: new_instance = SettingInstance(definition, settings) - if definition.global_inherits_stack: + if definition.global_inherits_stack and self._stack.getProperty("machine_extruder_count", "value") > 1: #Obtain the value from the correct container stack. Only once, upon adding the setting. stack_nr = self._stack.getProperty(item, "global_inherits_stack") #Stack to get the setting from. if int(stack_nr) >= 0: #Only if it defines an extruder stack. From ee95e90b4b4a5cbbb9d7cd79f93f911435d46814 Mon Sep 17 00:00:00 2001 From: Ghostkeeper Date: Thu, 4 Aug 2016 12:36:33 +0200 Subject: [PATCH 2/3] Fix display update bug in per-object panel Setting .value creates a new Python attribute in the object. Setting with setProperty creates the setting property, like we wanted. Contributes to issue CURA-2011. --- .../PerObjectSettingsTool/PerObjectSettingVisibilityHandler.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/plugins/PerObjectSettingsTool/PerObjectSettingVisibilityHandler.py b/plugins/PerObjectSettingsTool/PerObjectSettingVisibilityHandler.py index 8386095ee1..a580382845 100644 --- a/plugins/PerObjectSettingsTool/PerObjectSettingVisibilityHandler.py +++ b/plugins/PerObjectSettingsTool/PerObjectSettingVisibilityHandler.py @@ -64,7 +64,7 @@ class PerObjectSettingVisibilityHandler(UM.Settings.Models.SettingVisibilityHand stack_nr = self._stack.getProperty(item, "global_inherits_stack") #Stack to get the setting from. if int(stack_nr) >= 0: #Only if it defines an extruder stack. extruder_stack = UM.Settings.ContainerRegistry.getInstance().findContainerStacks(id = ExtruderManager.getInstance().extruderIds[stack_nr])[0] - new_instance.value = extruder_stack.getProperty(item, "value") + new_instance.setProperty("value", extruder_stack.getProperty(item, "value")) settings.addInstance(new_instance) visibility_changed = True else: From b89a9a81130a59fd6f658aba77f7cd4841b698a6 Mon Sep 17 00:00:00 2001 From: Ghostkeeper Date: Thu, 4 Aug 2016 12:50:03 +0200 Subject: [PATCH 3/3] Allow freezing temperatures But not on Ultimaker printers, because they crash. --- resources/definitions/fdmprinter.def.json | 6 +++--- resources/definitions/ultimaker.def.json | 11 +++++++++++ 2 files changed, 14 insertions(+), 3 deletions(-) diff --git a/resources/definitions/fdmprinter.def.json b/resources/definitions/fdmprinter.def.json index 33d41332a1..5118966d5a 100644 --- a/resources/definitions/fdmprinter.def.json +++ b/resources/definitions/fdmprinter.def.json @@ -1053,7 +1053,7 @@ "unit": "°C", "type": "float", "default_value": 210, - "minimum_value": "0", + "minimum_value": "-273.15", "maximum_value_warning": "260", "enabled": "not (material_flow_dependent_temperature)", "settable_per_mesh": false, @@ -1090,7 +1090,7 @@ "unit": "°C", "type": "float", "default_value": 60, - "minimum_value": "0", + "minimum_value": "-273.15", "maximum_value_warning": "260", "enabled": "machine_heated_bed", "settable_per_mesh": false, @@ -1269,7 +1269,7 @@ "type": "float", "unit": "°C", "default_value": 150, - "minimum_value": "0", + "minimum_value": "-273.15", "maximum_value_warning": "260", "settable_per_mesh": false, "settable_per_extruder": true diff --git a/resources/definitions/ultimaker.def.json b/resources/definitions/ultimaker.def.json index 5df38d07cb..dc52b00dcc 100644 --- a/resources/definitions/ultimaker.def.json +++ b/resources/definitions/ultimaker.def.json @@ -7,5 +7,16 @@ "author": "Ultimaker", "manufacturer": "Ultimaker", "visible": false + }, + "overrides": { + "material_print_temperature": { + "minimum_value": "0" + }, + "material_bed_temperature": { + "minimum_value": "0" + }, + "material_standby_temperature": { + "minimum_value": "0" + } } }