summaryrefslogtreecommitdiff
path: root/raveos-sddm-theme/sddm-rave-theme/Components/Clock.qml
diff options
context:
space:
mode:
Diffstat (limited to 'raveos-sddm-theme/sddm-rave-theme/Components/Clock.qml')
-rw-r--r--raveos-sddm-theme/sddm-rave-theme/Components/Clock.qml81
1 files changed, 81 insertions, 0 deletions
diff --git a/raveos-sddm-theme/sddm-rave-theme/Components/Clock.qml b/raveos-sddm-theme/sddm-rave-theme/Components/Clock.qml
new file mode 100644
index 0000000..e9d1399
--- /dev/null
+++ b/raveos-sddm-theme/sddm-rave-theme/Components/Clock.qml
@@ -0,0 +1,81 @@
+// Config created by Keyitdev https://git.rp1.hu/gabeszm/sddm-rave-theme
+// Copyright (C) 2022-2025 Keyitdev
+// Based on https://github.com/MarianArlt/sddm-sugar-dark
+// Distributed under the GPLv3+ License https://www.gnu.org/licenses/gpl-3.0.html
+
+import QtQuick 2.15
+import QtQuick.Controls 2.15
+
+Column {
+ id: clock
+
+ width: parent.width / 2
+ spacing: 8
+
+ Image {
+ id: logoImage
+
+ anchors.horizontalCenter: parent.horizontalCenter
+ source: (config.Logo && config.Logo !== "") ? Qt.resolvedUrl("../" + config.Logo) : ""
+ fillMode: Image.PreserveAspectFit
+ width: root.font.pointSize * 13
+ height: root.font.pointSize * 13
+ visible: config.Logo && config.Logo !== ""
+ }
+
+ Label {
+ id:headerTextLabel
+
+ anchors.horizontalCenter: parent.horizontalCenter
+
+ font.pointSize: root.font.pointSize * 2
+ color: config.HeaderTextColor
+ renderType: Text.QtRendering
+ text: config.HeaderText
+ }
+
+ Label {
+ id: timeLabel
+
+ anchors.horizontalCenter: parent.horizontalCenter
+
+ font.pointSize: root.font.pointSize * 3.5
+ font.bold: true
+ color: config.TimeTextColor
+ renderType: Text.QtRendering
+
+ function updateTime() {
+ text = new Date().toLocaleTimeString(Qt.locale(config.Locale), config.HourFormat == "long" ? Locale.LongFormat : config.HourFormat !== "" ? config.HourFormat : Locale.ShortFormat)
+ }
+ }
+
+ Label {
+ id: dateLabel
+
+ anchors.horizontalCenter: parent.horizontalCenter
+
+ color: config.DateTextColor
+ font.pointSize: root.font.pointSize * 0.95
+ font.bold: true
+ renderType: Text.QtRendering
+
+ function updateTime() {
+ text = new Date().toLocaleDateString(Qt.locale(config.Locale), config.DateFormat == "short" ? Locale.ShortFormat : config.DateFormat !== "" ? config.DateFormat : Locale.LongFormat)
+ }
+ }
+
+ Timer {
+ interval: 1000
+ repeat: true
+ running: true
+ onTriggered: {
+ dateLabel.updateTime()
+ timeLabel.updateTime()
+ }
+ }
+
+ Component.onCompleted: {
+ dateLabel.updateTime()
+ timeLabel.updateTime()
+ }
+}