Warning, /system/kup/plasmoid/contents/ui/main.qml is written in an unsupported language. File is not indexed.
0001 // SPDX-FileCopyrightText: 2020 Simon Persson <simon.persson@mykolab.com> 0002 // 0003 // SPDX-License-Identifier: GPL-3.0-only OR LicenseRef-KDE-Accepted-GPL 0004 0005 import QtQuick 2.0 0006 import org.kde.plasma.plasmoid 2.0 0007 import org.kde.plasma.core 2.0 as PlasmaCore 0008 import org.kde.plasma.plasma5support as Plasma5Support 0009 import org.kde.kquickcontrolsaddons 2.0 as KQCAddons 0010 import org.kde.kirigami 2.15 as Kirigami 0011 0012 PlasmoidItem { 0013 readonly property bool inPanel: (Plasmoid.location === PlasmaCore.Types.TopEdge 0014 || Plasmoid.location === PlasmaCore.Types.RightEdge 0015 || Plasmoid.location === PlasmaCore.Types.BottomEdge 0016 || Plasmoid.location === PlasmaCore.Types.LeftEdge) 0017 0018 function symbolicizeIconName(iconName) { 0019 const symbolicSuffix = "-symbolic"; 0020 if (iconName.endsWith(symbolicSuffix)) { 0021 return iconName; 0022 } 0023 return iconName + symbolicSuffix; 0024 } 0025 0026 switchWidth: Kirigami.Units.gridUnit * 10 0027 switchHeight: Kirigami.Units.gridUnit * 10 0028 toolTipMainText: getCommonStatus("tooltip title", "Error") 0029 toolTipSubText: getCommonStatus("tooltip subtitle", "No connection") 0030 0031 Plasmoid.icon: inPanel 0032 ? symbolicizeIconName( getCommonStatus("tooltip icon name", "kup")) 0033 : getCommonStatus("tooltip icon name", "kup") 0034 0035 Plasmoid.status: getCommonStatus("tray icon active", false) 0036 ? PlasmaCore.Types.ActiveStatus 0037 : PlasmaCore.Types.PassiveStatus 0038 0039 Plasma5Support.DataSource { 0040 id: backupPlans 0041 engine: "backups" 0042 connectedSources: sources 0043 0044 onSourceAdded: { 0045 disconnectSource(source); 0046 connectSource(source); 0047 } 0048 onSourceRemoved: { 0049 disconnectSource(source); 0050 } 0051 } 0052 0053 0054 function getCommonStatus(key, def){ 0055 var result = backupPlans.data["common"][key]; 0056 if(result === undefined) { 0057 result = def; 0058 } 0059 return result; 0060 } 0061 0062 function action_configure() { 0063 KQCAddons.KCMShell.openSystemSettings("kcm_kup"); 0064 } 0065 0066 function action_reloadKup() { 0067 var service = backupPlans.serviceForSource("daemon"); 0068 var operation = service.operationDescription("reload"); 0069 service.startOperationCall(operation); 0070 } 0071 0072 property int planCount: backupPlans.data["common"]["plan count"] 0073 0074 fullRepresentation: FullRepresentation {} 0075 0076 Component.onCompleted: { 0077 plasmoid.removeAction("configure"); 0078 plasmoid.setAction("configure", i18nd("kup", "&Configure Kup..."), "configure"); 0079 0080 plasmoid.setAction("reloadKup", i18nd("kup", "&Reload backup plans"), "view-refresh"); 0081 } 0082 }