Warning, /plasma/plasma-systemmonitor/src/page/FaceControl.qml is written in an unsupported language. File is not indexed.
0001 /* 0002 * SPDX-FileCopyrightText: 2020 Arjen Hiemstra <ahiemstra@heimr.nl> 0003 * 0004 * SPDX-License-Identifier: LGPL-2.1-only OR LGPL-3.0-only OR LicenseRef-KDE-Accepted-LGPL 0005 */ 0006 0007 import QtQuick 0008 import QtQuick.Controls 0009 import QtQuick.Layouts 0010 0011 import org.kde.ksysguard.sensors as Sensors 0012 import org.kde.ksysguard.faces as Faces 0013 import org.kde.ksysguard.page 0014 0015 Container { 0016 id: control 0017 0018 property alias dataObject: loader.dataObject 0019 0020 function replaceSensors(replacement) { 0021 let changed = false 0022 0023 for (let entry of replacement) { 0024 if (entry.face != dataObject.face) { 0025 continue 0026 } 0027 0028 loader.controller.replaceSensors(entry.sensor, entry.replacement) 0029 changed = true 0030 } 0031 0032 if (changed) { 0033 loader.controller.reloadConfig() 0034 } 0035 } 0036 0037 topPadding: 0 0038 bottomPadding: 0 0039 leftPadding: 0 0040 rightPadding: 0 0041 0042 minimumContentHeight: contentItem ? contentItem.Layout.minimumHeight : 0 0043 minimumHeight: minimumContentHeight + topPadding + bottomPadding 0044 0045 toolbar.visible: false 0046 0047 onActiveChanged: { 0048 if (active) { 0049 applicationWindow().pageStack.push(Qt.resolvedUrl("FaceConfigurationPage.qml"), {"loader": loader}) 0050 } else { 0051 if (activeItem instanceof FaceControl) { 0052 return 0053 } else { 0054 if (applicationWindow().pageStack.depth > 1) { 0055 applicationWindow().pageStack.pop() 0056 } 0057 } 0058 } 0059 } 0060 0061 FaceLoader { 0062 id: loader 0063 } 0064 0065 MouseArea { 0066 anchors.fill: parent 0067 z: 99 0068 onClicked: control.select(control) 0069 } 0070 0071 Component.onCompleted: updateContentItem() 0072 0073 Connections { 0074 target: loader.controller 0075 function onFaceIdChanged() { 0076 control.updateContentItem() 0077 } 0078 0079 function onMissingSensorsChanged() { 0080 control.missingSensorsChanged(dataObject.face, controller.title, loader.controller.missingSensors) 0081 } 0082 } 0083 0084 function updateContentItem() { 0085 loader.controller.fullRepresentation.formFactor = Faces.SensorFace.Constrained; 0086 control.contentItem = loader.controller.fullRepresentation; 0087 0088 if (loader.controller.missingSensors.length > 0) { 0089 control.missingSensorsChanged(dataObject.face, loader.controller.title, loader.controller.missingSensors) 0090 } 0091 } 0092 }