This repository has been archived on 2024-07-22. You can view files and clone it, but cannot push or open issues or pull requests.
Doric/doric-Qt/example/doric/utils/DoricDialogBridge.cpp

69 lines
2.3 KiB
C++
Raw Permalink Normal View History

2021-04-22 13:42:38 +08:00
#include "DoricDialogBridge.h"
#include "plugin/DoricModalPlugin.h"
#include <QQuickWindow>
DoricDialogBridge::DoricDialogBridge(QObject *parent) : QObject(parent) {}
void DoricDialogBridge::onAccepted(QString windowPointer, QString pluginPointer,
QString callbackId) {
{
QObject *object = (QObject *)(windowPointer.toULongLong());
QQuickWindow *window = dynamic_cast<QQuickWindow *>(object);
window->deleteLater();
}
{
QObject *object = (QObject *)(pluginPointer.toULongLong());
DoricModalPlugin *modalPlugin = dynamic_cast<DoricModalPlugin *>(object);
modalPlugin->onAccepted(callbackId);
}
}
void DoricDialogBridge::onRejected(QString windowPointer, QString pluginPointer,
QString callbackId) {
{
QObject *object = (QObject *)(windowPointer.toULongLong());
QQuickWindow *window = dynamic_cast<QQuickWindow *>(object);
window->deleteLater();
}
{
QObject *object = (QObject *)(pluginPointer.toULongLong());
DoricModalPlugin *modalPlugin = dynamic_cast<DoricModalPlugin *>(object);
modalPlugin->onRejected(callbackId);
}
}
2021-04-22 14:48:16 +08:00
void DoricDialogBridge::onAcceptedWithInput(QString windowPointer,
QString pluginPointer,
QString callbackId, QString input) {
{
QObject *object = (QObject *)(windowPointer.toULongLong());
QQuickWindow *window = dynamic_cast<QQuickWindow *>(object);
window->deleteLater();
}
{
QObject *object = (QObject *)(pluginPointer.toULongLong());
DoricModalPlugin *modalPlugin = dynamic_cast<DoricModalPlugin *>(object);
modalPlugin->onAcceptedWithInput(callbackId, input);
}
}
void DoricDialogBridge::onRejectedWithInput(QString windowPointer,
QString pluginPointer,
QString callbackId, QString input) {
{
QObject *object = (QObject *)(windowPointer.toULongLong());
QQuickWindow *window = dynamic_cast<QQuickWindow *>(object);
window->deleteLater();
}
{
QObject *object = (QObject *)(pluginPointer.toULongLong());
DoricModalPlugin *modalPlugin = dynamic_cast<DoricModalPlugin *>(object);
modalPlugin->onRejectedWithInput(callbackId, input);
}
}