From 8c6a7d30987d3effacbb3c8d3adc11352fadaa6c Mon Sep 17 00:00:00 2001 From: Kostas Karmas Date: Tue, 9 Jun 2020 15:56:13 +0200 Subject: [PATCH] Remove definitionChanges before removing a printer When removing a printer, the files in %appdata%/cura// /definition_changes/ remained intact. This commit fixes that by making sure that the definitionChanges are removed before removing the machine. --- cura/Settings/ExtruderManager.py | 1 + cura/Settings/MachineManager.py | 2 ++ 2 files changed, 3 insertions(+) diff --git a/cura/Settings/ExtruderManager.py b/cura/Settings/ExtruderManager.py index 2dc01425fc..2cc9ec4631 100755 --- a/cura/Settings/ExtruderManager.py +++ b/cura/Settings/ExtruderManager.py @@ -302,6 +302,7 @@ class ExtruderManager(QObject): for extruder in self.getMachineExtruders(machine_id): ContainerRegistry.getInstance().removeContainer(extruder.userChanges.getId()) + ContainerRegistry.getInstance().removeContainer(extruder.definitionChanges.getId()) ContainerRegistry.getInstance().removeContainer(extruder.getId()) if machine_id in self._extruder_trains: del self._extruder_trains[machine_id] diff --git a/cura/Settings/MachineManager.py b/cura/Settings/MachineManager.py index e5286e7032..f98030a7b1 100755 --- a/cura/Settings/MachineManager.py +++ b/cura/Settings/MachineManager.py @@ -720,6 +720,8 @@ class MachineManager(QObject): containers = CuraContainerRegistry.getInstance().findInstanceContainersMetadata(type = "user", machine = machine_id) for container in containers: CuraContainerRegistry.getInstance().removeContainer(container["id"]) + machine_stack = CuraContainerRegistry.getInstance().findContainerStacks(type = "machine", name = machine_id)[0] + CuraContainerRegistry.getInstance().removeContainer(machine_stack.definitionChanges.getId()) CuraContainerRegistry.getInstance().removeContainer(machine_id) # If the printer that is being removed is a network printer, the hidden printers have to be also removed