Tbh idk what the issue was, but the entire implementation is extremely scuffed and we need to remake it completely
128 lines
3.2 KiB
QML
128 lines
3.2 KiB
QML
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();
|
|
}
|
|
}
|
|
}
|