Warning, /libraries/kcgroups/tests/main.qml is written in an unsupported language. File is not indexed.

0001 // SPDX-FileCopyrightText: 2020 Henri Chain <henri.chain@enioka.com>
0002 // SPDX-FileCopyrightText: 2020 Kevin Ottens <kevin.ottens@enioka.com>
0003 //
0004 // SPDX-License-Identifier: LGPL-2.1-or-later
0005 
0006 import QtQuick 2.0
0007 import QtQuick.Controls 2.0
0008 
0009 ListView {
0010     width: parent && parent.width > 1000 ? parent.width : 1000
0011     height: parent && parent.height > 600 ? parent.height : 600
0012     model: appList
0013     delegate: Rectangle {
0014         id: rect
0015         anchors.left: parent.left
0016         anchors.right: parent.right
0017         height: 60
0018         color: index % 2 ? "lightblue": "lightgreen"
0019 
0020         Text {
0021             id: indexText
0022             anchors.left: rect.left
0023             anchors.verticalCenter: rect.verticalCenter
0024             anchors.leftMargin: 10
0025             text: index
0026             width: 50
0027         }
0028 
0029         CheckBox {
0030             id: quotaCheckBox
0031             anchors.left: indexText.right
0032             anchors.verticalCenter: rect.verticalCenter
0033             checked: object.cpuQuota.hasValue
0034             onToggled: object.cpuQuota.value = checked ? quotaSlider.value : undefined
0035         }
0036 
0037         Slider {
0038             id: quotaSlider
0039             anchors.left: quotaCheckBox.right
0040             anchors.verticalCenter: rect.verticalCenter
0041             width: 200
0042             anchors.leftMargin: 10
0043             from: 0
0044             to: 1000000
0045             value: object.cpuQuota.hasValue ? object.cpuQuota.value : 1000000
0046             onMoved: object.cpuQuota.value = value
0047             enabled: object.cpuQuota.hasValue
0048         }
0049 
0050         Text {
0051             id: quotaText
0052             anchors.left: quotaSlider.right
0053             anchors.verticalCenter: rect.verticalCenter
0054             text: object.cpuQuota.hasValue ? `${Math.round(object.cpuQuota.value/10000)}%` : "no quota"
0055             horizontalAlignment: Text.AlignRight
0056             width: 70
0057         }
0058 
0059         Button {
0060             id: killButton
0061             anchors.left: quotaText.right
0062             anchors.verticalCenter: rect.verticalCenter
0063             anchors.leftMargin: 20
0064             onClicked: object.stop()
0065             text: "stop"
0066             width: 50
0067         }
0068 
0069         Text {
0070             id: displayText
0071             anchors.left: killButton.right
0072             anchors.top: rect.top
0073             anchors.topMargin: 10
0074             anchors.leftMargin: 20
0075             text: display
0076         }
0077 
0078         Text {
0079             id: desktopNameText
0080             anchors.left: killButton.right
0081             anchors.bottom: rect.bottom
0082             anchors.bottomMargin: 10
0083             anchors.leftMargin: 20
0084             text: object.desktopName
0085             horizontalAlignment: Text.AlignRight
0086         }
0087 
0088         Text {
0089             id: instanceText
0090             anchors.left: displayText.right
0091             anchors.right: rect.right
0092             anchors.bottom: rect.bottom
0093             anchors.bottomMargin: 10
0094             anchors.rightMargin: 20
0095             text: object.instance
0096             horizontalAlignment: Text.AlignRight
0097             font.family: "monospace"
0098         }
0099     }
0100 }