1
0
mirror of https://github.com/AvengeMedia/DankMaterialShell.git synced 2026-01-28 07:22:50 -05:00

settings: mecha re-organization

This commit is contained in:
bbedward
2025-12-03 17:25:40 -05:00
parent 2c7f24a913
commit 788da62777
40 changed files with 10034 additions and 9580 deletions

View File

@@ -0,0 +1,71 @@
pragma ComponentBehavior: Bound
import QtQuick
import qs.Common
import qs.Widgets
Item {
id: root
property string tab: ""
property var tags: []
property string settingKey: ""
property string text: ""
property string description: ""
property alias model: buttonGroup.model
property alias currentIndex: buttonGroup.currentIndex
property alias selectionMode: buttonGroup.selectionMode
property alias buttonHeight: buttonGroup.buttonHeight
property alias minButtonWidth: buttonGroup.minButtonWidth
property alias buttonPadding: buttonGroup.buttonPadding
property alias checkIconSize: buttonGroup.checkIconSize
property alias textSize: buttonGroup.textSize
property alias spacing: buttonGroup.spacing
property alias checkEnabled: buttonGroup.checkEnabled
signal selectionChanged(int index, bool selected)
width: parent?.width ?? 0
height: 60
Row {
id: contentRow
width: parent.width - Theme.spacingM * 2
x: Theme.spacingM
anchors.verticalCenter: parent.verticalCenter
spacing: Theme.spacingM
Column {
width: parent.width - buttonGroup.width - Theme.spacingM
anchors.verticalCenter: parent.verticalCenter
spacing: Theme.spacingXS
StyledText {
text: root.text
font.pixelSize: Theme.fontSizeMedium
font.weight: Font.Medium
color: Theme.surfaceText
elide: Text.ElideRight
width: parent.width
visible: root.text !== ""
}
StyledText {
text: root.description
font.pixelSize: Theme.fontSizeSmall
color: Theme.surfaceVariantText
wrapMode: Text.WordWrap
width: parent.width
visible: root.description !== ""
}
}
DankButtonGroup {
id: buttonGroup
anchors.verticalCenter: parent.verticalCenter
selectionMode: "single"
onSelectionChanged: (index, selected) => root.selectionChanged(index, selected)
}
}
}