summaryrefslogtreecommitdiffstats
path: root/components/Battery.qml
diff options
context:
space:
mode:
Diffstat (limited to 'components/Battery.qml')
-rw-r--r--components/Battery.qml56
1 files changed, 56 insertions, 0 deletions
diff --git a/components/Battery.qml b/components/Battery.qml
new file mode 100644
index 0000000..93796c6
--- /dev/null
+++ b/components/Battery.qml
@@ -0,0 +1,56 @@
+/*
+ * Copyright 2016 Kai Uwe Broulik <kde@privat.broulik.de>
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU Library General Public License as
+ * published by the Free Software Foundation; either version 2 or
+ * (at your option) any later version.
+ *
+ * This program 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 Library General Public
+ * License along with this program; if not, write to the
+ * Free Software Foundation, Inc.,
+ * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ */
+
+import QtQuick 2.2
+
+import org.kde.plasma.core 2.0 as PlasmaCore
+import org.kde.plasma.components 3.0 as PlasmaComponents3
+import org.kde.plasma.workspace.components 2.0 as PW
+
+Row {
+ id: row
+
+ property int fontSize: PlasmaCore.Theme.defaultFont.pointSize
+
+ spacing: PlasmaCore.Units.smallSpacing
+ visible: pmSource.data["Battery"]["Has Cumulative"]
+
+ PlasmaCore.DataSource {
+ id: pmSource
+ engine: "powermanagement"
+ connectedSources: ["Battery", "AC Adapter"]
+ }
+
+ PW.BatteryIcon {
+ id: battery
+ hasBattery: pmSource.data["Battery"]["Has Battery"] || false
+ percent: pmSource.data["Battery"]["Percent"] || 0
+ pluggedIn: pmSource.data["AC Adapter"] ? pmSource.data["AC Adapter"]["Plugged in"] : false
+
+ height: batteryLabel.height
+ width: height
+ }
+
+ PlasmaComponents3.Label {
+ id: batteryLabel
+ font.pointSize: row.fontSize
+ text: i18nd("plasma_lookandfeel_org.kde.lookandfeel","%1%", battery.percent)
+ Accessible.name: i18nd("plasma_lookandfeel_org.kde.lookandfeel","Battery at %1%", battery.percent)
+ }
+}