From 681d33de817ea8387f22807025695e826316249a Mon Sep 17 00:00:00 2001 From: Jaime van Kessel Date: Fri, 16 Sep 2022 14:29:34 +0200 Subject: [PATCH 1/4] Fix spacing between extruders in selector card CURA-9278 --- resources/qml/PrinterSelector/PrintSelectorCard.qml | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/resources/qml/PrinterSelector/PrintSelectorCard.qml b/resources/qml/PrinterSelector/PrintSelectorCard.qml index 517a0e164a..e1fab02db4 100644 --- a/resources/qml/PrinterSelector/PrintSelectorCard.qml +++ b/resources/qml/PrinterSelector/PrintSelectorCard.qml @@ -50,7 +50,7 @@ Rectangle Layout.fillWidth: true Layout.preferredWidth: parent.width / 2 Layout.alignment: Qt.AlignTop - spacing: UM.Theme.getSize("default_margin").width + spacing: UM.Theme.getSize("narrow_margin").width Repeater { @@ -88,7 +88,6 @@ Rectangle text: modelData.materials.length == 1 ? `${modelData.materials[0].brand} ${modelData.materials[0].name}` : "" visible: modelData.materials.length == 1 } - ColumnLayout { id: multiMaterialText @@ -98,7 +97,7 @@ Rectangle visible: modelData.materials.length > 1 Repeater { - model: modelData.materials + model: modelData.materials.length > 1 ? modelData.materials: null UM.Label { text: `${modelData.brand} ${modelData.name}` From 614ab8ee7af6b9c09f055148f6cd4d827ccb30b7 Mon Sep 17 00:00:00 2001 From: Jaime van Kessel Date: Fri, 16 Sep 2022 14:30:06 +0200 Subject: [PATCH 2/4] Increase size of print button for selector card CURA-9278 --- resources/qml/PrinterSelector/PrintSelectorCard.qml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/resources/qml/PrinterSelector/PrintSelectorCard.qml b/resources/qml/PrinterSelector/PrintSelectorCard.qml index e1fab02db4..dedad37a9d 100644 --- a/resources/qml/PrinterSelector/PrintSelectorCard.qml +++ b/resources/qml/PrinterSelector/PrintSelectorCard.qml @@ -112,7 +112,7 @@ Rectangle { id: printButton - implicitWidth: UM.Theme.getSize("medium_button").width + implicitWidth: UM.Theme.getSize("large_button").width implicitHeight: implicitWidth Layout.alignment: Qt.AlignTop padding: 0 @@ -131,7 +131,7 @@ Rectangle anchors.centerIn: parent source: UM.Theme.getIcon("Printer") color: UM.Theme.getColor("border_accent_1") - width: UM.Theme.getSize("small_button_icon").width + width: UM.Theme.getSize("medium_button_icon").width height: width } } From 017560480a89bf9a25366928c436eb2e56078ae3 Mon Sep 17 00:00:00 2001 From: Jaime van Kessel Date: Fri, 16 Sep 2022 14:34:36 +0200 Subject: [PATCH 3/4] Ensure that alignment is as set in the design CURA-9278 --- resources/qml/PrinterSelector/PrintSelectorCard.qml | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/resources/qml/PrinterSelector/PrintSelectorCard.qml b/resources/qml/PrinterSelector/PrintSelectorCard.qml index dedad37a9d..943ad8077c 100644 --- a/resources/qml/PrinterSelector/PrintSelectorCard.qml +++ b/resources/qml/PrinterSelector/PrintSelectorCard.qml @@ -15,6 +15,7 @@ Rectangle property var extruders property var manager + width: parent.width height: childrenRect.height + 2 * UM.Theme.getSize("default_margin").height @@ -35,7 +36,7 @@ Rectangle Layout.preferredWidth: parent.width / 3 Layout.fillWidth: true - Layout.alignment: Qt.AlignTop + Layout.alignment: extruders[0].materials.length > 1 ? Qt.AlignTop: Qt.AlignCenter Layout.fillHeight: false source: UM.Theme.getIcon("Printer") @@ -114,7 +115,7 @@ Rectangle implicitWidth: UM.Theme.getSize("large_button").width implicitHeight: implicitWidth - Layout.alignment: Qt.AlignTop + Layout.alignment: extruders[0].materials.length > 1 ? Qt.AlignTop: Qt.AlignCenter padding: 0 background: Rectangle From 1dc42cb69aa0333a676de6e93f665956c53ac905 Mon Sep 17 00:00:00 2001 From: Jaime van Kessel Date: Fri, 16 Sep 2022 14:39:20 +0200 Subject: [PATCH 4/4] Fix refresh of ChoosePrinterDialog not working CURA-9278 --- cura/Machines/Models/CompatibleMachineModel.py | 4 ++++ resources/qml/Dialogs/ChoosePrinterDialog.qml | 10 +++++++--- 2 files changed, 11 insertions(+), 3 deletions(-) diff --git a/cura/Machines/Models/CompatibleMachineModel.py b/cura/Machines/Models/CompatibleMachineModel.py index 029567cdec..639bba88a0 100644 --- a/cura/Machines/Models/CompatibleMachineModel.py +++ b/cura/Machines/Models/CompatibleMachineModel.py @@ -31,6 +31,10 @@ class CompatibleMachineModel(ListModel): machine_manager.globalContainerChanged.connect(self._update) machine_manager.outputDevicesChanged.connect(self._update) + @pyqtSlot() + def forceUpdate(self): + self._update() + def _update(self) -> None: self.clear() diff --git a/resources/qml/Dialogs/ChoosePrinterDialog.qml b/resources/qml/Dialogs/ChoosePrinterDialog.qml index b7079fcabd..69d9fc44cc 100644 --- a/resources/qml/Dialogs/ChoosePrinterDialog.qml +++ b/resources/qml/Dialogs/ChoosePrinterDialog.qml @@ -11,7 +11,7 @@ import Cura 1.0 as Cura UM.Dialog { property var manager - + property var compatible_machine_model: Cura.CompatibleMachineModel {} id: base title: catalog.i18nc("@title:window", "Select Printer") @@ -65,7 +65,11 @@ UM.Dialog color: UM.Theme.getColor("text_link") hoverColor: UM.Theme.getColor("text_scene_hover") - onClicked: manager.refresh() + onClicked: + { + manager.refresh() + base.compatible_machine_model.forceUpdate() + } } } @@ -73,7 +77,7 @@ UM.Dialog { id: contents - model: Cura.CompatibleMachineModel {} + model: base.compatible_machine_model delegate: Cura.PrintSelectorCard {