summaryrefslogtreecommitdiff
path: root/raveos-hyprland-theme/theme-data/DankMaterialShell/quickshell/Modules/Plugins/ListSetting.qml
diff options
context:
space:
mode:
authorNippy <nippy@rp1.hu>2026-05-09 13:33:09 +0200
committerNippy <nippy@rp1.hu>2026-05-09 13:33:09 +0200
commita2b924d7e9492b978ad6dc33b6c1ffcb304b4bc5 (patch)
tree1a8769217f84bfe9d6216fafaadaf8cdd876d457 /raveos-hyprland-theme/theme-data/DankMaterialShell/quickshell/Modules/Plugins/ListSetting.qml
parent34b9c34f982b2596cfa9e368a2d7f74e9a17477c (diff)
downloadRaveOS-PKGBUILD-a2b924d7e9492b978ad6dc33b6c1ffcb304b4bc5.tar.gz
RaveOS-PKGBUILD-a2b924d7e9492b978ad6dc33b6c1ffcb304b4bc5.zip
raveos update
Diffstat (limited to 'raveos-hyprland-theme/theme-data/DankMaterialShell/quickshell/Modules/Plugins/ListSetting.qml')
-rw-r--r--raveos-hyprland-theme/theme-data/DankMaterialShell/quickshell/Modules/Plugins/ListSetting.qml132
1 files changed, 0 insertions, 132 deletions
diff --git a/raveos-hyprland-theme/theme-data/DankMaterialShell/quickshell/Modules/Plugins/ListSetting.qml b/raveos-hyprland-theme/theme-data/DankMaterialShell/quickshell/Modules/Plugins/ListSetting.qml
deleted file mode 100644
index 5f636f5..0000000
--- a/raveos-hyprland-theme/theme-data/DankMaterialShell/quickshell/Modules/Plugins/ListSetting.qml
+++ /dev/null
@@ -1,132 +0,0 @@
-import QtQuick
-import qs.Common
-import qs.Widgets
-
-Column {
- id: root
-
- required property string settingKey
- required property string label
- property string description: ""
- property var defaultValue: []
- property var items: defaultValue
- property Component delegate: null
-
- width: parent.width
- spacing: Theme.spacingM
-
- Component.onCompleted: {
- const settings = findSettings()
- if (settings) {
- items = settings.loadValue(settingKey, defaultValue)
- }
- }
-
- onItemsChanged: {
- const settings = findSettings()
- if (settings) {
- settings.saveValue(settingKey, items)
- }
- }
-
- function findSettings() {
- let item = parent
- while (item) {
- if (item.saveValue !== undefined && item.loadValue !== undefined) {
- return item
- }
- item = item.parent
- }
- return null
- }
-
- function addItem(item) {
- items = items.concat([item])
- }
-
- function removeItem(index) {
- const newItems = items.slice()
- newItems.splice(index, 1)
- items = newItems
- }
-
- StyledText {
- text: root.label
- font.pixelSize: Theme.fontSizeMedium
- font.weight: Font.Medium
- color: Theme.surfaceText
- }
-
- StyledText {
- text: root.description
- font.pixelSize: Theme.fontSizeSmall
- color: Theme.surfaceVariantText
- width: parent.width
- wrapMode: Text.WordWrap
- visible: root.description !== ""
- }
-
- Column {
- width: parent.width
- spacing: Theme.spacingS
-
- Repeater {
- model: root.items
- delegate: root.delegate ? root.delegate : defaultDelegate
- }
-
- StyledText {
- text: I18n.tr("No items added yet")
- font.pixelSize: Theme.fontSizeSmall
- color: Theme.surfaceVariantText
- visible: root.items.length === 0
- }
- }
-
- Component {
- id: defaultDelegate
- StyledRect {
- width: parent.width
- height: 40
- radius: Theme.cornerRadius
- color: Theme.withAlpha(Theme.surfaceContainerHigh, Theme.popupTransparency)
- border.width: 0
-
- StyledText {
- anchors.left: parent.left
- anchors.leftMargin: Theme.spacingM
- anchors.verticalCenter: parent.verticalCenter
- text: modelData
- color: Theme.surfaceText
- }
-
- Rectangle {
- anchors.right: parent.right
- anchors.rightMargin: Theme.spacingM
- anchors.verticalCenter: parent.verticalCenter
- width: 60
- height: 28
- color: removeArea.containsMouse ? Theme.errorHover : Theme.error
- radius: Theme.cornerRadius
-
- StyledText {
- anchors.centerIn: parent
- text: I18n.tr("Remove")
- color: Theme.errorText
- font.pixelSize: Theme.fontSizeSmall
- font.weight: Font.Medium
- }
-
- MouseArea {
- id: removeArea
- anchors.fill: parent
- hoverEnabled: true
- cursorShape: Qt.PointingHandCursor
- onClicked: {
- root.removeItem(index)
- }
- }
- }
- }
- }
-}