diff --git a/resources/qml/Menus/ConfigurationMenu/ConfigurationItem.qml b/resources/qml/Menus/ConfigurationMenu/ConfigurationItem.qml index 5229d021f8..22f10188e1 100644 --- a/resources/qml/Menus/ConfigurationMenu/ConfigurationItem.qml +++ b/resources/qml/Menus/ConfigurationMenu/ConfigurationItem.qml @@ -16,6 +16,10 @@ Button property bool isValidMaterial: { + if (configuration === null) + { + return false + } var extruderConfigurations = configuration.extruderConfigurations for (var index in extruderConfigurations) @@ -62,11 +66,11 @@ Button Repeater { id: repeater - model: configuration.extruderConfigurations + model: configuration !== null ? configuration.extruderConfigurations: null width: parent.width delegate: PrintCoreConfiguration { - width: Math.round(parent.width / configuration.extruderConfigurations.length) + width: Math.round(parent.width / (configuration !== null ? configuration.extruderConfigurations.length : 1)) printCoreConfiguration: modelData visible: configurationItem.isValidMaterial } @@ -100,6 +104,11 @@ Button id: unknownMaterialMessage text: { + if (configuration === null) + { + return "" + } + var extruderConfigurations = configuration.extruderConfigurations var unknownMaterials = [] for (var index in extruderConfigurations) @@ -194,7 +203,14 @@ Button { id: buildplateLabel source: UM.Theme.getIcon("buildplate") - text: configuration.buildplateConfiguration.charAt(0).toUpperCase() + configuration.buildplateConfiguration.substr(1) + text: + { + if (configuration === null) + { + return "" + } + return configuration.buildplateConfiguration.charAt(0).toUpperCase() + configuration.buildplateConfiguration.substr(1) + } anchors.left: parent.left } } diff --git a/resources/qml/Menus/ConfigurationMenu/PrintCoreConfiguration.qml b/resources/qml/Menus/ConfigurationMenu/PrintCoreConfiguration.qml index 3a4dae425f..f93727ea96 100644 --- a/resources/qml/Menus/ConfigurationMenu/PrintCoreConfiguration.qml +++ b/resources/qml/Menus/ConfigurationMenu/PrintCoreConfiguration.qml @@ -18,9 +18,9 @@ Item Cura.ExtruderIcon { id: icon - materialColor: printCoreConfiguration.material.color + materialColor: printCoreConfiguration !== null ? printCoreConfiguration.material.color : "" anchors.verticalCenter: parent.verticalCenter - extruderEnabled: printCoreConfiguration.material.brand !== "" && printCoreConfiguration.hotendID !== "" + extruderEnabled: printCoreConfiguration !== null && printCoreConfiguration.material.brand !== "" && printCoreConfiguration.hotendID !== "" } Column @@ -35,7 +35,7 @@ Item Label { - text: printCoreConfiguration.material.brand ? printCoreConfiguration.material.brand : " " //Use space so that the height is still correct. + text: (printCoreConfiguration !== null && printCoreConfiguration.material.brand) ? printCoreConfiguration.material.brand : " " //Use space so that the height is still correct. renderType: Text.NativeRendering elide: Text.ElideRight font: UM.Theme.getFont("default") @@ -44,7 +44,7 @@ Item } Label { - text: printCoreConfiguration.material.brand ? printCoreConfiguration.material.name : " " //Use space so that the height is still correct. + text: (printCoreConfiguration !== null && printCoreConfiguration.material.brand) ? printCoreConfiguration.material.name : " " //Use space so that the height is still correct. renderType: Text.NativeRendering elide: Text.ElideRight font: UM.Theme.getFont("medium") @@ -53,7 +53,7 @@ Item } Label { - text: printCoreConfiguration.hotendID ? printCoreConfiguration.hotendID : " " //Use space so that the height is still correct. + text: (printCoreConfiguration !== null && printCoreConfiguration.hotendID) ? printCoreConfiguration.hotendID : " " //Use space so that the height is still correct. renderType: Text.NativeRendering elide: Text.ElideRight font: UM.Theme.getFont("default")