mirror of
https://github.com/arcan1s/awesome-widgets.git
synced 2025-04-24 15:37:23 +00:00
258 lines
7.9 KiB
QML
258 lines
7.9 KiB
QML
/***************************************************************************
|
|
* This file is part of awesome-widgets *
|
|
* *
|
|
* awesome-widgets is free software: you can redistribute it and/or *
|
|
* modify it under the terms of the GNU General Public License as *
|
|
* published by the Free Software Foundation, either version 3 of the *
|
|
* License, or (at your option) any later version. *
|
|
* *
|
|
* awesome-widgets is distributed in the hope that it will be useful, *
|
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of *
|
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the *
|
|
* GNU General Public License for more details. *
|
|
* *
|
|
* You should have received a copy of the GNU General Public License *
|
|
* along with awesome-widgets. If not, see http://www.gnu.org/licenses/ *
|
|
***************************************************************************/
|
|
|
|
import QtQuick 2.15
|
|
import QtQuick.Controls
|
|
import org.kde.kcmutils as KCM
|
|
|
|
import org.kde.plasma.private.awesomewidget 1.0
|
|
|
|
|
|
KCM.SimpleKCM {
|
|
id: advancedPage
|
|
|
|
// backend
|
|
AWActions {
|
|
id: awActions
|
|
}
|
|
|
|
property alias cfg_background: background.checked
|
|
property alias cfg_translateStrings: translate.checked
|
|
property alias cfg_wrapNewLines: wrapNewLines.checked
|
|
property alias cfg_wrapText: wordWrap.checked
|
|
property alias cfg_notify: notify.checked
|
|
property alias cfg_checkUpdates: updates.checked
|
|
property alias cfg_optimize: optimize.checked
|
|
property alias cfg_height: widgetHeight.value
|
|
property alias cfg_width: widgetWidth.value
|
|
property alias cfg_interval: update.value
|
|
property alias cfg_queueLimit: queueLimit.value
|
|
property string cfg_tempUnits: tempUnits.value
|
|
property alias cfg_customTime: customTime.value
|
|
property alias cfg_customUptime: customUptime.value
|
|
property alias cfg_acOnline: acOnline.value
|
|
property alias cfg_acOffline: acOffline.value
|
|
property alias cfg_telemetryCount: telemetryCount.value
|
|
property alias cfg_telemetryRemote: telemetryRemote.checked
|
|
property alias cfg_telemetryId: telemetryId.value
|
|
|
|
Column {
|
|
id: pageColumn
|
|
anchors.fill: parent
|
|
|
|
CheckBoxSelector {
|
|
id: background
|
|
text: i18n("Enable background")
|
|
}
|
|
|
|
CheckBoxSelector {
|
|
id: translate
|
|
text: i18n("Translate strings")
|
|
}
|
|
|
|
CheckBoxSelector {
|
|
id: wrapNewLines
|
|
text: i18n("Wrap new lines")
|
|
}
|
|
|
|
CheckBoxSelector {
|
|
id: wordWrap
|
|
text: i18n("Enable word wrap")
|
|
}
|
|
|
|
CheckBoxSelector {
|
|
id: notify
|
|
text: i18n("Enable notifications")
|
|
}
|
|
|
|
CheckBoxSelector {
|
|
id: updates
|
|
text: i18n("Check updates on startup")
|
|
}
|
|
|
|
CheckBoxSelector {
|
|
id: optimize
|
|
text: i18n("Optimize subscription")
|
|
}
|
|
|
|
IntegerSelector {
|
|
id: widgetHeight
|
|
maximumValue: 4096
|
|
minimumValue: 0
|
|
stepSize: 50
|
|
text: i18n("Widget height, px")
|
|
value: plasmoid.configuration.height
|
|
}
|
|
|
|
IntegerSelector {
|
|
id: widgetWidth
|
|
maximumValue: 4096
|
|
minimumValue: 0
|
|
stepSize: 50
|
|
text: i18n("Widget width, px")
|
|
value: plasmoid.configuration.width
|
|
}
|
|
|
|
IntegerSelector {
|
|
id: update
|
|
maximumValue: 10000
|
|
minimumValue: 1000
|
|
stepSize: 500
|
|
text: i18n("Time interval")
|
|
value: plasmoid.configuration.interval
|
|
}
|
|
|
|
IntegerSelector {
|
|
id: queueLimit
|
|
maximumValue: 99
|
|
minimumValue: 0
|
|
stepSize: 1
|
|
text: i18n("Messages queue limit")
|
|
value: plasmoid.configuration.queueLimit
|
|
}
|
|
|
|
ComboBoxSelector {
|
|
id: tempUnits
|
|
model: [
|
|
{
|
|
'label': i18n("Celsius"),
|
|
'name': "Celsius"
|
|
},
|
|
{
|
|
'label': i18n("Fahrenheit"),
|
|
'name': "Fahrenheit"
|
|
},
|
|
{
|
|
'label': i18n("Kelvin"),
|
|
'name': "Kelvin"
|
|
},
|
|
{
|
|
'label': i18n("Reaumur"),
|
|
'name': "Reaumur"
|
|
},
|
|
{
|
|
'label': i18n("cm^-1"),
|
|
'name': "cm^-1"
|
|
},
|
|
{
|
|
'label': i18n("kJ/mol"),
|
|
'name': "kJ/mol"
|
|
},
|
|
{
|
|
'label': i18n("kcal/mol"),
|
|
'name': "kcal/mol"
|
|
}
|
|
]
|
|
text: i18n("Temperature units")
|
|
value: plasmoid.configuration.tempUnits
|
|
onValueEdited: newValue => cfg_tempUnits = newValue
|
|
}
|
|
|
|
LineSelector {
|
|
id: customTime
|
|
text: i18n("Custom time format")
|
|
value: plasmoid.configuration.customTime
|
|
}
|
|
|
|
LineSelector {
|
|
id: customUptime
|
|
text: i18n("Custom uptime format")
|
|
value: plasmoid.configuration.customUptime
|
|
}
|
|
|
|
LineSelector {
|
|
id: acOnline
|
|
text: i18n("AC online tag")
|
|
value: plasmoid.configuration.acOnline
|
|
}
|
|
|
|
LineSelector {
|
|
id: acOffline
|
|
text: i18n("AC offline tag")
|
|
value: plasmoid.configuration.acOffline
|
|
}
|
|
|
|
GroupBox {
|
|
width: parent.width
|
|
height: implicitHeight
|
|
title: i18n("Actions")
|
|
|
|
Column {
|
|
height: implicitHeight
|
|
width: parent.width
|
|
|
|
ButtonSelector {
|
|
value: i18n("Drop key cache")
|
|
onButtonActivated: awActions.dropCache()
|
|
}
|
|
|
|
ButtonSelector {
|
|
ExportDialog {
|
|
id: saveConfigAs
|
|
configuration: plasmoid.configuration
|
|
}
|
|
value: i18n("Export configuration")
|
|
onButtonActivated: saveConfigAs.open()
|
|
}
|
|
|
|
ButtonSelector {
|
|
ImportDialog {
|
|
id: loadConfigFrom
|
|
onConfigurationReceived: {
|
|
for (const key in configuration)
|
|
plasmoid.configuration[key] = configuration[key]
|
|
}
|
|
}
|
|
value: i18n("Import configuration")
|
|
onButtonActivated: loadConfigFrom.open()
|
|
}
|
|
}
|
|
}
|
|
|
|
GroupBox {
|
|
height: implicitHeight
|
|
width: parent.width
|
|
title: i18n("Telemetry")
|
|
|
|
Column {
|
|
height: implicitHeight
|
|
width: parent.width
|
|
|
|
CheckBoxSelector {
|
|
id: telemetryRemote
|
|
text: i18n("Enable remote telemetry")
|
|
}
|
|
|
|
IntegerSelector {
|
|
id: telemetryCount
|
|
maximumValue: 10000
|
|
minimumValue: 0
|
|
stepSize: 50
|
|
text: i18n("History count")
|
|
value: plasmoid.configuration.telemetryCount
|
|
}
|
|
|
|
LineSelector {
|
|
id: telemetryId
|
|
text: i18n("Telemetry ID")
|
|
value: plasmoid.configuration.telemetryId
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|