summaryrefslogtreecommitdiff
path: root/modules/controlcenter/dashboard
diff options
context:
space:
mode:
Diffstat (limited to 'modules/controlcenter/dashboard')
-rw-r--r--modules/controlcenter/dashboard/DashboardPane.qml135
-rw-r--r--modules/controlcenter/dashboard/GeneralSection.qml128
-rw-r--r--modules/controlcenter/dashboard/PerformanceSection.qml106
3 files changed, 0 insertions, 369 deletions
diff --git a/modules/controlcenter/dashboard/DashboardPane.qml b/modules/controlcenter/dashboard/DashboardPane.qml
deleted file mode 100644
index df29f09..0000000
--- a/modules/controlcenter/dashboard/DashboardPane.qml
+++ /dev/null
@@ -1,135 +0,0 @@
-pragma ComponentBehavior: Bound
-
-import ".."
-import "../components"
-import qs.components
-import qs.components.controls
-import qs.components.effects
-import qs.components.containers
-import qs.services
-import qs.config
-import qs.utils
-import Quickshell
-import Quickshell.Widgets
-import QtQuick
-import QtQuick.Layouts
-
-Item {
- id: root
-
- required property Session session
-
- // General Settings
- property bool enabled: Config.dashboard.enabled ?? true
- property bool showOnHover: Config.dashboard.showOnHover ?? true
- property int mediaUpdateInterval: Config.dashboard.mediaUpdateInterval ?? 1000
- property int resourceUpdateInterval: Config.dashboard.resourceUpdateInterval ?? 1000
- property int dragThreshold: Config.dashboard.dragThreshold ?? 50
-
- // Dashboard Tabs
- property bool showDashboard: Config.dashboard.showDashboard ?? true
- property bool showMedia: Config.dashboard.showMedia ?? true
- property bool showPerformance: Config.dashboard.showPerformance ?? true
- property bool showWeather: Config.dashboard.showWeather ?? true
-
- // Performance Resources
- property bool showBattery: Config.dashboard.performance.showBattery ?? false
- property bool showGpu: Config.dashboard.performance.showGpu ?? true
- property bool showCpu: Config.dashboard.performance.showCpu ?? true
- property bool showMemory: Config.dashboard.performance.showMemory ?? true
- property bool showStorage: Config.dashboard.performance.showStorage ?? true
- property bool showNetwork: Config.dashboard.performance.showNetwork ?? true
-
- anchors.fill: parent
-
- function saveConfig() {
- Config.dashboard.enabled = root.enabled;
- Config.dashboard.showOnHover = root.showOnHover;
- Config.dashboard.mediaUpdateInterval = root.mediaUpdateInterval;
- Config.dashboard.resourceUpdateInterval = root.resourceUpdateInterval;
- Config.dashboard.dragThreshold = root.dragThreshold;
- Config.dashboard.showDashboard = root.showDashboard;
- Config.dashboard.showMedia = root.showMedia;
- Config.dashboard.showPerformance = root.showPerformance;
- Config.dashboard.showWeather = root.showWeather;
- Config.dashboard.performance.showBattery = root.showBattery;
- Config.dashboard.performance.showGpu = root.showGpu;
- Config.dashboard.performance.showCpu = root.showCpu;
- Config.dashboard.performance.showMemory = root.showMemory;
- Config.dashboard.performance.showStorage = root.showStorage;
- Config.dashboard.performance.showNetwork = root.showNetwork;
- // Note: sizes properties are readonly and cannot be modified
- Config.save();
- }
-
- ClippingRectangle {
- id: dashboardClippingRect
- anchors.fill: parent
- anchors.margins: Appearance.padding.normal
- anchors.leftMargin: 0
- anchors.rightMargin: Appearance.padding.normal
-
- radius: dashboardBorder.innerRadius
- color: "transparent"
-
- Loader {
- id: dashboardLoader
-
- anchors.fill: parent
- anchors.margins: Appearance.padding.large + Appearance.padding.normal
- anchors.leftMargin: Appearance.padding.large
- anchors.rightMargin: Appearance.padding.large
-
- sourceComponent: dashboardContentComponent
- }
- }
-
- InnerBorder {
- id: dashboardBorder
- leftThickness: 0
- rightThickness: Appearance.padding.normal
- }
-
- Component {
- id: dashboardContentComponent
-
- StyledFlickable {
- id: dashboardFlickable
- flickableDirection: Flickable.VerticalFlick
- contentHeight: dashboardLayout.height
-
- StyledScrollBar.vertical: StyledScrollBar {
- flickable: dashboardFlickable
- }
-
- ColumnLayout {
- id: dashboardLayout
- anchors.left: parent.left
- anchors.right: parent.right
- anchors.top: parent.top
-
- spacing: Appearance.spacing.normal
-
- RowLayout {
- spacing: Appearance.spacing.smaller
-
- StyledText {
- text: qsTr("Dashboard")
- font.pointSize: Appearance.font.size.large
- font.weight: 500
- }
- }
-
- // General Settings Section
- GeneralSection {
- rootItem: root
- }
-
- // Performance Resources Section
- PerformanceSection {
- rootItem: root
- }
- }
- }
- }
-}
diff --git a/modules/controlcenter/dashboard/GeneralSection.qml b/modules/controlcenter/dashboard/GeneralSection.qml
deleted file mode 100644
index 95e7531..0000000
--- a/modules/controlcenter/dashboard/GeneralSection.qml
+++ /dev/null
@@ -1,128 +0,0 @@
-import ".."
-import "../components"
-import qs.components
-import qs.components.controls
-import qs.services
-import qs.config
-import QtQuick
-import QtQuick.Layouts
-
-SectionContainer {
- id: root
-
- required property var rootItem
-
- Layout.fillWidth: true
- alignTop: true
-
- StyledText {
- text: qsTr("General Settings")
- font.pointSize: Appearance.font.size.normal
- }
-
- SwitchRow {
- label: qsTr("Enabled")
- checked: root.rootItem.enabled
- onToggled: checked => {
- root.rootItem.enabled = checked;
- root.rootItem.saveConfig();
- }
- }
-
- SwitchRow {
- label: qsTr("Show on hover")
- checked: root.rootItem.showOnHover
- onToggled: checked => {
- root.rootItem.showOnHover = checked;
- root.rootItem.saveConfig();
- }
- }
-
- RowLayout {
- Layout.fillWidth: true
- spacing: Appearance.spacing.normal
-
- SwitchRow {
- Layout.fillWidth: true
- label: qsTr("Show Dashboard tab")
- checked: root.rootItem.showDashboard
- onToggled: checked => {
- root.rootItem.showDashboard = checked;
- root.rootItem.saveConfig();
- }
- }
-
- SwitchRow {
- Layout.fillWidth: true
- label: qsTr("Show Media tab")
- checked: root.rootItem.showMedia
- onToggled: checked => {
- root.rootItem.showMedia = checked;
- root.rootItem.saveConfig();
- }
- }
-
- SwitchRow {
- Layout.fillWidth: true
- label: qsTr("Show Performance tab")
- checked: root.rootItem.showPerformance
- onToggled: checked => {
- root.rootItem.showPerformance = checked;
- root.rootItem.saveConfig();
- }
- }
-
- SwitchRow {
- Layout.fillWidth: true
- label: qsTr("Show Weather tab")
- checked: root.rootItem.showWeather
- onToggled: checked => {
- root.rootItem.showWeather = checked;
- root.rootItem.saveConfig();
- }
- }
- }
-
- SliderInput {
- Layout.fillWidth: true
-
- label: qsTr("Media update interval")
- value: root.rootItem.mediaUpdateInterval
- from: 100
- to: 10000
- stepSize: 100
- suffix: "ms"
- validator: IntValidator {
- bottom: 100
- top: 10000
- }
- formatValueFunction: val => Math.round(val).toString()
- parseValueFunction: text => parseInt(text)
-
- onValueModified: newValue => {
- root.rootItem.mediaUpdateInterval = Math.round(newValue);
- root.rootItem.saveConfig();
- }
- }
-
- SliderInput {
- Layout.fillWidth: true
-
- label: qsTr("Drag threshold")
- value: root.rootItem.dragThreshold
- from: 0
- to: 100
- suffix: "px"
- validator: IntValidator {
- bottom: 0
- top: 100
- }
- formatValueFunction: val => Math.round(val).toString()
- parseValueFunction: text => parseInt(text)
-
- onValueModified: newValue => {
- root.rootItem.dragThreshold = Math.round(newValue);
- root.rootItem.saveConfig();
- }
- }
-}
diff --git a/modules/controlcenter/dashboard/PerformanceSection.qml b/modules/controlcenter/dashboard/PerformanceSection.qml
deleted file mode 100644
index ac84752..0000000
--- a/modules/controlcenter/dashboard/PerformanceSection.qml
+++ /dev/null
@@ -1,106 +0,0 @@
-import ".."
-import "../components"
-import QtQuick
-import QtQuick.Layouts
-import Quickshell.Services.UPower
-import qs.components
-import qs.components.controls
-import qs.config
-import qs.services
-
-SectionContainer {
- id: root
-
- required property var rootItem
- // GPU toggle is hidden when gpuType is "NONE" (no GPU data available)
- readonly property bool gpuAvailable: SystemUsage.gpuType !== "NONE"
- // Battery toggle is hidden when no laptop battery is present
- readonly property bool batteryAvailable: UPower.displayDevice.isLaptopBattery
-
- Layout.fillWidth: true
- alignTop: true
-
- StyledText {
- text: qsTr("Performance Resources")
- font.pointSize: Appearance.font.size.normal
- }
-
- ConnectedButtonGroup {
- rootItem: root.rootItem
- options: {
- let opts = [];
- if (root.batteryAvailable)
- opts.push({
- "label": qsTr("Battery"),
- "propertyName": "showBattery",
- "onToggled": function (checked) {
- root.rootItem.showBattery = checked;
- root.rootItem.saveConfig();
- }
- });
-
- if (root.gpuAvailable)
- opts.push({
- "label": qsTr("GPU"),
- "propertyName": "showGpu",
- "onToggled": function (checked) {
- root.rootItem.showGpu = checked;
- root.rootItem.saveConfig();
- }
- });
-
- opts.push({
- "label": qsTr("CPU"),
- "propertyName": "showCpu",
- "onToggled": function (checked) {
- root.rootItem.showCpu = checked;
- root.rootItem.saveConfig();
- }
- }, {
- "label": qsTr("Memory"),
- "propertyName": "showMemory",
- "onToggled": function (checked) {
- root.rootItem.showMemory = checked;
- root.rootItem.saveConfig();
- }
- }, {
- "label": qsTr("Storage"),
- "propertyName": "showStorage",
- "onToggled": function (checked) {
- root.rootItem.showStorage = checked;
- root.rootItem.saveConfig();
- }
- }, {
- "label": qsTr("Network"),
- "propertyName": "showNetwork",
- "onToggled": function (checked) {
- root.rootItem.showNetwork = checked;
- root.rootItem.saveConfig();
- }
- });
- return opts;
- }
- }
-
- SliderInput {
- Layout.fillWidth: true
-
- label: qsTr("Resource update interval")
- value: root.rootItem.resourceUpdateInterval
- from: 100
- to: 10000
- stepSize: 100
- suffix: "ms"
- validator: IntValidator {
- bottom: 100
- top: 10000
- }
- formatValueFunction: val => Math.round(val).toString()
- parseValueFunction: text => parseInt(text)
-
- onValueModified: newValue => {
- root.rootItem.resourceUpdateInterval = Math.round(newValue);
- root.rootItem.saveConfig();
- }
- }
-}