blob: 0a520815a3c41f200c6ab00a652adddc5c56aaf2 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
|
// Copyright (C) 2022 The Qt Company Ltd.
// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
#ifndef QWASMDOM_H
#define QWASMDOM_H
#include <QtCore/qtconfigmacros.h>
#include <QtCore/QPointF>
#include <private/qstdweb_p.h>
#include <QtCore/qnamespace.h>
#include <emscripten/val.h>
#include <functional>
#include <memory>
#include <string>
#include <QMimeData>
QT_BEGIN_NAMESPACE
namespace qstdweb {
struct CancellationFlag;
}
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);
void toMimeDataWithFile(std::function<void(QMimeData *)> callback);
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;
};
inline emscripten::val document()
{
return emscripten::val::global("document");
}
void syncCSSClassWith(emscripten::val element, std::string cssClassName, bool flag);
QPointF mapPoint(emscripten::val source, emscripten::val target, const QPointF &point);
void drawImageToWebImageDataArray(const QImage &source, emscripten::val destinationImageData,
const QRect &sourceRect);
} // namespace dom
QT_END_NAMESPACE
#endif // QWASMDOM_H
|