Fix renaming profiles from the Profiles page

CURA-1585
This commit is contained in:
fieldOfView 2016-06-07 08:11:53 +02:00
parent 35706734e6
commit 05643eca11
2 changed files with 16 additions and 7 deletions

View file

@ -312,6 +312,15 @@ class MachineManagerModel(QObject):
return "" return ""
@pyqtSlot(str, str)
def renameQualityContainer(self, container_id, new_name):
containers = UM.Settings.ContainerRegistry.getInstance().findInstanceContainers(id = container_id, type = "quality")
if containers:
new_name = self._createUniqueName("machine", new_name, catalog.i18nc("@label", "Custom profile"))
containers[0].setName(new_name)
UM.Settings.ContainerRegistry.getInstance().containerChanged.emit(containers[0])
@pyqtSlot(str) @pyqtSlot(str)
def removeQualityContainer(self, container_id): def removeQualityContainer(self, container_id):
containers = UM.Settings.ContainerRegistry.getInstance().findInstanceContainers(id = container_id) containers = UM.Settings.ContainerRegistry.getInstance().findInstanceContainers(id = container_id)

View file

@ -184,19 +184,19 @@ UM.ManagementPage
UM.ConfirmRemoveDialog UM.ConfirmRemoveDialog
{ {
id: confirmDialog; id: confirmDialog
object: base.currentItem != null ? base.currentItem.name : ""; object: base.currentItem != null ? base.currentItem.name : ""
onYes: Cura.MachineManager.removeQualityContainer(base.currentItem.id); onYes: Cura.MachineManager.removeQualityContainer(base.currentItem.id)
} }
UM.RenameDialog UM.RenameDialog
{ {
id: renameDialog; id: renameDialog;
object: base.currentItem != null ? base.currentItem.name : ""; object: base.currentItem != null ? base.currentItem.name : ""
property bool removeWhenRejected: false; property bool removeWhenRejected: false
onAccepted: base.model.rename(base.currentItem.id, newName.trim()); onAccepted: Cura.MachineManager.renameQualityContainer(base.currentItem.id, newName)
onRejected: { onRejected: {
if(removeWhenRejected) { if(removeWhenRejected) {
base.model.removeProfile(base.currentItem.name) Cura.MachineManager.removeQualityContainer(base.currentItem.id)
} }
} }
} }