42 Q_DECLARE_PRIVATE(QPaintEngineEx)
46 virtual QPainterState *createState(QPainterState *orig)
const;
48 virtual void draw(
const QVectorPath &path);
49 virtual void fill(
const QVectorPath &path,
const QBrush &brush) = 0;
50 virtual void stroke(
const QVectorPath &path,
const QPen &pen);
52 virtual void clip(
const QVectorPath &path, Qt::ClipOperation op) = 0;
53 virtual void clip(
const QRect &rect, Qt::ClipOperation op);
54 virtual void clip(
const QRegion ®ion, Qt::ClipOperation op);
55 virtual void clip(
const QPainterPath &path, Qt::ClipOperation op);
57 virtual void clipEnabledChanged() = 0;
58 virtual void penChanged() = 0;
59 virtual void brushChanged() = 0;
60 virtual void brushOriginChanged() = 0;
61 virtual void opacityChanged() = 0;
62 virtual void compositionModeChanged() = 0;
63 virtual void renderHintsChanged() = 0;
64 virtual void transformChanged() = 0;
66 virtual void fillRect(
const QRectF &rect,
const QBrush &brush);
67 virtual void fillRect(
const QRectF &rect,
const QColor &color);
69 virtual void drawRoundedRect(
const QRectF &rect, qreal xrad, qreal yrad, Qt::SizeMode mode);
71 virtual void drawRects(
const QRect *rects,
int rectCount) override;
72 virtual void drawRects(
const QRectF *rects,
int rectCount) override;
74 virtual void drawLines(
const QLine *lines,
int lineCount) override;
75 virtual void drawLines(
const QLineF *lines,
int lineCount) override;
77 virtual void drawEllipse(
const QRectF &r) override;
78 virtual void drawEllipse(
const QRect &r) override;
80 virtual void drawPath(
const QPainterPath &path) override;
82 virtual void drawPoints(
const QPointF *points,
int pointCount) override;
83 virtual void drawPoints(
const QPoint *points,
int pointCount) override;
85 virtual void drawPolygon(
const QPointF *points,
int pointCount, PolygonDrawMode mode) override;
86 virtual void drawPolygon(
const QPoint *points,
int pointCount, PolygonDrawMode mode) override;
88 virtual void drawPixmap(
const QRectF &r,
const QPixmap &pm,
const QRectF &sr) override = 0;
89 virtual void drawPixmap(
const QPointF &pos,
const QPixmap &pm);
91 virtual void drawImage(
const QRectF &r,
const QImage &pm,
const QRectF &sr,
92 Qt::ImageConversionFlags flags = Qt::AutoColor) override = 0;
93 virtual void drawImage(
const QPointF &pos,
const QImage &image);
95 virtual void drawTiledPixmap(
const QRectF &r,
const QPixmap &pixmap,
const QPointF &s) override;
97 virtual void drawPixmapFragments(
const QPainter::PixmapFragment *fragments,
int fragmentCount,
const QPixmap &pixmap,
98 QFlags<QPainter::PixmapFragmentHint> hints);
100 virtual void updateState(
const QPaintEngineState &state) override;
102 virtual void drawStaticTextItem(QStaticTextItem *);
104 virtual void setState(QPainterState *s);
105 inline QPainterState *state() {
return static_cast<QPainterState *>(QPaintEngine::state); }
106 inline const QPainterState *state()
const {
return static_cast<
const QPainterState *>(QPaintEngine::state); }
108 virtual void sync() {}
110 virtual void beginNativePainting() {}
111 virtual void endNativePainting() {}
117 IsEmulationEngine = 0x02
119 virtual uint flags()
const {
return 0;}
120 virtual bool requiresPretransformedGlyphPositions(QFontEngine *fontEngine,
const QTransform &m)
const;
121 virtual bool shouldDrawCachedGlyphs(QFontEngine *fontEngine,
const QTransform &m)
const;
124 QPaintEngineEx(QPaintEngineExPrivate &data);