From f712fc0f362a943f73a09e9caa4d17f7353f42b2 Mon Sep 17 00:00:00 2001 From: Ghostkeeper Date: Mon, 9 Jul 2018 17:29:45 +0200 Subject: [PATCH] No longer add incompatible materials to materials menus This removes the need for the 'compatible' role but I'll keep it in for now in case we want to change the design of this later. Contributes to issue CURA-5460. --- cura/Machines/Models/BrandMaterialsModel.py | 4 +++- cura/Machines/Models/GenericMaterialsModel.py | 4 +++- resources/qml/Menus/MaterialMenu.qml | 1 - 3 files changed, 6 insertions(+), 3 deletions(-) diff --git a/cura/Machines/Models/BrandMaterialsModel.py b/cura/Machines/Models/BrandMaterialsModel.py index 5adc3d10fd..dd286490ff 100644 --- a/cura/Machines/Models/BrandMaterialsModel.py +++ b/cura/Machines/Models/BrandMaterialsModel.py @@ -108,6 +108,8 @@ class BrandMaterialsModel(ListModel): # Only add results for generic materials if brand.lower() == "generic": continue + if not metadata.get("compatible", True): + continue if brand not in brand_group_dict: brand_group_dict[brand] = {} @@ -123,7 +125,7 @@ class BrandMaterialsModel(ListModel): "material": metadata["material"], "color_name": metadata["color_name"], "container_node": container_node, - "compatible": metadata.get("compatible", "unknown") + "compatible": metadata.get("compatible", True) } brand_group_dict[brand][material_type].append(item) diff --git a/cura/Machines/Models/GenericMaterialsModel.py b/cura/Machines/Models/GenericMaterialsModel.py index 48f4c4ea50..1580e7ff0c 100644 --- a/cura/Machines/Models/GenericMaterialsModel.py +++ b/cura/Machines/Models/GenericMaterialsModel.py @@ -44,6 +44,8 @@ class GenericMaterialsModel(BaseMaterialsModel): # Only add results for generic materials if metadata["brand"].lower() != "generic": continue + if not metadata.get("compatible", True): + continue item = {"root_material_id": root_material_id, "id": metadata["id"], @@ -52,7 +54,7 @@ class GenericMaterialsModel(BaseMaterialsModel): "material": metadata["material"], "color_name": metadata["color_name"], "container_node": container_node, - "compatible": metadata.get("compatible", "unknown") + "compatible": metadata.get("compatible", True) } item_list.append(item) diff --git a/resources/qml/Menus/MaterialMenu.qml b/resources/qml/Menus/MaterialMenu.qml index c2de8f31e9..64b3130724 100644 --- a/resources/qml/Menus/MaterialMenu.qml +++ b/resources/qml/Menus/MaterialMenu.qml @@ -22,7 +22,6 @@ Menu text: model.name checkable: true checked: model.root_material_id == Cura.MachineManager.currentRootMaterialId[extruderIndex] - enabled: model.compatible exclusiveGroup: group onTriggered: {