This repository has been archived on 2026-05-31. You can view files and clone it, but cannot push or open issues or pull requests.
powersync-app/nymea-app/ui/components/RemoveDeviceMethodDialog.qml
2018-07-02 23:04:49 +02:00

69 lines
1.9 KiB
QML

import QtQuick 2.9
import QtQuick.Controls 2.2
import QtQuick.Layouts 1.3
import Nymea 1.0
Dialog {
id: root
width: Math.min(parent.width * .8, contentLabel.implicitWidth + app.margins * 2)
x: (parent.width - width) / 2
y: (parent.height - height) / 2
modal: true
property var device: null
property var rulesList: null
ColumnLayout {
width: parent.width
Label {
id: contentLabel
text: qsTr("This thing is currently used in one or more rules:")
Layout.fillWidth: true
wrapMode: Text.WordWrap
}
ThinDivider {}
ListView {
Layout.fillWidth: true
Layout.preferredHeight: app.iconSize * Math.min(count, 5)
model: rulesList
interactive: contentHeight > height
delegate: Label {
height: app.iconSize
width: parent.width
elide: Text.ElideRight
text: Engine.ruleManager.rules.getRule(modelData).name
verticalAlignment: Text.AlignVCenter
}
}
ThinDivider {}
Button {
text: qsTr("Remove all those rules")
Layout.fillWidth: true
onClicked: {
Engine.deviceManager.removeDevice(root.device.id, DeviceManager.RemovePolicyCascade)
root.close()
root.destroy();
}
}
Button {
text: qsTr("Update rules, removing this thing")
Layout.fillWidth: true
onClicked: {
Engine.deviceManager.removeDevice(root.device.id, DeviceManager.RemovePolicyUpdate)
root.close()
root.destroy();
}
}
Button {
text: qsTr("Don't remove this thing")
Layout.fillWidth: true
onClicked: {
root.close()
root.destroy();
}
}
}
}