mirror of
https://github.com/Ultimaker/Cura.git
synced 2025-07-17 11:47:50 -06:00
No longer use deprecated MaterialManager when asking for available materials
Use the ContainerTree structure instead. That's what it's for. Contributes to issue CURA-6600.
This commit is contained in:
parent
7f84145c9a
commit
5738af4bb8
2 changed files with 5 additions and 11 deletions
|
@ -168,7 +168,7 @@ class MaterialManager(QObject):
|
||||||
# MaterialNodes from the ContainerTree that are available for the given
|
# MaterialNodes from the ContainerTree that are available for the given
|
||||||
# printer and variant.
|
# printer and variant.
|
||||||
def getAvailableMaterials(self, definition_id: str, nozzle_name: Optional[str]) -> Dict[str, MaterialNode]:
|
def getAvailableMaterials(self, definition_id: str, nozzle_name: Optional[str]) -> Dict[str, MaterialNode]:
|
||||||
return ContainerTree.getInstance().machines[definition_id].variants.get(nozzle_name, "empty_variant").materials
|
return ContainerTree.getInstance().machines[definition_id].variants[nozzle_name].materials
|
||||||
|
|
||||||
#
|
#
|
||||||
# A convenience function to get available materials for the given machine with the extruder position.
|
# A convenience function to get available materials for the given machine with the extruder position.
|
||||||
|
|
|
@ -22,6 +22,7 @@ from UM.Message import Message
|
||||||
from UM.Settings.SettingFunction import SettingFunction
|
from UM.Settings.SettingFunction import SettingFunction
|
||||||
from UM.Signal import postponeSignals, CompressTechnique
|
from UM.Signal import postponeSignals, CompressTechnique
|
||||||
|
|
||||||
|
from cura.Machines.ContainerTree import ContainerTree
|
||||||
from cura.Machines.QualityManager import getMachineDefinitionIDForQualitySearch, QualityManager
|
from cura.Machines.QualityManager import getMachineDefinitionIDForQualitySearch, QualityManager
|
||||||
from cura.Machines.MaterialManager import MaterialManager
|
from cura.Machines.MaterialManager import MaterialManager
|
||||||
|
|
||||||
|
@ -1312,6 +1313,8 @@ class MachineManager(QObject):
|
||||||
current_quality_type, quality_type)
|
current_quality_type, quality_type)
|
||||||
self._setQualityGroup(candidate_quality_groups[quality_type], empty_quality_changes = True)
|
self._setQualityGroup(candidate_quality_groups[quality_type], empty_quality_changes = True)
|
||||||
|
|
||||||
|
## Update the material profile in the current stacks when the variant is
|
||||||
|
# changed.
|
||||||
def updateMaterialWithVariant(self, position: Optional[str]) -> None:
|
def updateMaterialWithVariant(self, position: Optional[str]) -> None:
|
||||||
if self._global_container_stack is None:
|
if self._global_container_stack is None:
|
||||||
return
|
return
|
||||||
|
@ -1320,10 +1323,6 @@ class MachineManager(QObject):
|
||||||
else:
|
else:
|
||||||
position_list = [position]
|
position_list = [position]
|
||||||
|
|
||||||
buildplate_name = None
|
|
||||||
if self._global_container_stack.variant.getId() != "empty_variant":
|
|
||||||
buildplate_name = self._global_container_stack.variant.getName()
|
|
||||||
|
|
||||||
for position_item in position_list:
|
for position_item in position_list:
|
||||||
extruder = self._global_container_stack.extruders[position_item]
|
extruder = self._global_container_stack.extruders[position_item]
|
||||||
|
|
||||||
|
@ -1332,12 +1331,7 @@ class MachineManager(QObject):
|
||||||
if extruder.variant.getId() != empty_variant_container.getId():
|
if extruder.variant.getId() != empty_variant_container.getId():
|
||||||
current_nozzle_name = extruder.variant.getMetaDataEntry("name")
|
current_nozzle_name = extruder.variant.getMetaDataEntry("name")
|
||||||
|
|
||||||
material_diameter = extruder.getCompatibleMaterialDiameter()
|
candidate_materials = ContainerTree.getInstance().machines[self._global_container_stack.definition.getId()].variants[current_nozzle_name].materials
|
||||||
candidate_materials = MaterialManager.getInstance().getAvailableMaterials(
|
|
||||||
self._global_container_stack.definition,
|
|
||||||
current_nozzle_name,
|
|
||||||
buildplate_name,
|
|
||||||
material_diameter)
|
|
||||||
|
|
||||||
if not candidate_materials:
|
if not candidate_materials:
|
||||||
self._setMaterial(position_item, container_node = None)
|
self._setMaterial(position_item, container_node = None)
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue