4#ifndef QQUICKCONTEXT2DTEXTURE_P_H
5#define QQUICKCONTEXT2DTEXTURE_P_H
18#include <private/qtquickglobal_p.h>
22#include <QtQuick/qsgtexture.h>
25#include <QtCore/QMutex>
26#include <QtCore/QWaitCondition>
27#include <QtCore/QThread>
73 static QRect tiledRect(
const QRectF& window,
const QSize& tileSize);
87 bool event(QEvent *e)
override;
97 virtual void grabImage(
const QRectF& region = QRectF()) = 0;
136class QSGPlainTexture;
159 QImage m_displayImage;
QQuickCanvasContext * rawContext() const
QQuickContext2DTile * createTile() const override
~QQuickContext2DImageTexture()
void endPainting() override
QQuickCanvasItem::RenderTarget renderTarget() const override
void compositeTile(QQuickContext2DTile *tile) override
QPaintDevice * beginPainting() override
QSGTexture * textureForNextFrame(QSGTexture *lastFrame, QQuickWindow *window) override
QQuickContext2DImageTile()
CanvasChangeEvent(const QSize &cSize, const QSize &tSize, const QRect &cWindow, const QRect &dRect, bool sm, bool aa)
bool event(QEvent *e) override
This virtual function receives events to an object and should return true if the event e was recogniz...
void setItem(QQuickCanvasItem *item)
void setOnCustomThread(bool is)
virtual void compositeTile(QQuickContext2DTile *tile)=0
bool isOnCustomThread() const
bool setCanvasWindow(const QRect &canvasWindow)
virtual QVector2D scaleFactor() const
QRect createTiles(const QRect &window)
virtual QQuickContext2DTile * createTile() const =0
virtual void grabImage(const QRectF ®ion=QRectF())=0
~QQuickContext2DTexture()
void paint(QQuickContext2DCommandBuffer *ccb)
QQuickContext2D::State m_state
virtual QSize adjustedTileSize(const QSize &ts)
virtual void endPainting()
bool setCanvasSize(const QSize &size)
bool setTileSize(const QSize &size)
QWaitCondition m_condition
static QRect tiledRect(const QRectF &window, const QSize &tileSize)
void setSmooth(bool smooth)
qreal m_canvasDevicePixelRatio
uint m_canvasWindowChanged
virtual QSGTexture * textureForNextFrame(QSGTexture *lastFrame, QQuickWindow *window)=0
void paintWithoutTiles(QQuickContext2DCommandBuffer *ccb)
void setAntialiasing(bool antialiasing)
bool setDirtyRect(const QRect &dirtyRect)
QList< QQuickContext2DTile * > m_tiles
QQuickContext2D * m_context
virtual QPaintDevice * beginPainting()
QQuickCanvasItem * m_item
virtual QQuickCanvasItem::RenderTarget renderTarget() const =0
Combined button and popup list for selecting options.
QT_REQUIRE_CONFIG(quick_canvas)