Warning, /plasma/plymouth-kcm/src/ui/main.qml is written in an unsupported language. File is not indexed.
0001 /* 0002 * SPDX-FileCopyrightText: 2017 Marco Martin <mart@kde.org> 0003 * 0004 * SPDX-License-Identifier: GPL-2.0-or-later 0005 * 0006 */ 0007 0008 import QtQuick 2.1 0009 import QtQuick.Layouts 1.1 0010 import QtQuick.Window 2.2 0011 import QtQuick.Controls 2.3 as QtControls 0012 import org.kde.kirigami 2.4 as Kirigami 0013 import org.kde.kcmutils as KCM 0014 import org.kde.newstuff 1.91 as NewStuff 0015 0016 KCM.GridViewKCM { 0017 actions: NewStuff.Action { 0018 id: newStuffButton 0019 text: i18nc("@action:button as in, get new Plymouth boot splash screens", "Get New…") 0020 enabled: !kcm.busy 0021 icon.name: "get-hot-new-stuff" 0022 configFile: "plymouth.knsrc" 0023 onEntryEvent: (entry, event) => kcm.onEntryEvent(entry); 0024 } 0025 0026 view.model: kcm.themesModel 0027 view.currentIndex: kcm.selectedPluginIndex 0028 view.enabled: !kcm.busy 0029 0030 view.delegate: KCM.GridDelegate { 0031 id: delegate 0032 0033 text: model.display 0034 toolTip: model.description 0035 0036 thumbnailAvailable: !!model.screenshot 0037 thumbnail: Image { 0038 anchors.fill: parent 0039 source: model.screenshot 0040 sourceSize: Qt.size(delegate.GridView.view.cellWidth * Screen.devicePixelRatio, 0041 delegate.GridView.view.cellHeight * Screen.devicePixelRatio) 0042 } 0043 0044 actions: [ 0045 Kirigami.Action { 0046 icon.name: "edit-delete" 0047 tooltip: i18n("Uninstall") 0048 enabled: model.uninstallable 0049 onTriggered: kcm.uninstall(model.pluginName) 0050 } 0051 ] 0052 onClicked: { 0053 kcm.selectedPlugin = model.pluginName; 0054 view.forceActiveFocus(); 0055 } 0056 onDoubleClicked: { 0057 kcm.save(); 0058 } 0059 } 0060 0061 footer: ColumnLayout { 0062 Kirigami.InlineMessage { 0063 id: infoLabel 0064 Layout.fillWidth: true 0065 showCloseButton: true 0066 } 0067 0068 QtControls.ProgressBar { 0069 id: progressBar 0070 Layout.fillWidth: true 0071 visible: kcm.busy 0072 indeterminate: true 0073 } 0074 } 0075 0076 Connections { 0077 target: kcm 0078 function onShowSuccessMessage() { 0079 infoLabel.type = Kirigami.MessageType.Positive; 0080 infoLabel.text = message; 0081 infoLabel.visible = true; 0082 } 0083 function onShowErrorMessage() { 0084 infoLabel.type = Kirigami.MessageType.Error; 0085 infoLabel.text = message; 0086 infoLabel.visible = true; 0087 } 0088 } 0089 }