From 070a522abb772854d5d59214a30f18ff8f25b940 Mon Sep 17 00:00:00 2001 From: Jaime van Kessel Date: Fri, 10 Jun 2016 09:17:12 +0200 Subject: [PATCH] Revert "Temporarily revert "Renaming profiles now also renames them on disk"" Starting work on it again, so unreverting the revert (i guess) This reverts commit d8e8b0740ac2b1d776c13cd8078fe1b8e4f5a45d. --- cura/MachineManagerModel.py | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/cura/MachineManagerModel.py b/cura/MachineManagerModel.py index 6768a357a5..e3f0bd6241 100644 --- a/cura/MachineManagerModel.py +++ b/cura/MachineManagerModel.py @@ -5,12 +5,17 @@ from PyQt5.QtCore import QObject, pyqtSlot, pyqtProperty, pyqtSignal from UM.Application import Application from UM.Preferences import Preferences from UM.Logger import Logger +from UM.Resources import Resources + +import os +import urllib import UM.Settings from UM.Settings.Validator import ValidatorState from UM.Settings.InstanceContainer import InstanceContainer from UM.Settings.ContainerStack import ContainerStack from . import ExtruderManager +import cura.CuraApplication from UM.i18n import i18nCatalog catalog = i18nCatalog("cura") @@ -303,8 +308,19 @@ class MachineManagerModel(QObject): def renameQualityContainer(self, container_id, new_name): containers = UM.Settings.ContainerRegistry.getInstance().findInstanceContainers(id = container_id, type = "quality") if containers: + + # Remove old container form drive. + old_id = containers[0].getId() + file_name = urllib.parse.quote_plus(old_id) + ".inst.cfg" + path = Resources.getStoragePath(cura.CuraApplication.CuraApplication.ResourceTypes.QualityInstanceContainer, + file_name) + os.remove(path) + + ## Check if the new name is allowed. new_name = self._createUniqueName("quality", containers[0].getName(), new_name, catalog.i18nc("@label", "Custom profile")) + containers[0].setName(new_name) + containers[0]._id = new_name # Todo: Fix proper id change function for this. self.activeQualityChanged.emit()