From 5debdd4cf677b7a67f848374dbfe844241c6a824 Mon Sep 17 00:00:00 2001 From: Ghostkeeper Date: Mon, 9 Sep 2019 16:47:29 +0200 Subject: [PATCH] Fix getting extruder list everywhere Didn't test this beyond my own automated test, it seems. Contributes to issue CURA-6600. --- cura/Machines/ContainerTree.py | 12 ++++++------ cura/Machines/QualityManager.py | 12 ++++++------ plugins/Toolbox/src/Toolbox.py | 6 +++--- tests/Machines/TestContainerTree.py | 2 +- 4 files changed, 16 insertions(+), 16 deletions(-) diff --git a/cura/Machines/ContainerTree.py b/cura/Machines/ContainerTree.py index c75f305885..2af022601a 100644 --- a/cura/Machines/ContainerTree.py +++ b/cura/Machines/ContainerTree.py @@ -53,9 +53,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.extrudersList] - material_bases = [extruder.material.getMetaDataEntry("base_file") for extruder in global_stack.extrudersList] - extruder_enabled = [extruder.isEnabled for extruder in global_stack.extrudersList] + variant_names = [extruder.variant.getName() for extruder in global_stack.extruderList] + material_bases = [extruder.material.getMetaDataEntry("base_file") for extruder in global_stack.extruderList] + extruder_enabled = [extruder.isEnabled for extruder in global_stack.extruderList] return self.machines[global_stack.definition.getId()].getQualityGroups(variant_names, material_bases, extruder_enabled) ## Get the quality changes groups available for the currently activated @@ -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.extrudersList] - material_bases = [extruder.material.getMetaDataEntry("base_file") for extruder in global_stack.extrudersList] - extruder_enabled = [extruder.isEnabled for extruder in global_stack.extrudersList] + variant_names = [extruder.variant.getName() for extruder in global_stack.extruderList] + material_bases = [extruder.material.getMetaDataEntry("base_file") for extruder in global_stack.extruderList] + extruder_enabled = [extruder.isEnabled for extruder in global_stack.extruderList] 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 699e6731a0..4a5a4c0885 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.extrudersList] - material_bases = [extruder.material.getMetaDataEntry("base_file") for extruder in machine.extrudersList] - extruder_enabled = [extruder.isEnabled for extruder in machine.extrudersList] + variant_names = [extruder.variant.getName() for extruder in machine.extruderList] + material_bases = [extruder.material.getMetaDataEntry("base_file") for extruder in machine.extruderList] + extruder_enabled = [extruder.isEnabled for extruder in machine.extruderList] 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.extrudersList] - material_bases = [extruder.material.getMetaDataEntry("base_file") for extruder in global_stack.extrudersList] - extruder_enabled = [extruder.isEnabled for extruder in global_stack.extrudersList] + variant_names = [extruder.variant.getName() for extruder in global_stack.extruderList] + material_bases = [extruder.material.getMetaDataEntry("base_file") for extruder in global_stack.extruderList] + extruder_enabled = [extruder.isEnabled for extruder in global_stack.extruderList] 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 40aacac056..641340db17 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.extrudersList] - material_bases = [extruder.material.getMetaDataEntry("base_file") for extruder in global_stack.extrudersList] - extruder_enabled = [extruder.isEnabled for extruder in global_stack.extrudersList] + variant_names = [extruder.variant.getName() for extruder in global_stack.extruderList] + material_bases = [extruder.material.getMetaDataEntry("base_file") for extruder in global_stack.extruderList] + extruder_enabled = [extruder.isEnabled for extruder in global_stack.extruderList] 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] diff --git a/tests/Machines/TestContainerTree.py b/tests/Machines/TestContainerTree.py index 833f2b651e..1c7b0de1da 100644 --- a/tests/Machines/TestContainerTree.py +++ b/tests/Machines/TestContainerTree.py @@ -20,7 +20,7 @@ def createMockedStack(definition_id: str): extruder_right_mock.material.getMetaDataEntry = MagicMock(return_value = definition_id + "_right_material_base_file") extruder_right_mock.isEnabled = True extruder_list = [extruder_left_mock, extruder_right_mock] - result.extrudersList = extruder_list + result.extruderList = extruder_list return result