Change some leftover pseudo-code to real code.

Part of CURA-6091.
This commit is contained in:
Remco Burema 2019-06-20 17:48:52 +02:00
parent 53c387f34d
commit fd80a6c1b6

View file

@ -1,13 +1,14 @@
#Copyright (c) 2019 Ultimaker B.V. #Copyright (c) 2019 Ultimaker B.V.
#Cura is released under the terms of the LGPLv3 or higher. #Cura is released under the terms of the LGPLv3 or higher.
from PyQt5.QtCore import pyqtProperty, pyqtSignal from PyQt5.QtCore import QObject, pyqtProperty, pyqtSignal
from typing import Any, Dict, List, Tuple, TYPE_CHECKING from typing import Any, Dict, List, Tuple, TYPE_CHECKING
from cura.CuraApplication import CuraApplication from cura.CuraApplication import CuraApplication
from cura.Machines.QualityManager import QualityManager from cura.Machines.QualityManager import QualityManager
from cura.Settings.ExtruderManager import ExtruderManager from cura.Settings.ExtruderManager import ExtruderManager
from cura.Settings.MachineManager import MachineManager from cura.Settings.MachineManager import MachineManager
from UM.Settings.ContainerRegistry import ContainerRegistry from UM.Settings.ContainerRegistry import ContainerRegistry
from UM.Settings.InstanceContainer import InstanceContainer
if TYPE_CHECKING: if TYPE_CHECKING:
from UM.Settings.InstanceContainer import InstanceContainer from UM.Settings.InstanceContainer import InstanceContainer
@ -17,11 +18,12 @@ if TYPE_CHECKING:
# #
# CURRENTLY THIS CLASS CONTAINS ONLY SOME PSEUDOCODE OF WHAT WE ARE SUPPOSED # CURRENTLY THIS CLASS CONTAINS ONLY SOME PSEUDOCODE OF WHAT WE ARE SUPPOSED
# TO IMPLEMENT. # TO IMPLEMENT.
class IntentManager: class IntentManager(QObject):
__instance = None __instance = None
def __init__(self) -> None: def __init__(self) -> None:
MachineManager.activeStackChanged.connect(self.configurationChanged) super().__init__()
CuraApplication.getInstance().getMachineManager().activeStackChanged.connect(self.configurationChanged)
self.configurationChanged.connect(self.selectDefaultIntent) self.configurationChanged.connect(self.selectDefaultIntent)
pass pass
@ -32,7 +34,7 @@ class IntentManager:
cls.__instance = IntentManager() cls.__instance = IntentManager()
return cls.__instance return cls.__instance
configurationChanged = pyqtSignal configurationChanged = pyqtSignal()
## Gets the metadata dictionaries of all intent profiles for a given ## Gets the metadata dictionaries of all intent profiles for a given
# configuration. # configuration.
@ -41,7 +43,7 @@ class IntentManager:
# \return A list of metadata dictionaries matching the search criteria, or # \return A list of metadata dictionaries matching the search criteria, or
# an empty list if nothing was found. # an empty list if nothing was found.
def intentMetadatas(self, definition_id: str, nozzle_name: str, material_id: str) -> List[Dict[str, Any]]: def intentMetadatas(self, definition_id: str, nozzle_name: str, material_id: str) -> List[Dict[str, Any]]:
registry = ContainerRegistry.getInstance() registry = CuraApplication.getInstance().getContainerRegistry()
return registry.findContainersMetadata(definition = definition_id, variant = nozzle_name, material_id = material_id) return registry.findContainersMetadata(definition = definition_id, variant = nozzle_name, material_id = material_id)
## ##
@ -74,7 +76,7 @@ class IntentManager:
result = set() result = set()
for intent_id in final_intent_ids: for intent_id in final_intent_ids:
intent_metadata = ContainerRegistry.getInstance().findContainersMetadata(id = intent_id)[0] intent_metadata = application.getContainerRegistry().findContainersMetadata(id = intent_id)[0]
result.add((intent_metadata["intent_category"], intent_metadata["quality_type"])) result.add((intent_metadata["intent_category"], intent_metadata["quality_type"]))
return list(result) return list(result)
@ -109,7 +111,7 @@ class IntentManager:
for extruder_stack in ExtruderManager.getInstance().getUsedExtruderStacks(): for extruder_stack in ExtruderManager.getInstance().getUsedExtruderStacks():
nozzle_name = extruder_stack.variant.getMetaDataEntry("name") nozzle_name = extruder_stack.variant.getMetaDataEntry("name")
material_id = extruder_stack.material.getMetaDataEntry("base_file") material_id = extruder_stack.material.getMetaDataEntry("base_file")
intent = ContainerRegistry.getInstance().findContainers(definition = current_definition_id, variant = nozzle_name, material = material_id, quality_type = quality_type, intent_category = intent_category) intent = application.getContainerRegistry().findContainers(definition = current_definition_id, variant = nozzle_name, material = material_id, quality_type = quality_type, intent_category = intent_category)
if intent: if intent:
extruder_stack.intent = intent[0] extruder_stack.intent = intent[0]
else: else: