import QtQuick 2.12 import QtQuick.Controls 2.12 import QtQuick.Layouts 1.14 ApplicationWindow { id: window flags: Qt.WindowStaysOnTopHint | Qt.Tool | Qt.FramelessWindowHint visible: true modality: Qt.ApplicationModal property var pointer property var plugin property var callbackId property var title property var msg property var okLabel property var cancelLabel onTitleChanged: { dialog.title = title } onMsgChanged: { content.text = msg } onOkLabelChanged: { dialog.standardButton(Dialog.Ok).text = qsTrId(okLabel) } onCancelLabelChanged: { dialog.standardButton(Dialog.Cancel).text = qsTrId(cancelLabel) } Dialog { id: dialog standardButtons: Dialog.Ok | Dialog.Cancel modal: true contentItem: ColumnLayout { Text { id: content } TextArea { id: input Layout.fillWidth: true } } onAccepted: { dialogBridge.onAcceptedWithInput(pointer, plugin, callbackId, input.text) } onRejected: { dialogBridge.onRejectedWithInput(pointer, plugin, callbackId, input.text) } onWidthChanged: { window.width = implicitWidth } onHeightChanged: { window.height = implicitHeight } } Component.onCompleted: { dialog.open() } }