Qt
Internal/Contributor docs for the Qt SDK. <b>Note:</b> These are NOT official API docs; those are found <a href='https://doc.qt.io/'>here</a>.
|
#include <qwasmbackingstore.h>
Public Member Functions | |
QWasmBackingStore (QWasmCompositor *compositor, QWindow *window) | |
~QWasmBackingStore () | |
QPaintDevice * | paintDevice () override |
Implement this function to return the appropriate paint device. | |
void | beginPaint (const QRegion &) override |
This function is called before painting onto the surface begins, with the region in which the painting will occur. | |
void | flush (QWindow *window, const QRegion ®ion, const QPoint &offset) override |
Flushes the given region from the specified window. | |
void | resize (const QSize &size, const QRegion &staticContents) override |
QImage | toImage () const override |
Implemented in subclasses to return the content of the backingstore as a QImage. | |
const QImage & | getImageRef () const |
emscripten::val | getUpdatedWebImage (QWasmWindow *window) |
Public Member Functions inherited from QPlatformBackingStore | |
QPlatformBackingStore (QWindow *window) | |
Constructs an empty surface for the given top-level window. | |
virtual | ~QPlatformBackingStore () |
Destroys this surface. | |
QWindow * | window () const |
Returns a pointer to the top-level window associated with this surface. | |
QBackingStore * | backingStore () const |
Returns a pointer to the backing store associated with this surface. | |
virtual FlushResult | rhiFlush (QWindow *window, qreal sourceDevicePixelRatio, const QRegion ®ion, const QPoint &offset, QPlatformTextureList *textures, bool translucentBackground) |
Flushes the given region from the specified window, and compositing it with the specified textures list. | |
virtual QRhiTexture * | toTexture (QRhiResourceUpdateBatch *resourceUpdates, const QRegion &dirtyRegion, TextureFlags *flags) const |
May be reimplemented in subclasses to return the content of the backingstore as an QRhiTexture. | |
virtual QPlatformGraphicsBuffer * | graphicsBuffer () const |
Accessor for a backingstores graphics buffer abstraction. | |
virtual bool | scroll (const QRegion &area, int dx, int dy) |
Scrolls the given area dx pixels to the right and dy downward; both dx and dy may be negative. | |
virtual void | endPaint () |
This function is called after painting onto the surface has ended. | |
void | setRhiConfig (const QPlatformBackingStoreRhiConfig &config) |
QRhi * | rhi () const |
void | surfaceAboutToBeDestroyed () |
void | graphicsDeviceReportedLost () |
Protected Member Functions | |
void | updateTexture (QWasmWindow *window) |
Additional Inherited Members | |
Public Types inherited from QPlatformBackingStore | |
enum | FlushResult { FlushSuccess , FlushFailed , FlushFailedDueToLostDevice } |
enum | TextureFlag { TextureSwizzle = 0x01 , TextureFlip = 0x02 , TexturePremultiplied = 0x04 } |
Definition at line 19 of file qwasmbackingstore.h.
QT_BEGIN_NAMESPACE QWasmBackingStore::QWasmBackingStore | ( | QWasmCompositor * | compositor, |
QWindow * | window ) |
Definition at line 17 of file qwasmbackingstore.cpp.
References QWasmWindow::setBackingStore(), and QPlatformBackingStore::window().
QWasmBackingStore::~QWasmBackingStore | ( | ) |
Definition at line 25 of file qwasmbackingstore.cpp.
References QWasmIntegration::get(), QWasmWindow::setBackingStore(), and QPlatformBackingStore::window().
This function is called before painting onto the surface begins, with the region in which the painting will occur.
Reimplemented from QPlatformBackingStore.
Definition at line 85 of file qwasmbackingstore.cpp.
References QPlatformBackingStore::backingStore(), QPainter::CompositionMode_Source, QImage::devicePixelRatio(), QPainter::fillRect(), QImage::hasAlphaChannel(), painter, rect, resize(), QPainter::setCompositionMode(), Qt::transparent, and QPlatformBackingStore::window().
|
overridevirtual |
Flushes the given region from the specified window.
Unlike rhiFlush(), this function's default implementation does nothing. It is expected that subclasses provide a platform-specific (non-QRhi-based) implementation, if applicable on the given platform.
Reimplemented from QPlatformBackingStore.
Definition at line 39 of file qwasmbackingstore.cpp.
References QWasmCompositor::handleBackingStoreFlush(), Q_UNUSED, and QPlatformBackingStore::window().
const QImage & QWasmBackingStore::getImageRef | ( | ) | const |
Definition at line 119 of file qwasmbackingstore.cpp.
emscripten::val QWasmBackingStore::getUpdatedWebImage | ( | QWasmWindow * | window | ) |
Definition at line 124 of file qwasmbackingstore.cpp.
References updateTexture(), and QPlatformBackingStore::window().
Referenced by QWasmWindow::paint().
|
overridevirtual |
Implement this function to return the appropriate paint device.
Implements QPlatformBackingStore.
Definition at line 34 of file qwasmbackingstore.cpp.
|
overridevirtual |
Implements QPlatformBackingStore.
Definition at line 102 of file qwasmbackingstore.cpp.
References QPlatformWindow::devicePixelRatio(), QImage::Format_RGBA8888, Q_UNUSED, QImage::setDevicePixelRatio(), and QPlatformBackingStore::window().
Referenced by beginPaint().
|
overridevirtual |
Implemented in subclasses to return the content of the backingstore as a QImage.
If composition via a 3D graphics API is supported, either this function or toTexture() must be implemented.
The returned image is only valid until the next operation (resize, paint, scroll, or flush) on the backingstore. The caller must not store the return value between calls, but instead call this function before each use, or make an explicit copy.
Reimplemented from QPlatformBackingStore.
Definition at line 113 of file qwasmbackingstore.cpp.
|
protected |
Definition at line 49 of file qwasmbackingstore.cpp.
References QImage::devicePixelRatio(), deviceRect, dpr(), dom::drawImageToWebImageDataArray(), QImage::height(), QRegion::isNull(), QImage::rect(), rect, QRect::setX(), QImage::width(), and QPlatformBackingStore::window().
Referenced by getUpdatedWebImage().