126 lines
3.2 KiB
QML
126 lines
3.2 KiB
QML
import "../components"
|
|
import qs.components
|
|
import qs.components.controls
|
|
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();
|
|
}
|
|
}
|
|
}
|