25 QSGBasicInternalImageNode();
27 void setTargetRect(
const QRectF &rect) override;
28 void setInnerTargetRect(
const QRectF &rect) override;
29 void setInnerSourceRect(
const QRectF &rect) override;
30 void setSubSourceRect(
const QRectF &rect) override;
31 void setTexture(QSGTexture *texture) override;
32 void setAntialiasing(
bool antialiasing) override;
33 void setMirror(
bool mirrorHorizontally,
bool mirrorVertically) override;
34 void update() override;
35 void preprocess() override;
37 static QSGGeometry *updateGeometry(
const QRectF &targetRect,
38 const QRectF &innerTargetRect,
39 const QRectF &sourceRect,
40 const QRectF &innerSourceRect,
41 const QRectF &subSourceRect,
42 QSGGeometry *geometry,
43 bool mirrorHorizontally =
false,
44 bool mirrorVertically =
false,
45 bool antialiasing =
false);
48 virtual void updateMaterialAntialiasing() = 0;
49 virtual void setMaterialTexture(QSGTexture *texture) = 0;
50 virtual QSGTexture *materialTexture()
const = 0;
51 virtual bool updateMaterialBlending() = 0;
52 virtual bool supportsWrap(
const QSize &size)
const = 0;
54 void updateGeometry();
57 QRectF m_innerTargetRect;
58 QRectF m_innerSourceRect;
59 QRectF m_subSourceRect;
61 uint m_antialiasing : 1;
62 uint m_mirrorHorizontally : 1;
63 uint m_mirrorVertically : 1;
64 uint m_dirtyGeometry : 1;
66 QSGGeometry m_geometry;
68 QSGDynamicTexture *m_dynamicTexture;
69 QSize m_dynamicTextureSize;
70 QRectF m_dynamicTextureSubRect;