Browse Source

Fix getting extruder list everywhere

Didn't test this beyond my own automated test, it seems.

Contributes to issue CURA-6600.
Ghostkeeper 5 years ago
parent
commit
5debdd4cf6

+ 6 - 6
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.

+ 6 - 6
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)
 

+ 3 - 3
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]

+ 1 - 1
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