mirror of
https://github.com/Ultimaker/Cura.git
synced 2025-07-07 15:07:28 -06:00
CURA-4870 Manage the case when there is an empty material or variant in the printer and Cura needs to apply this configuration
This commit is contained in:
parent
2818ff7f31
commit
be8fc9f3f1
1 changed files with 11 additions and 2 deletions
|
@ -1032,13 +1032,22 @@ class MachineManager(QObject):
|
||||||
position = str(extruder_configuration.position)
|
position = str(extruder_configuration.position)
|
||||||
variant_container_node = self._variant_manager.getVariantNode(self._global_container_stack.definition.getId(), extruder_configuration.hotendID)
|
variant_container_node = self._variant_manager.getVariantNode(self._global_container_stack.definition.getId(), extruder_configuration.hotendID)
|
||||||
material_container_node = self._material_manager.getMaterialNodeByType(self._global_container_stack, extruder_configuration.hotendID,extruder_configuration.material.guid)
|
material_container_node = self._material_manager.getMaterialNodeByType(self._global_container_stack, extruder_configuration.hotendID,extruder_configuration.material.guid)
|
||||||
self._setVariantNode(position, variant_container_node)
|
if variant_container_node:
|
||||||
self._setMaterial(position, material_container_node)
|
self._setVariantNode(position, variant_container_node)
|
||||||
|
else:
|
||||||
|
self._global_container_stack.extruders[position].variant = self._empty_variant_container
|
||||||
|
|
||||||
|
if material_container_node:
|
||||||
|
self._setMaterial(position, material_container_node)
|
||||||
|
else:
|
||||||
|
self._global_container_stack.extruders[position].material = self._empty_material_container
|
||||||
self._updateMaterialWithVariant(position)
|
self._updateMaterialWithVariant(position)
|
||||||
|
|
||||||
if configuration.buildplateConfiguration is not None:
|
if configuration.buildplateConfiguration is not None:
|
||||||
global_variant_container_node = self._variant_manager.getBuildplateVariantNode(self._global_container_stack.definition.getId(), configuration.buildplateConfiguration)
|
global_variant_container_node = self._variant_manager.getBuildplateVariantNode(self._global_container_stack.definition.getId(), configuration.buildplateConfiguration)
|
||||||
self._setGlobalVariant(global_variant_container_node)
|
self._setGlobalVariant(global_variant_container_node)
|
||||||
|
else:
|
||||||
|
self._global_container_stack.variant = self._empty_variant_container
|
||||||
self._updateQualityWithMaterial()
|
self._updateQualityWithMaterial()
|
||||||
|
|
||||||
@pyqtSlot("QVariant")
|
@pyqtSlot("QVariant")
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue