From eb13ac7f6b575ea818e13bb229dfc5ab6ff68adb Mon Sep 17 00:00:00 2001 From: Joey de l'Arago Date: Fri, 25 Nov 2022 17:42:50 +0100 Subject: [PATCH] Getting setting section sized properly CURA-9793 --- .../RecommendedAdhesionSelector.qml | 25 +++++++++++++------ .../Recommended/RecommendedPrintSetup.qml | 5 +++- .../Recommended/RecommendedSettingItem.qml | 18 +++++++------ .../Recommended/RecommendedSettingSection.qml | 12 ++++++--- 4 files changed, 41 insertions(+), 19 deletions(-) diff --git a/resources/qml/PrintSetupSelector/Recommended/RecommendedAdhesionSelector.qml b/resources/qml/PrintSetupSelector/Recommended/RecommendedAdhesionSelector.qml index c87aa96c07..4eaf4f17ce 100644 --- a/resources/qml/PrintSetupSelector/Recommended/RecommendedAdhesionSelector.qml +++ b/resources/qml/PrintSetupSelector/Recommended/RecommendedAdhesionSelector.qml @@ -10,7 +10,6 @@ import Cura 1.0 as Cura RecommendedSettingSection { id: enableAdhesionRow - height: enableAdhesionContainer.height title: catalog.i18nc("@label", "Adhesion") icon: UM.Theme.getIcon("Adhesion") @@ -20,17 +19,29 @@ RecommendedSettingSection property var curaRecommendedMode: Cura.RecommendedMode {} - function onEnableSectionChanged(state) { - curaRecommendedMode.setAdhesion(state) - } - - UM.SettingPropertyProvider + property UM.SettingPropertyProvider platformAdhesionType: UM.SettingPropertyProvider { - id: platformAdhesionType containerStack: Cura.MachineManager.activeMachine removeUnusedValue: false //Doesn't work with settings that are resolved. key: "adhesion_type" watchedProperties: [ "value", "resolve", "enabled" ] storeIndex: 0 } + + function onEnableSectionChanged(state) { + curaRecommendedMode.setAdhesion(state) + } + + contents: RecommendedSettingItem + { + settingName: catalog.i18nc("@action:label", "Print with") + + settingControl: Rectangle + { + width: 20 + height: 20 + color: Qt.rgba(1, 0, 0, .5) + } + } + } diff --git a/resources/qml/PrintSetupSelector/Recommended/RecommendedPrintSetup.qml b/resources/qml/PrintSetupSelector/Recommended/RecommendedPrintSetup.qml index 472d786618..5bbfcc5550 100644 --- a/resources/qml/PrintSetupSelector/Recommended/RecommendedPrintSetup.qml +++ b/resources/qml/PrintSetupSelector/Recommended/RecommendedPrintSetup.qml @@ -98,7 +98,10 @@ Item Layout.fillWidth: true } - RecommendedAdhesionSelector {} + RecommendedAdhesionSelector { + width: parent.width + Layout.fillWidth: true + } } UM.SettingPropertyProvider diff --git a/resources/qml/PrintSetupSelector/Recommended/RecommendedSettingItem.qml b/resources/qml/PrintSetupSelector/Recommended/RecommendedSettingItem.qml index 684a2afd38..2e1dd826a0 100644 --- a/resources/qml/PrintSetupSelector/Recommended/RecommendedSettingItem.qml +++ b/resources/qml/PrintSetupSelector/Recommended/RecommendedSettingItem.qml @@ -11,26 +11,30 @@ import Cura 1.7 as Cura Item { - property Component content: Item { visible: false } + width: parent.width + height: UM.Theme.getSize("section_header").height + + property alias settingControl: settingContainer.children property alias settingName: settingLabel.text + property int leftColumnWidth: width / 2 UM.Label { id: settingLabel + width: leftColumnWidth anchors.left: parent.left anchors.verticalCenter: parent.verticalCenter - text: "TEST" + // These numbers come from the IconWithText in RecommendedSettingSection + anchors.leftMargin: UM.Theme.getSize("medium_button_icon").width + UM.Theme.getSize("thick_margin").width - UM.Theme.getSize("thick_lining").width } Loader { - id: settingLoader - width: parent.width - height: content.height + id: settingContainer + height: childrenRect.height anchors.left: settingLabel.right anchors.right: parent.right - anchers.verticalCenter: parent.verticalCenter - sourceComponent: content + anchors.verticalCenter: parent.verticalCenter } } \ No newline at end of file diff --git a/resources/qml/PrintSetupSelector/Recommended/RecommendedSettingSection.qml b/resources/qml/PrintSetupSelector/Recommended/RecommendedSettingSection.qml index b51d273430..8eb8c57edb 100644 --- a/resources/qml/PrintSetupSelector/Recommended/RecommendedSettingSection.qml +++ b/resources/qml/PrintSetupSelector/Recommended/RecommendedSettingSection.qml @@ -20,15 +20,19 @@ Item property var enableSectionClicked: { return } property int leftColumnWidth: width / 2 + property alias contents: settingColumn.children + function onEnableSectionChanged(state) {} height: childrenRect.height - width: parent.width - Item { id: sectionHeader + anchors.top: parent.top + anchors.right: parent.right + anchors.left: parent.left + height: UM.Theme.getSize("section_header").height Cura.IconWithText { @@ -71,8 +75,8 @@ Item { id: contentLoader width: parent.width - height: content.height - anchors.left: settingLabel.right + height: childrenRect.height + anchors.left: parent.left anchors.right: parent.right anchors.verticalCenter: parent.verticalCenter sourceComponent: content