Browse Source

Prevent abstract machines from being deleted in the config menu

CURA-9277
c.lamboo 2 years ago
parent
commit
27fc11b840

+ 2 - 1
cura/Machines/Models/GlobalStacksModel.py

@@ -172,6 +172,7 @@ class GlobalStacksModel(ListModel):
                           "metadata": container_stack.getMetaData().copy(),
                           "discoverySource": section_name,
                           "removalWarning": removal_warning,
-                          "isOnline": is_online})
+                          "isOnline": is_online,
+                          "isAbstractMachine": is_abstract_machine})
         items.sort(key=lambda i: (not i["hasRemoteConnection"], i["name"]))
         self.setItems(items)

+ 2 - 2
resources/qml/Preferences/MachinesPage.qml

@@ -17,7 +17,7 @@ UM.ManagementPage
     title: catalog.i18nc("@title:tab", "Printers")
     detailsPlaneCaption: base.currentItem && base.currentItem.name ? base.currentItem.name : ""
 
-    model: Cura.GlobalStacksModel { filterAbstractMachines: false }
+    model: Cura.GlobalStacksModel { }
 
     sectionRole: "discoverySource"
 
@@ -139,7 +139,7 @@ UM.ManagementPage
             Cura.MenuItem
             {
                 text: catalog.i18nc("@action:button", "Remove")
-                enabled: base.currentItem != null && model.count > 1
+                enabled: base.currentItem != null && model.count > 1 && !base.currentItem.isAbstractMachine
                 onTriggered: confirmDialog.open()
             }
             Cura.MenuItem