mirror of
https://git.mirrors.martin98.com/https://github.com/Ultimaker/Cura
synced 2025-04-22 21:59:37 +08:00
93 lines
3.9 KiB
Python
93 lines
3.9 KiB
Python
# Copyright (c) 2019 Ultimaker B.V.
|
|
# Cura is released under the terms of the LGPLv3 or higher.
|
|
|
|
import copy
|
|
|
|
from UM.Settings.constant_instance_containers import EMPTY_CONTAINER_ID, empty_container
|
|
from UM.i18n import i18nCatalog
|
|
catalog = i18nCatalog("cura")
|
|
|
|
|
|
# Empty definition changes
|
|
EMPTY_DEFINITION_CHANGES_CONTAINER_ID = "empty_definition_changes"
|
|
empty_definition_changes_container = copy.deepcopy(empty_container)
|
|
empty_definition_changes_container.setMetaDataEntry("id", EMPTY_DEFINITION_CHANGES_CONTAINER_ID)
|
|
empty_definition_changes_container.setMetaDataEntry("type", "definition_changes")
|
|
|
|
# Empty variant
|
|
EMPTY_VARIANT_CONTAINER_ID = "empty_variant"
|
|
empty_variant_container = copy.deepcopy(empty_container)
|
|
empty_variant_container.setMetaDataEntry("id", EMPTY_VARIANT_CONTAINER_ID)
|
|
empty_variant_container.setMetaDataEntry("type", "variant")
|
|
|
|
# Empty material
|
|
EMPTY_MATERIAL_CONTAINER_ID = "empty_material"
|
|
empty_material_container = copy.deepcopy(empty_container)
|
|
empty_material_container.setMetaDataEntry("id", EMPTY_MATERIAL_CONTAINER_ID)
|
|
empty_material_container.setMetaDataEntry("type", "material")
|
|
empty_material_container.setMetaDataEntry("base_file", "empty_material")
|
|
empty_material_container.setMetaDataEntry("GUID", "FFFFFFFF-FFFF-FFFF-FFFF-FFFFFFFFFFFF")
|
|
empty_material_container.setMetaDataEntry("material", "empty")
|
|
empty_material_container.setMetaDataEntry("brand", "empty_brand")
|
|
|
|
# Empty quality
|
|
EMPTY_QUALITY_CONTAINER_ID = "empty_quality"
|
|
empty_quality_container = copy.deepcopy(empty_container)
|
|
empty_quality_container.setMetaDataEntry("id", EMPTY_QUALITY_CONTAINER_ID)
|
|
empty_quality_container.setName(catalog.i18nc("@info:not supported profile", "Not supported"))
|
|
empty_quality_container.setMetaDataEntry("quality_type", "not_supported")
|
|
empty_quality_container.setMetaDataEntry("type", "quality")
|
|
empty_quality_container.setMetaDataEntry("supported", False)
|
|
|
|
# Empty quality changes
|
|
EMPTY_QUALITY_CHANGES_CONTAINER_ID = "empty_quality_changes"
|
|
empty_quality_changes_container = copy.deepcopy(empty_container)
|
|
empty_quality_changes_container.setMetaDataEntry("id", EMPTY_QUALITY_CHANGES_CONTAINER_ID)
|
|
empty_quality_changes_container.setMetaDataEntry("type", "quality_changes")
|
|
empty_quality_changes_container.setMetaDataEntry("quality_type", "not_supported")
|
|
empty_quality_changes_container.setMetaDataEntry("intent_category", "not_supported")
|
|
|
|
# Empty intent
|
|
EMPTY_INTENT_CONTAINER_ID = "empty_intent"
|
|
empty_intent_container = copy.deepcopy(empty_container)
|
|
empty_intent_container.setMetaDataEntry("id", EMPTY_INTENT_CONTAINER_ID)
|
|
empty_intent_container.setMetaDataEntry("type", "intent")
|
|
empty_intent_container.setMetaDataEntry("intent_category", "default")
|
|
empty_intent_container.setName(catalog.i18nc("@info:No intent profile selected", "Default"))
|
|
|
|
|
|
# All empty container IDs set
|
|
ALL_EMPTY_CONTAINER_ID_SET = {
|
|
EMPTY_CONTAINER_ID,
|
|
EMPTY_DEFINITION_CHANGES_CONTAINER_ID,
|
|
EMPTY_VARIANT_CONTAINER_ID,
|
|
EMPTY_MATERIAL_CONTAINER_ID,
|
|
EMPTY_QUALITY_CONTAINER_ID,
|
|
EMPTY_QUALITY_CHANGES_CONTAINER_ID,
|
|
EMPTY_INTENT_CONTAINER_ID
|
|
}
|
|
|
|
|
|
# Convenience function to check if a container ID represents an empty container.
|
|
def isEmptyContainer(container_id: str) -> bool:
|
|
return container_id in ALL_EMPTY_CONTAINER_ID_SET
|
|
|
|
|
|
__all__ = ["EMPTY_CONTAINER_ID",
|
|
"empty_container", # For convenience
|
|
"EMPTY_DEFINITION_CHANGES_CONTAINER_ID",
|
|
"empty_definition_changes_container",
|
|
"EMPTY_VARIANT_CONTAINER_ID",
|
|
"empty_variant_container",
|
|
"EMPTY_MATERIAL_CONTAINER_ID",
|
|
"empty_material_container",
|
|
"EMPTY_QUALITY_CHANGES_CONTAINER_ID",
|
|
"empty_quality_changes_container",
|
|
"EMPTY_QUALITY_CONTAINER_ID",
|
|
"empty_quality_container",
|
|
"ALL_EMPTY_CONTAINER_ID_SET",
|
|
"isEmptyContainer",
|
|
"EMPTY_INTENT_CONTAINER_ID",
|
|
"empty_intent_container"
|
|
]
|