mirror of
https://git.mirrors.martin98.com/https://github.com/Ultimaker/Cura
synced 2025-05-16 09:08:01 +08:00
Merge branch 'master' of github.com:Ultimaker/Cura
This commit is contained in:
commit
d9f7f43ea6
@ -187,18 +187,26 @@ class ExtruderManager(QObject):
|
|||||||
# Find a quality to use for this extruder.
|
# Find a quality to use for this extruder.
|
||||||
quality = container_registry.getEmptyInstanceContainer()
|
quality = container_registry.getEmptyInstanceContainer()
|
||||||
|
|
||||||
# First add any quality. Later, overwrite with preference if the preference is valid.
|
search_criteria = { "type": "quality" }
|
||||||
qualities = container_registry.findInstanceContainers(type = "quality")
|
if machine_definition.getMetaDataEntry("has_machine_quality"):
|
||||||
if len(qualities) >= 1:
|
search_criteria["definition"] = machine_definition.id
|
||||||
quality = qualities[0]
|
if machine_definition.getMetaDataEntry("has_materials") and material:
|
||||||
preferred_quality_id = machine_definition.getMetaDataEntry("preferred_quality")
|
search_criteria["material"] = material.id
|
||||||
if preferred_quality_id:
|
else:
|
||||||
preferred_quality = container_registry.findInstanceContainers(id = preferred_quality_id, type = "quality")
|
search_criteria["definition"] = "fdmprinter"
|
||||||
if len(preferred_quality) >= 1:
|
|
||||||
quality = preferred_quality[0]
|
preferred_quality = machine_definition.getMetaDataEntry("preferred_quality")
|
||||||
else:
|
if preferred_quality:
|
||||||
UM.Logger.log("w", "The preferred quality \"%s\" of machine %s doesn't exist or is not a quality profile.", preferred_quality_id, machine_id)
|
search_criteria["id"] = preferred_quality
|
||||||
# And leave it at the default quality.
|
|
||||||
|
containers = UM.Settings.ContainerRegistry.getInstance().findInstanceContainers(**search_criteria)
|
||||||
|
if not containers and preferred_quality:
|
||||||
|
UM.Logger.log("w", "The preferred quality \"%s\" of machine %s doesn't exist or is not a quality profile.", preferred_quality, machine_id)
|
||||||
|
search_criteria.pop("id", None)
|
||||||
|
containers = UM.Settings.ContainerRegistry.getInstance().findInstanceContainers(**search_criteria)
|
||||||
|
if containers:
|
||||||
|
quality = containers[0]
|
||||||
|
|
||||||
container_stack.addContainer(quality)
|
container_stack.addContainer(quality)
|
||||||
|
|
||||||
user_profile = container_registry.findInstanceContainers(type = "user", extruder = extruder_stack_id)
|
user_profile = container_registry.findInstanceContainers(type = "user", extruder = extruder_stack_id)
|
||||||
|
Loading…
x
Reference in New Issue
Block a user