expandable dialogs for color scheme, fonts and scheduling modes

This commit is contained in:
2026-08-27 16:57:02 +02:00
parent 293bf67e09
commit 8a66c3b064
21 changed files with 1326 additions and 661 deletions
+11 -3
View File
@@ -15,14 +15,17 @@ Item {
required property Component content
required property string header
property int horizontalContentMargin
required property string icon
property string icon
required property string label
property alias iconLabel: openButton.iconLabel
property alias rowButton: openButton
property string subtext: ""
property bool open
property real openHeight: Math.min(rootParent.height * 0.8, 600)
property real openWidth: Math.min(rootParent.width * 0.8, 400)
required property Item rootParent
property bool separateContent
required property string settingAnchor
property bool first: false
property bool last: false
@@ -57,6 +60,7 @@ Item {
anchors.fill: parent
enabled: false
hoverEnabled: enabled
preventStealing: true
parent: root.open ? root.rootParent : root
onClicked: root.open = false
@@ -77,7 +81,8 @@ Item {
backdrop.enabled: true
dialogBg.bottomLeftRadius: Tokens.rounding.largeIncreased
dialogBg.bottomRightRadius: Tokens.rounding.largeIncreased
dialogBg.radius: Tokens.rounding.largeIncreased
dialogBg.topRightRadius: Tokens.rounding.largeIncreased
dialogBg.topLeftRadius: Tokens.rounding.largeIncreased
dialogContent.opacity: 1
dialogWrapper.height: root.openHeight
dialogWrapper.width: root.openWidth
@@ -105,7 +110,7 @@ Item {
}
Anim {
properties: "opacity,radius,bottomLeftRadius,bottomRightRadius"
properties: "opacity,topLeftRadius,topRightRadius,bottomLeftRadius,bottomRightRadius"
type: Anim.DefaultEffects
}
@@ -172,6 +177,7 @@ Item {
sourceComponent: MouseArea {
onWheel: event => event.accepted = true
preventStealing: true
ColumnLayout {
anchors.bottomMargin: Tokens.padding.largeIncreased
@@ -224,6 +230,7 @@ Item {
text: qsTr("Cancel")
type: TextButton.Text
verticalPadding: Tokens.padding.small
stateLayer.preventStealing: true
onClicked: {
root.cancelled();
@@ -237,6 +244,7 @@ Item {
isRound: true
text: root.acceptLabel
type: TextButton.Text
stateLayer.preventStealing: true
verticalPadding: Tokens.padding.small
onClicked: {