headsetcontrol-battery-widget/package/contents/ui/main.qml

35 lines
1.0 KiB
QML
Raw Normal View History

2024-01-21 18:54:24 +00:00
import QtQuick 2.15
2024-01-17 19:06:16 +00:00
import QtQuick.Layouts 1.3
import org.kde.plasma.plasmoid 2.0
import org.kde.plasma.core 2.0 as PlasmaCore
2024-01-19 18:45:11 +00:00
import org.kde.kirigami 2.14 as Kirigami
2024-01-17 19:06:16 +00:00
2024-01-20 02:03:58 +00:00
import "./lib/helper.js" as Helper
2024-01-17 19:06:16 +00:00
Item {
id: main
2024-01-19 00:54:33 +00:00
property int pollingrate: Plasmoid.configuration.pollingrate
2024-01-20 10:36:02 +00:00
property int batteryheight: Plasmoid.configuration.batteryheight
2024-01-20 12:16:48 +00:00
property string colorEmpty: Plasmoid.configuration.colorEmpty
2024-01-20 14:16:18 +00:00
property string colorHalf: Plasmoid.configuration.colorHalf
2024-01-20 12:16:48 +00:00
property string colorFull: Plasmoid.configuration.colorFull
2024-01-17 19:06:16 +00:00
property int batteryPercent: -2
PlasmaCore.DataSource {
id: hsSource
engine: "executable"
connectedSources: ["headsetcontrol -bc"]
2024-01-19 00:54:33 +00:00
interval: pollingrate * 1e3
2024-01-17 19:06:16 +00:00
onNewData: {
2024-01-20 03:49:58 +00:00
return batteryPercent = data['exit code'] > 0
? -2 // not connected
: data['stdout'];
2024-01-17 19:06:16 +00:00
}
}
Plasmoid.preferredRepresentation: Plasmoid.compactRepresentation
2024-01-21 18:54:24 +00:00
Plasmoid.fullRepresentation: FullRepresentation{}
Plasmoid.compactRepresentation: CompactRepresentation{}
2024-01-17 19:06:16 +00:00
}