mirror of
https://github.com/Ultimaker/Cura.git
synced 2025-07-25 07:33:57 -06:00
Fix cases where there is no "normal" quality
CURA-2494
This commit is contained in:
parent
2742a4ef65
commit
040f49e474
2 changed files with 14 additions and 3 deletions
|
@ -53,7 +53,9 @@ class QualityManager:
|
||||||
# the current set of selected materials is used.
|
# the current set of selected materials is used.
|
||||||
# \return the matching quality containers \type{List[ContainerInstance]}
|
# \return the matching quality containers \type{List[ContainerInstance]}
|
||||||
def findQualityByQualityType(self, quality_type, machine_definition=None, material_containers=None):
|
def findQualityByQualityType(self, quality_type, machine_definition=None, material_containers=None):
|
||||||
criteria = {"type": "quality", "quality_type": quality_type}
|
criteria = {"type": "quality"}
|
||||||
|
if quality_type:
|
||||||
|
criteria["quality_type"] = quality_type
|
||||||
return self._getFilteredContainersForStack(machine_definition, material_containers, **criteria)
|
return self._getFilteredContainersForStack(machine_definition, material_containers, **criteria)
|
||||||
|
|
||||||
def _getFilteredContainers(self, **kwargs):
|
def _getFilteredContainers(self, **kwargs):
|
||||||
|
|
|
@ -580,9 +580,18 @@ class MachineManager(QObject):
|
||||||
[material_container])
|
[material_container])
|
||||||
if not candidate_qualities:
|
if not candidate_qualities:
|
||||||
# Fall back to normal quality
|
# Fall back to normal quality
|
||||||
new_quality_id = quality_manager.findQualityByQualityType("normal",
|
quality_containers = quality_manager.findQualityByQualityType("normal",
|
||||||
|
quality_manager.getWholeMachineDefinition(machine_definition),
|
||||||
|
[material_container])
|
||||||
|
if quality_containers:
|
||||||
|
new_quality_id = quality_containers[0].getId()
|
||||||
|
else:
|
||||||
|
# There is no normal quality for this machine/variant/material combination
|
||||||
|
quality_containers = quality_manager.findQualityByQualityType(None,
|
||||||
quality_manager.getWholeMachineDefinition(machine_definition),
|
quality_manager.getWholeMachineDefinition(machine_definition),
|
||||||
[material_container])[0].getId()
|
[material_container])
|
||||||
|
new_quality_id = quality_containers[0].getId()
|
||||||
|
|
||||||
else:
|
else:
|
||||||
if not old_quality_changes:
|
if not old_quality_changes:
|
||||||
new_quality_id = candidate_qualities[0].getId()
|
new_quality_id = candidate_qualities[0].getId()
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue