diff --git a/cura/Machines/ContainerTree.py b/cura/Machines/ContainerTree.py index 12a77083c4..c75f305885 100644 --- a/cura/Machines/ContainerTree.py +++ b/cura/Machines/ContainerTree.py @@ -69,9 +69,9 @@ class ContainerTree: global_stack = cura.CuraApplication.CuraApplication.getInstance().getGlobalContainerStack() if global_stack is None: return [] - variant_names = [extruder.variant.getName() for extruder in global_stack.extruders.values()] - material_bases = [extruder.material.getMetaDataEntry("base_file") for extruder in global_stack.extruders.values()] - extruder_enabled = [extruder.isEnabled for extruder in global_stack.extruders.values()] + variant_names = [extruder.variant.getName() for extruder in global_stack.extrudersList] + material_bases = [extruder.material.getMetaDataEntry("base_file") for extruder in global_stack.extrudersList] + extruder_enabled = [extruder.isEnabled for extruder in global_stack.extrudersList] return self.machines[global_stack.definition.getId()].getQualityChangesGroups(variant_names, material_bases, extruder_enabled) ## Builds the initial container tree. diff --git a/cura/Machines/QualityManager.py b/cura/Machines/QualityManager.py index cc359b00dd..699e6731a0 100644 --- a/cura/Machines/QualityManager.py +++ b/cura/Machines/QualityManager.py @@ -77,9 +77,9 @@ class QualityManager(QObject): # Returns a dict of "custom profile name" -> QualityChangesGroup def getQualityChangesGroups(self, machine: "GlobalStack") -> List[QualityChangesGroup]: - variant_names = [extruder.variant.getName() for extruder in machine.extruders.values()] - material_bases = [extruder.material.getMetaDataEntry("base_file") for extruder in machine.extruders.values()] - extruder_enabled = [extruder.isEnabled for extruder in machine.extruders.values()] + variant_names = [extruder.variant.getName() for extruder in machine.extrudersList] + material_bases = [extruder.material.getMetaDataEntry("base_file") for extruder in machine.extrudersList] + extruder_enabled = [extruder.isEnabled for extruder in machine.extrudersList] machine_node = ContainerTree.getInstance().machines[machine.definition.getId()] return machine_node.getQualityChangesGroups(variant_names, material_bases, extruder_enabled) @@ -92,9 +92,9 @@ class QualityManager(QObject): # for those types as values. def getQualityGroups(self, global_stack: "GlobalStack") -> Dict[str, QualityGroup]: # Gather up the variant names and material base files for each extruder. - variant_names = [extruder.variant.getName() for extruder in global_stack.extruders.values()] - material_bases = [extruder.material.getMetaDataEntry("base_file") for extruder in global_stack.extruders.values()] - extruder_enabled = [extruder.isEnabled for extruder in global_stack.extruders.values()] + variant_names = [extruder.variant.getName() for extruder in global_stack.extrudersList] + material_bases = [extruder.material.getMetaDataEntry("base_file") for extruder in global_stack.extrudersList] + extruder_enabled = [extruder.isEnabled for extruder in global_stack.extrudersList] definition_id = global_stack.definition.getId() return ContainerTree.getInstance().machines[definition_id].getQualityGroups(variant_names, material_bases, extruder_enabled) diff --git a/plugins/Toolbox/src/Toolbox.py b/plugins/Toolbox/src/Toolbox.py index 5f73d563c7..40aacac056 100644 --- a/plugins/Toolbox/src/Toolbox.py +++ b/plugins/Toolbox/src/Toolbox.py @@ -368,9 +368,9 @@ class Toolbox(QObject, Extension): default_material_node = material_manager.getDefaultMaterial(global_stack, extruder_nr, global_stack.extruders[extruder_nr].variant.getName()) machine_manager.setMaterial(extruder_nr, default_material_node, global_stack = global_stack) for global_stack, extruder_nr, container_id in self._package_used_qualities: - variant_names = [extruder.variant.getName() for extruder in global_stack.extruders.values()] - material_bases = [extruder.material.getMetaDataEntry("base_file") for extruder in global_stack.extruders.values()] - extruder_enabled = [extruder.isEnabled for extruder in global_stack.extruders.values()] + variant_names = [extruder.variant.getName() for extruder in global_stack.extrudersList] + material_bases = [extruder.material.getMetaDataEntry("base_file") for extruder in global_stack.extrudersList] + extruder_enabled = [extruder.isEnabled for extruder in global_stack.extrudersList] definition_id = global_stack.definition.getId() machine_node = container_tree.machines[definition_id] default_quality_group = machine_node.getQualityGroups(variant_names, material_bases, extruder_enabled)[machine_node.preferred_quality_type]