From 4ff5e43a28f3fd7479cd60defa7935f74c2f5729 Mon Sep 17 00:00:00 2001 From: Lipu Fei Date: Tue, 4 Dec 2018 17:24:48 +0100 Subject: [PATCH] Handle Empty and Unknown material cases CURA-5982 --- plugins/UM3NetworkPrinting/src/ClusterUM3OutputDevice.py | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/plugins/UM3NetworkPrinting/src/ClusterUM3OutputDevice.py b/plugins/UM3NetworkPrinting/src/ClusterUM3OutputDevice.py index 1e0f538d8d..e31229680c 100644 --- a/plugins/UM3NetworkPrinting/src/ClusterUM3OutputDevice.py +++ b/plugins/UM3NetworkPrinting/src/ClusterUM3OutputDevice.py @@ -608,14 +608,15 @@ class ClusterUM3OutputDevice(NetworkedPrinterOutputDevice): def _createMaterialOutputModel(self, material_data: Dict[str, Any]) -> "MaterialOutputModel": material_manager = CuraApplication.getInstance().getMaterialManager() material_group_list = material_manager.getMaterialGroupListByGUID(material_data["guid"]) - # This can happen if the connected machine has no material in one or more extruders, so we should return an - # "empty" material model. + # This can happen if the connected machine has no material in one or more extruders (if GUID is empty), or the + # material is unknown to Cura, so we should return an "empty" or "unknown" material model. if material_group_list is None: + material_name = "Empty" if len(material_data["guid"]) == 0 else "Unknown" return MaterialOutputModel(guid = material_data["guid"], type = material_data.get("type", ""), color = material_data.get("color", ""), brand = material_data.get("brand", ""), - name = material_data.get("name", "Empty") + name = material_data.get("name", material_name) ) # Sort the material groups by "is_read_only = True" first, and then the name alphabetically.