diff options
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################################ |