diff options
author | Lorn Potter <lorn.potter@gmail.com> | 2023-10-11 09:41:11 +1000 |
---|---|---|
committer | Lorn Potter <lorn.potter@gmail.com> | 2023-12-21 14:04:57 +1000 |
commit | 5af9c3d0e7e244009ffb4195ebcffb32101d8f04 (patch) | |
tree | 225791ebac1c118677c33e087a5ec78cad847c01 /src/plugins/platforms/wasm/qwasmdom.h | |
parent | c3a2b9f35a9a12ff3c6f5f0d11844de161b47c2a (diff) |
wasm: move DataTransfer to dom::
Change-Id: I069292154bafd1c08a0d0f2e8a62052f596a80f3
Done-with: Mikolaj.Boc@qt.io
Reviewed-by: Lorn Potter <lorn.potter@gmail.com>
Diffstat (limited to 'src/plugins/platforms/wasm/qwasmdom.h')
-rw-r--r-- | src/plugins/platforms/wasm/qwasmdom.h | 28 |
1 files changed, 28 insertions, 0 deletions
diff --git a/src/plugins/platforms/wasm/qwasmdom.h b/src/plugins/platforms/wasm/qwasmdom.h index 853e54540e..3ccafba534 100644 --- a/src/plugins/platforms/wasm/qwasmdom.h +++ b/src/plugins/platforms/wasm/qwasmdom.h @@ -6,6 +6,8 @@ #include <QtCore/qtconfigmacros.h> #include <QtCore/QPointF> +#include <private/qstdweb_p.h> +#include <QtCore/qnamespace.h> #include <emscripten/val.h> @@ -15,10 +17,36 @@ QT_BEGIN_NAMESPACE +namespace qstdweb { + struct CancellationFlag; +} + +class QMimeData; class QPoint; class QRect; namespace dom { +struct DataTransfer +{ + explicit DataTransfer(emscripten::val webDataTransfer); + ~DataTransfer(); + DataTransfer(const DataTransfer &other); + DataTransfer(DataTransfer &&other); + DataTransfer &operator=(const DataTransfer &other); + DataTransfer &operator=(DataTransfer &&other); + + QMimeData *toMimeDataWithFile() ; + QMimeData *toMimeDataPreview(); + void setDragImage(emscripten::val element, const QPoint &hotspot); + void setData(std::string format, std::string data); + void setDropAction(Qt::DropAction dropAction); + void setDataFromMimeData(const QMimeData &mimeData); + + emscripten::val webDataTransfer; + emscripten::val m_webFile = emscripten::val::undefined(); + qstdweb::File m_file; +}; + inline emscripten::val document() { return emscripten::val::global("document"); |