Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/Ultimaker/Cura.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rwxr-xr-xcura/CuraApplication.py16
-rw-r--r--cura/Machines/QualityManager.py8
-rw-r--r--cura/Settings/CuraContainerRegistry.py38
-rwxr-xr-xcura/Settings/CuraContainerStack.py2
-rw-r--r--cura/Settings/CuraStackBuilder.py12
-rw-r--r--cura/Settings/ExtruderStack.py8
-rwxr-xr-xcura/Settings/GlobalStack.py2
-rwxr-xr-xcura/Settings/MachineManager.py6
-rw-r--r--cura/Settings/SettingOverrideDecorator.py2
-rwxr-xr-xplugins/3MFReader/ThreeMFWorkspaceReader.py2
-rw-r--r--plugins/CuraProfileReader/CuraProfileReader.py2
-rw-r--r--plugins/GCodeWriter/GCodeWriter.py10
-rw-r--r--plugins/LegacyProfileReader/LegacyProfileReader.py4
-rwxr-xr-xplugins/MachineSettingsAction/MachineSettingsAction.py5
-rw-r--r--plugins/PostProcessingPlugin/PostProcessingPlugin.py2
-rw-r--r--plugins/PostProcessingPlugin/Script.py2
-rw-r--r--plugins/UM3NetworkPrinting/DiscoverUM3Action.py6
-rw-r--r--plugins/UM3NetworkPrinting/LegacyUM3OutputDevice.py10
-rw-r--r--plugins/UltimakerMachineActions/UM2UpgradeSelection.py5
-rw-r--r--plugins/XmlMaterialProfile/XmlMaterialProfile.py3
-rw-r--r--tests/Settings/TestCuraContainerRegistry.py20
-rw-r--r--tests/Settings/TestExtruderStack.py16
-rwxr-xr-xtests/Settings/TestGlobalStack.py16
23 files changed, 91 insertions, 106 deletions
diff --git a/cura/CuraApplication.py b/cura/CuraApplication.py
index e5c0c5688c..f6a932546a 100755
--- a/cura/CuraApplication.py
+++ b/cura/CuraApplication.py
@@ -362,35 +362,35 @@ class CuraApplication(QtApplication):
empty_definition_changes_container = copy.deepcopy(empty_container)
empty_definition_changes_container.setMetaDataEntry("id", "empty_definition_changes")
- empty_definition_changes_container.addMetaDataEntry("type", "definition_changes")
+ empty_definition_changes_container.setMetaDataEntry("type", "definition_changes")
self._container_registry.addContainer(empty_definition_changes_container)
self.empty_definition_changes_container = empty_definition_changes_container
empty_variant_container = copy.deepcopy(empty_container)
empty_variant_container.setMetaDataEntry("id", "empty_variant")
- empty_variant_container.addMetaDataEntry("type", "variant")
+ empty_variant_container.setMetaDataEntry("type", "variant")
self._container_registry.addContainer(empty_variant_container)
self.empty_variant_container = empty_variant_container
empty_material_container = copy.deepcopy(empty_container)
empty_material_container.setMetaDataEntry("id", "empty_material")
- empty_material_container.addMetaDataEntry("type", "material")
+ empty_material_container.setMetaDataEntry("type", "material")
self._container_registry.addContainer(empty_material_container)
self.empty_material_container = empty_material_container
empty_quality_container = copy.deepcopy(empty_container)
empty_quality_container.setMetaDataEntry("id", "empty_quality")
empty_quality_container.setName("Not Supported")
- empty_quality_container.addMetaDataEntry("quality_type", "not_supported")
- empty_quality_container.addMetaDataEntry("type", "quality")
- empty_quality_container.addMetaDataEntry("supported", False)
+ empty_quality_container.setMetaDataEntry("quality_type", "not_supported")
+ empty_quality_container.setMetaDataEntry("type", "quality")
+ empty_quality_container.setMetaDataEntry("supported", False)
self._container_registry.addContainer(empty_quality_container)
self.empty_quality_container = empty_quality_container
empty_quality_changes_container = copy.deepcopy(empty_container)
empty_quality_changes_container.setMetaDataEntry("id", "empty_quality_changes")
- empty_quality_changes_container.addMetaDataEntry("type", "quality_changes")
- empty_quality_changes_container.addMetaDataEntry("quality_type", "not_supported")
+ empty_quality_changes_container.setMetaDataEntry("type", "quality_changes")
+ empty_quality_changes_container.setMetaDataEntry("quality_type", "not_supported")
self._container_registry.addContainer(empty_quality_changes_container)
self.empty_quality_changes_container = empty_quality_changes_container
diff --git a/cura/Machines/QualityManager.py b/cura/Machines/QualityManager.py
index 5e78c04900..82a11f9960 100644
--- a/cura/Machines/QualityManager.py
+++ b/cura/Machines/QualityManager.py
@@ -466,18 +466,18 @@ class QualityManager(QObject):
# Create a new quality_changes container for the quality.
quality_changes = InstanceContainer(new_id)
quality_changes.setName(new_name)
- quality_changes.addMetaDataEntry("type", "quality_changes")
- quality_changes.addMetaDataEntry("quality_type", quality_type)
+ quality_changes.setMetaDataEntry("type", "quality_changes")
+ quality_changes.setMetaDataEntry("quality_type", quality_type)
# If we are creating a container for an extruder, ensure we add that to the container
if extruder_stack is not None:
- quality_changes.addMetaDataEntry("position", extruder_stack.getMetaDataEntry("position"))
+ quality_changes.setMetaDataEntry("position", extruder_stack.getMetaDataEntry("position"))
# If the machine specifies qualities should be filtered, ensure we match the current criteria.
machine_definition_id = getMachineDefinitionIDForQualitySearch(machine.definition)
quality_changes.setDefinition(machine_definition_id)
- quality_changes.addMetaDataEntry("setting_version", self._application.SettingVersion)
+ quality_changes.setMetaDataEntry("setting_version", self._application.SettingVersion)
return quality_changes
diff --git a/cura/Settings/CuraContainerRegistry.py b/cura/Settings/CuraContainerRegistry.py
index 6cbb3036f8..e1f50a157d 100644
--- a/cura/Settings/CuraContainerRegistry.py
+++ b/cura/Settings/CuraContainerRegistry.py
@@ -260,11 +260,11 @@ class CuraContainerRegistry(ContainerRegistry):
profile_id = ContainerRegistry.getInstance().uniqueName(global_stack.getId() + "_extruder_" + str(idx + 1))
profile = InstanceContainer(profile_id)
profile.setName(quality_name)
- profile.addMetaDataEntry("setting_version", cura.CuraApplication.CuraApplication.SettingVersion)
- profile.addMetaDataEntry("type", "quality_changes")
- profile.addMetaDataEntry("definition", expected_machine_definition)
- profile.addMetaDataEntry("quality_type", quality_type)
- profile.addMetaDataEntry("position", "0")
+ profile.setMetaDataEntry("setting_version", cura.CuraApplication.CuraApplication.SettingVersion)
+ profile.setMetaDataEntry("type", "quality_changes")
+ profile.setMetaDataEntry("definition", expected_machine_definition)
+ profile.setMetaDataEntry("quality_type", quality_type)
+ profile.setMetaDataEntry("position", "0")
profile.setDirty(True)
if idx == 0:
# move all per-extruder settings to the first extruder's quality_changes
@@ -298,7 +298,7 @@ class CuraContainerRegistry(ContainerRegistry):
extruder_id = machine_extruders[profile_index - 1].definition.getId()
extruder_position = str(profile_index - 1)
if not profile.getMetaDataEntry("position"):
- profile.addMetaDataEntry("position", extruder_position)
+ profile.setMetaDataEntry("position", extruder_position)
else:
profile.setMetaDataEntry("position", extruder_position)
profile_id = (extruder_id + "_" + name_seed).lower().replace(" ", "_")
@@ -349,7 +349,7 @@ class CuraContainerRegistry(ContainerRegistry):
if "type" in profile.getMetaData():
profile.setMetaDataEntry("type", "quality_changes")
else:
- profile.addMetaDataEntry("type", "quality_changes")
+ profile.setMetaDataEntry("type", "quality_changes")
quality_type = profile.getMetaDataEntry("quality_type")
if not quality_type:
@@ -480,16 +480,16 @@ class CuraContainerRegistry(ContainerRegistry):
extruder_stack = ExtruderStack.ExtruderStack(unique_name)
extruder_stack.setName(extruder_definition.getName())
extruder_stack.setDefinition(extruder_definition)
- extruder_stack.addMetaDataEntry("position", extruder_definition.getMetaDataEntry("position"))
+ extruder_stack.setMetaDataEntry("position", extruder_definition.getMetaDataEntry("position"))
# create a new definition_changes container for the extruder stack
definition_changes_id = self.uniqueName(extruder_stack.getId() + "_settings") if create_new_ids else extruder_stack.getId() + "_settings"
definition_changes_name = definition_changes_id
definition_changes = InstanceContainer(definition_changes_id, parent = application)
definition_changes.setName(definition_changes_name)
- definition_changes.addMetaDataEntry("setting_version", application.SettingVersion)
- definition_changes.addMetaDataEntry("type", "definition_changes")
- definition_changes.addMetaDataEntry("definition", extruder_definition.getId())
+ definition_changes.setMetaDataEntry("setting_version", application.SettingVersion)
+ definition_changes.setMetaDataEntry("type", "definition_changes")
+ definition_changes.setMetaDataEntry("definition", extruder_definition.getId())
# move definition_changes settings if exist
for setting_key in definition_changes.getAllKeys():
@@ -514,9 +514,9 @@ class CuraContainerRegistry(ContainerRegistry):
user_container_name = user_container_id
user_container = InstanceContainer(user_container_id, parent = application)
user_container.setName(user_container_name)
- user_container.addMetaDataEntry("type", "user")
- user_container.addMetaDataEntry("machine", machine.getId())
- user_container.addMetaDataEntry("setting_version", application.SettingVersion)
+ user_container.setMetaDataEntry("type", "user")
+ user_container.setMetaDataEntry("machine", machine.getId())
+ user_container.setMetaDataEntry("setting_version", application.SettingVersion)
user_container.setDefinition(machine.definition.getId())
user_container.setMetaDataEntry("position", extruder_stack.getMetaDataEntry("position"))
@@ -580,7 +580,7 @@ class CuraContainerRegistry(ContainerRegistry):
extruder_quality_changes_container = self._findQualityChangesContainerInCuraFolder(machine_quality_changes.getName())
if extruder_quality_changes_container:
quality_changes_id = extruder_quality_changes_container.getId()
- extruder_quality_changes_container.addMetaDataEntry("position", extruder_definition.getMetaDataEntry("position"))
+ extruder_quality_changes_container.setMetaDataEntry("position", extruder_definition.getMetaDataEntry("position"))
extruder_stack.qualityChanges = self.findInstanceContainers(id = quality_changes_id)[0]
else:
# if we still cannot find a quality changes container for the extruder, create a new one
@@ -588,10 +588,10 @@ class CuraContainerRegistry(ContainerRegistry):
container_id = self.uniqueName(extruder_stack.getId() + "_qc_" + container_name)
extruder_quality_changes_container = InstanceContainer(container_id, parent = application)
extruder_quality_changes_container.setName(container_name)
- extruder_quality_changes_container.addMetaDataEntry("type", "quality_changes")
- extruder_quality_changes_container.addMetaDataEntry("setting_version", application.SettingVersion)
- extruder_quality_changes_container.addMetaDataEntry("position", extruder_definition.getMetaDataEntry("position"))
- extruder_quality_changes_container.addMetaDataEntry("quality_type", machine_quality_changes.getMetaDataEntry("quality_type"))
+ extruder_quality_changes_container.setMetaDataEntry("type", "quality_changes")
+ extruder_quality_changes_container.setMetaDataEntry("setting_version", application.SettingVersion)
+ extruder_quality_changes_container.setMetaDataEntry("position", extruder_definition.getMetaDataEntry("position"))
+ extruder_quality_changes_container.setMetaDataEntry("quality_type", machine_quality_changes.getMetaDataEntry("quality_type"))
extruder_quality_changes_container.setDefinition(machine_quality_changes.getDefinition().getId())
self.addContainer(extruder_quality_changes_container)
diff --git a/cura/Settings/CuraContainerStack.py b/cura/Settings/CuraContainerStack.py
index 667b468bc0..bd3380dfb2 100755
--- a/cura/Settings/CuraContainerStack.py
+++ b/cura/Settings/CuraContainerStack.py
@@ -57,7 +57,7 @@ class CuraContainerStack(ContainerStack):
self.containersChanged.connect(self._onContainersChanged)
import cura.CuraApplication #Here to prevent circular imports.
- self.addMetaDataEntry("setting_version", cura.CuraApplication.CuraApplication.SettingVersion)
+ self.setMetaDataEntry("setting_version", cura.CuraApplication.CuraApplication.SettingVersion)
# This is emitted whenever the containersChanged signal from the ContainerStack base class is emitted.
pyqtContainersChanged = pyqtSignal()
diff --git a/cura/Settings/CuraStackBuilder.py b/cura/Settings/CuraStackBuilder.py
index e593c3d349..841d45ed31 100644
--- a/cura/Settings/CuraStackBuilder.py
+++ b/cura/Settings/CuraStackBuilder.py
@@ -146,7 +146,7 @@ class CuraStackBuilder:
stack.setName(extruder_definition.getName())
stack.setDefinition(extruder_definition)
- stack.addMetaDataEntry("position", position)
+ stack.setMetaDataEntry("position", position)
user_container = cls.createUserChangesContainer(new_stack_id + "_user", machine_definition_id, new_stack_id,
is_global_stack = False)
@@ -208,11 +208,11 @@ class CuraStackBuilder:
container = InstanceContainer(unique_container_name)
container.setDefinition(definition_id)
- container.addMetaDataEntry("type", "user")
- container.addMetaDataEntry("setting_version", CuraApplication.SettingVersion)
+ container.setMetaDataEntry("type", "user")
+ container.setMetaDataEntry("setting_version", CuraApplication.SettingVersion)
metadata_key_to_add = "machine" if is_global_stack else "extruder"
- container.addMetaDataEntry(metadata_key_to_add, stack_id)
+ container.setMetaDataEntry(metadata_key_to_add, stack_id)
return container
@@ -226,8 +226,8 @@ class CuraStackBuilder:
definition_changes_container = InstanceContainer(unique_container_name)
definition_changes_container.setDefinition(container_stack.getBottom().getId())
- definition_changes_container.addMetaDataEntry("type", "definition_changes")
- definition_changes_container.addMetaDataEntry("setting_version", CuraApplication.SettingVersion)
+ definition_changes_container.setMetaDataEntry("type", "definition_changes")
+ definition_changes_container.setMetaDataEntry("setting_version", CuraApplication.SettingVersion)
registry.addContainer(definition_changes_container)
container_stack.definitionChanges = definition_changes_container
diff --git a/cura/Settings/ExtruderStack.py b/cura/Settings/ExtruderStack.py
index 4445563e00..47846fc1dd 100644
--- a/cura/Settings/ExtruderStack.py
+++ b/cura/Settings/ExtruderStack.py
@@ -29,7 +29,7 @@ class ExtruderStack(CuraContainerStack):
def __init__(self, container_id: str) -> None:
super().__init__(container_id)
- self.addMetaDataEntry("type", "extruder_train") # For backward compatibility
+ self.setMetaDataEntry("type", "extruder_train") # For backward compatibility
self.propertiesChanged.connect(self._onPropertiesChanged)
@@ -42,7 +42,7 @@ class ExtruderStack(CuraContainerStack):
def setNextStack(self, stack: CuraContainerStack, connect_signals: bool = True) -> None:
super().setNextStack(stack)
stack.addExtruder(self)
- self.addMetaDataEntry("machine", stack.id)
+ self.setMetaDataEntry("machine", stack.id)
# For backward compatibility: Register the extruder with the Extruder Manager
ExtruderManager.getInstance().registerExtruder(self, stack.id)
@@ -53,7 +53,7 @@ class ExtruderStack(CuraContainerStack):
def setEnabled(self, enabled: bool) -> None:
if "enabled" not in self._metadata:
- self.addMetaDataEntry("enabled", "True")
+ self.setMetaDataEntry("enabled", "True")
self.setMetaDataEntry("enabled", str(enabled))
self.enabledChanged.emit()
@@ -138,7 +138,7 @@ class ExtruderStack(CuraContainerStack):
def deserialize(self, contents: str, file_name: Optional[str] = None) -> None:
super().deserialize(contents, file_name)
if "enabled" not in self.getMetaData():
- self.addMetaDataEntry("enabled", "True")
+ self.setMetaDataEntry("enabled", "True")
stacks = ContainerRegistry.getInstance().findContainerStacks(id=self.getMetaDataEntry("machine", ""))
if stacks:
self.setNextStack(stacks[0])
diff --git a/cura/Settings/GlobalStack.py b/cura/Settings/GlobalStack.py
index 6552e43073..66f3290b85 100755
--- a/cura/Settings/GlobalStack.py
+++ b/cura/Settings/GlobalStack.py
@@ -27,7 +27,7 @@ class GlobalStack(CuraContainerStack):
def __init__(self, container_id: str) -> None:
super().__init__(container_id)
- self.addMetaDataEntry("type", "machine") # For backward compatibility
+ self.setMetaDataEntry("type", "machine") # For backward compatibility
self._extruders = {} # type: Dict[str, "ExtruderStack"]
diff --git a/cura/Settings/MachineManager.py b/cura/Settings/MachineManager.py
index 772c01191c..26f5a490dd 100755
--- a/cura/Settings/MachineManager.py
+++ b/cura/Settings/MachineManager.py
@@ -1299,9 +1299,9 @@ class MachineManager(QObject):
new_machine = CuraStackBuilder.createMachine(machine_definition_id + "_sync", machine_definition_id)
if not new_machine:
return
- new_machine.addMetaDataEntry("um_network_key", self.activeMachineNetworkKey)
- new_machine.addMetaDataEntry("connect_group_name", self.activeMachineNetworkGroupName)
- new_machine.addMetaDataEntry("hidden", False)
+ new_machine.setMetaDataEntry("um_network_key", self.activeMachineNetworkKey)
+ new_machine.setMetaDataEntry("connect_group_name", self.activeMachineNetworkGroupName)
+ new_machine.setMetaDataEntry("hidden", False)
else:
Logger.log("i", "Found a %s with the key %s. Let's use it!", machine_name, self.activeMachineNetworkKey)
new_machine.setMetaDataEntry("hidden", False)
diff --git a/cura/Settings/SettingOverrideDecorator.py b/cura/Settings/SettingOverrideDecorator.py
index 27ae1d69f0..429e6d16ec 100644
--- a/cura/Settings/SettingOverrideDecorator.py
+++ b/cura/Settings/SettingOverrideDecorator.py
@@ -37,7 +37,7 @@ class SettingOverrideDecorator(SceneNodeDecorator):
self._stack = PerObjectContainerStack(container_id = "per_object_stack_" + str(id(self)))
self._stack.setDirty(False) # This stack does not need to be saved.
user_container = InstanceContainer(container_id = self._generateUniqueName())
- user_container.addMetaDataEntry("type", "user")
+ user_container.setMetaDataEntry("type", "user")
self._stack.userChanges = user_container
self._extruder_stack = ExtruderManager.getInstance().getExtruderStack(0).getId()
diff --git a/plugins/3MFReader/ThreeMFWorkspaceReader.py b/plugins/3MFReader/ThreeMFWorkspaceReader.py
index 008bf24cda..f72029524e 100755
--- a/plugins/3MFReader/ThreeMFWorkspaceReader.py
+++ b/plugins/3MFReader/ThreeMFWorkspaceReader.py
@@ -963,7 +963,7 @@ class ThreeMFWorkspaceReader(WorkspaceReader):
if not extruder_info:
continue
if "enabled" not in extruder_stack.getMetaData():
- extruder_stack.addMetaDataEntry("enabled", "True")
+ extruder_stack.setMetaDataEntry("enabled", "True")
extruder_stack.setMetaDataEntry("enabled", str(extruder_info.enabled))
def _updateActiveMachine(self, global_stack):
diff --git a/plugins/CuraProfileReader/CuraProfileReader.py b/plugins/CuraProfileReader/CuraProfileReader.py
index d7370326e4..5957b2cecf 100644
--- a/plugins/CuraProfileReader/CuraProfileReader.py
+++ b/plugins/CuraProfileReader/CuraProfileReader.py
@@ -75,7 +75,7 @@ class CuraProfileReader(ProfileReader):
def _loadProfile(self, serialized, profile_id):
# Create an empty profile.
profile = InstanceContainer(profile_id)
- profile.addMetaDataEntry("type", "quality_changes")
+ profile.setMetaDataEntry("type", "quality_changes")
try:
profile.deserialize(serialized)
except ContainerFormatError as e:
diff --git a/plugins/GCodeWriter/GCodeWriter.py b/plugins/GCodeWriter/GCodeWriter.py
index d334c66dbe..aea0698d19 100644
--- a/plugins/GCodeWriter/GCodeWriter.py
+++ b/plugins/GCodeWriter/GCodeWriter.py
@@ -127,11 +127,11 @@ class GCodeWriter(MeshWriter):
flat_global_container = self._createFlattenedContainerInstance(stack.userChanges, container_with_profile)
# If the quality changes is not set, we need to set type manually
if flat_global_container.getMetaDataEntry("type", None) is None:
- flat_global_container.addMetaDataEntry("type", "quality_changes")
+ flat_global_container.setMetaDataEntry("type", "quality_changes")
# Ensure that quality_type is set. (Can happen if we have empty quality changes).
if flat_global_container.getMetaDataEntry("quality_type", None) is None:
- flat_global_container.addMetaDataEntry("quality_type", stack.quality.getMetaDataEntry("quality_type", "normal"))
+ flat_global_container.setMetaDataEntry("quality_type", stack.quality.getMetaDataEntry("quality_type", "normal"))
# Get the machine definition ID for quality profiles
machine_definition_id_for_quality = getMachineDefinitionIDForQualitySearch(stack.definition)
@@ -151,15 +151,15 @@ class GCodeWriter(MeshWriter):
flat_extruder_quality = self._createFlattenedContainerInstance(extruder.userChanges, extruder_quality)
# If the quality changes is not set, we need to set type manually
if flat_extruder_quality.getMetaDataEntry("type", None) is None:
- flat_extruder_quality.addMetaDataEntry("type", "quality_changes")
+ flat_extruder_quality.setMetaDataEntry("type", "quality_changes")
# Ensure that extruder is set. (Can happen if we have empty quality changes).
if flat_extruder_quality.getMetaDataEntry("position", None) is None:
- flat_extruder_quality.addMetaDataEntry("position", extruder.getMetaDataEntry("position"))
+ flat_extruder_quality.setMetaDataEntry("position", extruder.getMetaDataEntry("position"))
# Ensure that quality_type is set. (Can happen if we have empty quality changes).
if flat_extruder_quality.getMetaDataEntry("quality_type", None) is None:
- flat_extruder_quality.addMetaDataEntry("quality_type", extruder.quality.getMetaDataEntry("quality_type", "normal"))
+ flat_extruder_quality.setMetaDataEntry("quality_type", extruder.quality.getMetaDataEntry("quality_type", "normal"))
# Change the default definition
flat_extruder_quality.setMetaDataEntry("definition", machine_definition_id_for_quality)
diff --git a/plugins/LegacyProfileReader/LegacyProfileReader.py b/plugins/LegacyProfileReader/LegacyProfileReader.py
index 40a843e6c4..93c15ca8e0 100644
--- a/plugins/LegacyProfileReader/LegacyProfileReader.py
+++ b/plugins/LegacyProfileReader/LegacyProfileReader.py
@@ -145,9 +145,9 @@ class LegacyProfileReader(ProfileReader):
if len(profile.getAllKeys()) == 0:
Logger.log("i", "A legacy profile was imported but everything evaluates to the defaults, creating an empty profile.")
- profile.addMetaDataEntry("type", "profile")
+ profile.setMetaDataEntry("type", "profile")
# don't know what quality_type it is based on, so use "normal" by default
- profile.addMetaDataEntry("quality_type", "normal")
+ profile.setMetaDataEntry("quality_type", "normal")
profile.setName(profile_id)
profile.setDirty(True)
diff --git a/plugins/MachineSettingsAction/MachineSettingsAction.py b/plugins/MachineSettingsAction/MachineSettingsAction.py
index acfec7938d..afd7aac86d 100755
--- a/plugins/MachineSettingsAction/MachineSettingsAction.py
+++ b/plugins/MachineSettingsAction/MachineSettingsAction.py
@@ -135,10 +135,7 @@ class MachineSettingsAction(MachineAction):
material_node = None
if has_materials:
- if "has_materials" in self._global_container_stack.getMetaData():
- self._global_container_stack.setMetaDataEntry("has_materials", True)
- else:
- self._global_container_stack.addMetaDataEntry("has_materials", True)
+ self._global_container_stack.setMetaDataEntry("has_materials", True)
else:
# The metadata entry is stored in an ini, and ini files are parsed as strings only.
# Because any non-empty string evaluates to a boolean True, we have to remove the entry to make it False.
diff --git a/plugins/PostProcessingPlugin/PostProcessingPlugin.py b/plugins/PostProcessingPlugin/PostProcessingPlugin.py
index 1bbe4bb66c..da971a8e61 100644
--- a/plugins/PostProcessingPlugin/PostProcessingPlugin.py
+++ b/plugins/PostProcessingPlugin/PostProcessingPlugin.py
@@ -248,7 +248,7 @@ class PostProcessingPlugin(QObject, Extension):
global_stack = Application.getInstance().getGlobalContainerStack()
if "post_processing_scripts" not in global_stack.getMetaData():
- global_stack.addMetaDataEntry("post_processing_scripts", "")
+ global_stack.setMetaDataEntry("post_processing_scripts", "")
Application.getInstance().getGlobalContainerStack().setMetaDataEntry("post_processing_scripts", script_list_strs)
## Creates the view used by show popup. The view is saved because of the fairly aggressive garbage collection.
diff --git a/plugins/PostProcessingPlugin/Script.py b/plugins/PostProcessingPlugin/Script.py
index cc839ca485..7e430a5c78 100644
--- a/plugins/PostProcessingPlugin/Script.py
+++ b/plugins/PostProcessingPlugin/Script.py
@@ -48,7 +48,7 @@ class Script:
self._stack.addContainer(self._definition)
self._instance = InstanceContainer(container_id="ScriptInstanceContainer")
self._instance.setDefinition(self._definition.getId())
- self._instance.addMetaDataEntry("setting_version", self._definition.getMetaDataEntry("setting_version", default = 0))
+ self._instance.setMetaDataEntry("setting_version", self._definition.getMetaDataEntry("setting_version", default = 0))
self._stack.addContainer(self._instance)
self._stack.propertyChanged.connect(self._onPropertyChanged)
diff --git a/plugins/UM3NetworkPrinting/DiscoverUM3Action.py b/plugins/UM3NetworkPrinting/DiscoverUM3Action.py
index b48a57e0a2..135bc06d3a 100644
--- a/plugins/UM3NetworkPrinting/DiscoverUM3Action.py
+++ b/plugins/UM3NetworkPrinting/DiscoverUM3Action.py
@@ -108,8 +108,8 @@ class DiscoverUM3Action(MachineAction):
# Find all the places where there is the same group name and change it accordingly
CuraApplication.getInstance().getMachineManager().replaceContainersMetadata(key = "connect_group_name", value = previous_connect_group_name, new_value = group_name)
else:
- global_container_stack.addMetaDataEntry("connect_group_name", group_name)
- global_container_stack.addMetaDataEntry("hidden", False)
+ global_container_stack.setMetaDataEntry("connect_group_name", group_name)
+ global_container_stack.setMetaDataEntry("hidden", False)
if self._network_plugin:
# Ensure that the connection states are refreshed.
@@ -130,7 +130,7 @@ class DiscoverUM3Action(MachineAction):
global_container_stack.removeMetaDataEntry("network_authentication_key")
CuraApplication.getInstance().getMachineManager().replaceContainersMetadata(key = "um_network_key", value = previous_network_key, new_value = key)
else:
- global_container_stack.addMetaDataEntry("um_network_key", key)
+ global_container_stack.setMetaDataEntry("um_network_key", key)
if self._network_plugin:
# Ensure that the connection states are refreshed.
diff --git a/plugins/UM3NetworkPrinting/LegacyUM3OutputDevice.py b/plugins/UM3NetworkPrinting/LegacyUM3OutputDevice.py
index 9b90f8542d..4c5d56e0da 100644
--- a/plugins/UM3NetworkPrinting/LegacyUM3OutputDevice.py
+++ b/plugins/UM3NetworkPrinting/LegacyUM3OutputDevice.py
@@ -458,15 +458,9 @@ class LegacyUM3OutputDevice(NetworkedPrinterOutputDevice):
def _saveAuthentication(self):
global_container_stack = CuraApplication.getInstance().getGlobalContainerStack()
if global_container_stack:
- if "network_authentication_key" in global_container_stack.getMetaData():
- global_container_stack.setMetaDataEntry("network_authentication_key", self._authentication_key)
- else:
- global_container_stack.addMetaDataEntry("network_authentication_key", self._authentication_key)
+ global_container_stack.setMetaDataEntry("network_authentication_key", self._authentication_key)
- if "network_authentication_id" in global_container_stack.getMetaData():
- global_container_stack.setMetaDataEntry("network_authentication_id", self._authentication_id)
- else:
- global_container_stack.addMetaDataEntry("network_authentication_id", self._authentication_id)
+ global_container_stack.setMetaDataEntry("network_authentication_id", self._authentication_id)
# Force save so we are sure the data is not lost.
CuraApplication.getInstance().saveStack(global_container_stack)
diff --git a/plugins/UltimakerMachineActions/UM2UpgradeSelection.py b/plugins/UltimakerMachineActions/UM2UpgradeSelection.py
index e21256f6bd..6ff3f0b629 100644
--- a/plugins/UltimakerMachineActions/UM2UpgradeSelection.py
+++ b/plugins/UltimakerMachineActions/UM2UpgradeSelection.py
@@ -47,10 +47,7 @@ class UM2UpgradeSelection(MachineAction):
variant_container = global_container_stack.extruders["0"].variant
if has_variants:
- if "has_variants" in global_container_stack.getMetaData():
- global_container_stack.setMetaDataEntry("has_variants", True)
- else:
- global_container_stack.addMetaDataEntry("has_variants", True)
+ global_container_stack.setMetaDataEntry("has_variants", True)
# Set the variant container to a sane default
empty_container = ContainerRegistry.getInstance().getEmptyInstanceContainer()
diff --git a/plugins/XmlMaterialProfile/XmlMaterialProfile.py b/plugins/XmlMaterialProfile/XmlMaterialProfile.py
index ca6271391e..eac6646197 100644
--- a/plugins/XmlMaterialProfile/XmlMaterialProfile.py
+++ b/plugins/XmlMaterialProfile/XmlMaterialProfile.py
@@ -63,7 +63,6 @@ class XmlMaterialProfile(InstanceContainer):
# Prevent recursion
if not apply_to_all:
- super().addMetaDataEntry(key, value)
super().setMetaDataEntry(key, value)
return
@@ -75,14 +74,12 @@ class XmlMaterialProfile(InstanceContainer):
# Update the root material container
root_material_container = material_group.root_material_node.getContainer()
if root_material_container is not None:
- root_material_container.addMetaDataEntry(key, value)
root_material_container.setMetaDataEntry(key, value, apply_to_all = False)
# Update all containers derived from it
for node in material_group.derived_material_node_list:
container = node.getContainer()
if container is not None:
- container.addMetaDataEntry(key, value)
container.setMetaDataEntry(key, value, apply_to_all = False)
## Overridden from InstanceContainer, similar to setMetaDataEntry.
diff --git a/tests/Settings/TestCuraContainerRegistry.py b/tests/Settings/TestCuraContainerRegistry.py
index b97f6b4faf..38b2e0f6ea 100644
--- a/tests/Settings/TestCuraContainerRegistry.py
+++ b/tests/Settings/TestCuraContainerRegistry.py
@@ -23,25 +23,25 @@ def creteEmptyContainers():
empty_container = ContainerRegistry.getInstance().getEmptyInstanceContainer()
empty_variant_container = copy.deepcopy(empty_container)
empty_variant_container.setMetaDataEntry("id", "empty_variant")
- empty_variant_container.addMetaDataEntry("type", "variant")
+ empty_variant_container.setMetaDataEntry("type", "variant")
ContainerRegistry.getInstance().addContainer(empty_variant_container)
empty_material_container = copy.deepcopy(empty_container)
empty_material_container.setMetaDataEntry("id", "empty_material")
- empty_material_container.addMetaDataEntry("type", "material")
+ empty_material_container.setMetaDataEntry("type", "material")
ContainerRegistry.getInstance().addContainer(empty_material_container)
empty_quality_container = copy.deepcopy(empty_container)
empty_quality_container.setMetaDataEntry("id", "empty_quality")
empty_quality_container.setName("Not Supported")
- empty_quality_container.addMetaDataEntry("quality_type", "not_supported")
- empty_quality_container.addMetaDataEntry("type", "quality")
- empty_quality_container.addMetaDataEntry("supported", False)
+ empty_quality_container.setMetaDataEntry("quality_type", "not_supported")
+ empty_quality_container.setMetaDataEntry("type", "quality")
+ empty_quality_container.setMetaDataEntry("supported", False)
ContainerRegistry.getInstance().addContainer(empty_quality_container)
empty_quality_changes_container = copy.deepcopy(empty_container)
empty_quality_changes_container.setMetaDataEntry("id", "empty_quality_changes")
- empty_quality_changes_container.addMetaDataEntry("type", "quality_changes")
+ empty_quality_changes_container.setMetaDataEntry("type", "quality_changes")
ContainerRegistry.getInstance().addContainer(empty_quality_changes_container)
## Gives a fresh CuraContainerRegistry instance.
@@ -69,7 +69,7 @@ def test_addContainerExtruderStack(container_registry, definition_container):
container_registry.addContainer(definition_container)
container_stack = UM.Settings.ContainerStack.ContainerStack(stack_id = "Test Container Stack") #A container we're going to convert.
- container_stack.addMetaDataEntry("type", "extruder_train") #This is now an extruder train.
+ container_stack.setMetaDataEntry("type", "extruder_train") #This is now an extruder train.
container_stack.insertContainer(0, definition_container) #Add a definition to it so it doesn't complain.
mock_super_add_container = unittest.mock.MagicMock() #Takes the role of the Uranium-ContainerRegistry where the resulting containers get registered.
@@ -85,7 +85,7 @@ def test_addContainerGlobalStack(container_registry, definition_container):
container_registry.addContainer(definition_container)
container_stack = UM.Settings.ContainerStack.ContainerStack(stack_id = "Test Container Stack") #A container we're going to convert.
- container_stack.addMetaDataEntry("type", "machine") #This is now a global stack.
+ container_stack.setMetaDataEntry("type", "machine") #This is now a global stack.
container_stack.insertContainer(0, definition_container) #Must have a definition.
mock_super_add_container = unittest.mock.MagicMock() #Takes the role of the Uranium-ContainerRegistry where the resulting containers get registered.
@@ -102,7 +102,7 @@ def test_addContainerGoodSettingVersion(container_registry, definition_container
container_registry.addContainer(definition_container)
instance = UM.Settings.InstanceContainer.InstanceContainer(container_id = "Test Instance")
- instance.addMetaDataEntry("setting_version", CuraApplication.SettingVersion)
+ instance.setMetaDataEntry("setting_version", CuraApplication.SettingVersion)
instance.setDefinition(definition_container.getId())
mock_super_add_container = unittest.mock.MagicMock() #Take the role of the Uranium-ContainerRegistry where the resulting containers get registered.
@@ -132,7 +132,7 @@ def test_addContainerBadSettingVersion(container_registry, definition_container)
container_registry.addContainer(definition_container)
instance = UM.Settings.InstanceContainer.InstanceContainer(container_id = "Test Instance")
- instance.addMetaDataEntry("setting_version", 9001) #Wrong version!
+ instance.setMetaDataEntry("setting_version", 9001) #Wrong version!
instance.setDefinition(definition_container.getId())
mock_super_add_container = unittest.mock.MagicMock() #Take the role of the Uranium-ContainerRegistry where the resulting container should not get registered.
diff --git a/tests/Settings/TestExtruderStack.py b/tests/Settings/TestExtruderStack.py
index b418ae4306..7c463fb9be 100644
--- a/tests/Settings/TestExtruderStack.py
+++ b/tests/Settings/TestExtruderStack.py
@@ -45,32 +45,32 @@ def extruder_stack() -> cura.Settings.ExtruderStack.ExtruderStack:
# \return An instance container instance.
def getInstanceContainer(container_type) -> InstanceContainer:
container = InstanceContainer(container_id = "InstanceContainer")
- container.addMetaDataEntry("type", container_type)
+ container.setMetaDataEntry("type", container_type)
return container
def creteEmptyContainers():
empty_container = ContainerRegistry.getInstance().getEmptyInstanceContainer()
empty_variant_container = copy.deepcopy(empty_container)
empty_variant_container.setMetaDataEntry("id", "empty_variant")
- empty_variant_container.addMetaDataEntry("type", "variant")
+ empty_variant_container.setMetaDataEntry("type", "variant")
ContainerRegistry.getInstance().addContainer(empty_variant_container)
empty_material_container = copy.deepcopy(empty_container)
empty_material_container.setMetaDataEntry("id", "empty_material")
- empty_material_container.addMetaDataEntry("type", "material")
+ empty_material_container.setMetaDataEntry("type", "material")
ContainerRegistry.getInstance().addContainer(empty_material_container)
empty_quality_container = copy.deepcopy(empty_container)
empty_quality_container.setMetaDataEntry("id", "empty_quality")
empty_quality_container.setName("Not Supported")
- empty_quality_container.addMetaDataEntry("quality_type", "not_supported")
- empty_quality_container.addMetaDataEntry("type", "quality")
- empty_quality_container.addMetaDataEntry("supported", False)
+ empty_quality_container.setMetaDataEntry("quality_type", "not_supported")
+ empty_quality_container.setMetaDataEntry("type", "quality")
+ empty_quality_container.setMetaDataEntry("supported", False)
ContainerRegistry.getInstance().addContainer(empty_quality_container)
empty_quality_changes_container = copy.deepcopy(empty_container)
empty_quality_changes_container.setMetaDataEntry("id", "empty_quality_changes")
- empty_quality_changes_container.addMetaDataEntry("type", "quality_changes")
+ empty_quality_changes_container.setMetaDataEntry("type", "quality_changes")
ContainerRegistry.getInstance().addContainer(empty_quality_changes_container)
class DefinitionContainerSubClass(DefinitionContainer):
@@ -80,7 +80,7 @@ class DefinitionContainerSubClass(DefinitionContainer):
class InstanceContainerSubClass(InstanceContainer):
def __init__(self, container_type):
super().__init__(container_id = "SubInstanceContainer")
- self.addMetaDataEntry("type", container_type)
+ self.setMetaDataEntry("type", container_type)
#############################START OF TEST CASES################################
diff --git a/tests/Settings/TestGlobalStack.py b/tests/Settings/TestGlobalStack.py
index 05c7cf1677..3e74e3e575 100755
--- a/tests/Settings/TestGlobalStack.py
+++ b/tests/Settings/TestGlobalStack.py
@@ -45,32 +45,32 @@ def global_stack() -> cura.Settings.GlobalStack.GlobalStack:
# \return An instance container instance.
def getInstanceContainer(container_type) -> InstanceContainer:
container = InstanceContainer(container_id = "InstanceContainer")
- container.addMetaDataEntry("type", container_type)
+ container.setMetaDataEntry("type", container_type)
return container
def creteEmptyContainers():
empty_container = ContainerRegistry.getInstance().getEmptyInstanceContainer()
empty_variant_container = copy.deepcopy(empty_container)
empty_variant_container.setMetaDataEntry("id", "empty_variant")
- empty_variant_container.addMetaDataEntry("type", "variant")
+ empty_variant_container.setMetaDataEntry("type", "variant")
ContainerRegistry.getInstance().addContainer(empty_variant_container)
empty_material_container = copy.deepcopy(empty_container)
empty_material_container.setMetaDataEntry("id", "empty_material")
- empty_material_container.addMetaDataEntry("type", "material")
+ empty_material_container.setMetaDataEntry("type", "material")
ContainerRegistry.getInstance().addContainer(empty_material_container)
empty_quality_container = copy.deepcopy(empty_container)
empty_quality_container.setMetaDataEntry("id", "empty_quality")
empty_quality_container.setName("Not Supported")
- empty_quality_container.addMetaDataEntry("quality_type", "not_supported")
- empty_quality_container.addMetaDataEntry("type", "quality")
- empty_quality_container.addMetaDataEntry("supported", False)
+ empty_quality_container.setMetaDataEntry("quality_type", "not_supported")
+ empty_quality_container.setMetaDataEntry("type", "quality")
+ empty_quality_container.setMetaDataEntry("supported", False)
ContainerRegistry.getInstance().addContainer(empty_quality_container)
empty_quality_changes_container = copy.deepcopy(empty_container)
empty_quality_changes_container.setMetaDataEntry("id", "empty_quality_changes")
- empty_quality_changes_container.addMetaDataEntry("type", "quality_changes")
+ empty_quality_changes_container.setMetaDataEntry("type", "quality_changes")
ContainerRegistry.getInstance().addContainer(empty_quality_changes_container)
class DefinitionContainerSubClass(DefinitionContainer):
@@ -80,7 +80,7 @@ class DefinitionContainerSubClass(DefinitionContainer):
class InstanceContainerSubClass(InstanceContainer):
def __init__(self, container_type):
super().__init__(container_id = "SubInstanceContainer")
- self.addMetaDataEntry("type", container_type)
+ self.setMetaDataEntry("type", container_type)
#############################START OF TEST CASES################################