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