From 3259133a20921e14d7e6e1ebe6d2644d2987da8b Mon Sep 17 00:00:00 2001 From: Roger Gonzalez Date: Mon, 30 Dec 2019 15:52:33 -0300 Subject: Added sddm themes --- .../sugar-light/Components/SystemButtons.qml | 118 +++++++++++++++++++++ 1 file changed, 118 insertions(+) create mode 100644 .sddm/themes/sugar-light/Components/SystemButtons.qml (limited to '.sddm/themes/sugar-light/Components/SystemButtons.qml') diff --git a/.sddm/themes/sugar-light/Components/SystemButtons.qml b/.sddm/themes/sugar-light/Components/SystemButtons.qml new file mode 100644 index 00000000..f066a317 --- /dev/null +++ b/.sddm/themes/sugar-light/Components/SystemButtons.qml @@ -0,0 +1,118 @@ +// +// This file is part of Sugar Light, a theme for the Simple Display Desktop Manager. +// +// Copyright 2018 Marian Arlt +// +// Sugar Light 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. +// +// Sugar Light 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 Sugar Light. If not, see . +// + +import QtQuick 2.11 +import QtQuick.Layouts 1.11 +import QtQuick.Controls 2.4 + +RowLayout { + + spacing: root.font.pointSize + + property var suspend: ["Suspend", config.TranslateSuspend || textConstants.suspend, sddm.canSuspend] + property var reboot: ["Reboot", config.TranslateReboot || textConstants.reboot, sddm.canReboot] + property var shutdown: ["Shutdown", config.TranslateShutdown || textConstants.shutdown, sddm.canPowerOff] + + property Control exposedLogin + + Repeater { + + model: [suspend, reboot, shutdown] + + RoundButton { + enabled: modelData[2] + text: modelData[1] + font.pointSize: root.font.pointSize * 0.8 + Layout.alignment: Qt.AlignHCenter + icon.source: modelData ? Qt.resolvedUrl("../Assets/" + modelData[0] + ".svgz") : "" + icon.height: 2 * Math.round((root.font.pointSize * 3) / 2) + icon.width: 2 * Math.round((root.font.pointSize * 3) / 2) + display: AbstractButton.TextUnderIcon + opacity: modelData[2] ? 1 : 0.3 + hoverEnabled: true + palette.buttonText: root.palette.text + background: Rectangle { + height: 2 + color: "transparent" + width: parent.width + border.width: parent.visualFocus ? 1 : 0 + border.color: "transparent" + anchors.top: parent.bottom + } + Keys.onReturnPressed: clicked() + onClicked: { + parent.forceActiveFocus() + index == 0 ? sddm.suspend() : index == 1 ? sddm.reboot() : sddm.powerOff() + } + KeyNavigation.up: exposedLogin + KeyNavigation.left: index == 0 ? exposedLogin : parent.children[index-1] + + states: [ + State { + name: "pressed" + when: parent.children[index].down + PropertyChanges { + target: parent.children[index] + palette.buttonText: Qt.lighter("red", 1.1) + } + PropertyChanges { + target: parent.children[index].background + border.color: Qt.lighter("red", 1.3) + } + }, + State { + name: "hovered" + when: parent.children[index].hovered + PropertyChanges { + target: parent.children[index] + palette.buttonText: Qt.lighter("red", 1.5) + } + PropertyChanges { + target: parent.children[index].background + border.color: Qt.lighter("red", 1.7) + } + }, + State { + name: "focused" + when: parent.children[index].visualFocus + PropertyChanges { + target: parent.children[index] + palette.buttonText: Qt.lighter("red", 1.3) + } + PropertyChanges { + target: parent.children[index].background + border.color: Qt.lighter("red", 1.5) + } + } + ] + + transitions: [ + Transition { + PropertyAnimation { + properties: "palette.buttonText, border.color" + duration: 150 + } + } + ] + + } + + } + +} -- cgit v1.2.3