41 Q_DECLARE_PRIVATE(QPaintEngineEx)
45 virtual QPainterState *createState(QPainterState *orig)
const;
47 virtual void draw(
const QVectorPath &path);
48 virtual void fill(
const QVectorPath &path,
const QBrush &brush) = 0;
49 virtual void stroke(
const QVectorPath &path,
const QPen &pen);
51 virtual void clip(
const QVectorPath &path, Qt::ClipOperation op) = 0;
52 virtual void clip(
const QRect &rect, Qt::ClipOperation op);
53 virtual void clip(
const QRegion ®ion, Qt::ClipOperation op);
54 virtual void clip(
const QPainterPath &path, Qt::ClipOperation op);
56 virtual void clipEnabledChanged() = 0;
57 virtual void penChanged() = 0;
58 virtual void brushChanged() = 0;
59 virtual void brushOriginChanged() = 0;
60 virtual void opacityChanged() = 0;
61 virtual void compositionModeChanged() = 0;
62 virtual void renderHintsChanged() = 0;
63 virtual void transformChanged() = 0;
65 virtual void fillRect(
const QRectF &rect,
const QBrush &brush);
66 virtual void fillRect(
const QRectF &rect,
const QColor &color);
68 virtual void drawRoundedRect(
const QRectF &rect, qreal xrad, qreal yrad, Qt::SizeMode mode);
70 virtual void drawRects(
const QRect *rects,
int rectCount) override;
71 virtual void drawRects(
const QRectF *rects,
int rectCount) override;
73 virtual void drawLines(
const QLine *lines,
int lineCount) override;
74 virtual void drawLines(
const QLineF *lines,
int lineCount) override;
76 virtual void drawEllipse(
const QRectF &r) override;
77 virtual void drawEllipse(
const QRect &r) override;
79 virtual void drawPath(
const QPainterPath &path) override;
81 virtual void drawPoints(
const QPointF *points,
int pointCount) override;
82 virtual void drawPoints(
const QPoint *points,
int pointCount) override;
84 virtual void drawPolygon(
const QPointF *points,
int pointCount, PolygonDrawMode mode) override;
85 virtual void drawPolygon(
const QPoint *points,
int pointCount, PolygonDrawMode mode) override;
87 virtual void drawPixmap(
const QRectF &r,
const QPixmap &pm,
const QRectF &sr) override = 0;
88 virtual void drawPixmap(
const QPointF &pos,
const QPixmap &pm);
90 virtual void drawImage(
const QRectF &r,
const QImage &pm,
const QRectF &sr,
91 Qt::ImageConversionFlags flags = Qt::AutoColor) override = 0;
92 virtual void drawImage(
const QPointF &pos,
const QImage &image);
94 virtual void drawTiledPixmap(
const QRectF &r,
const QPixmap &pixmap,
const QPointF &s) override;
96 virtual void drawPixmapFragments(
const QPainter::PixmapFragment *fragments,
int fragmentCount,
const QPixmap &pixmap,
97 QFlags<QPainter::PixmapFragmentHint> hints);
99 virtual void updateState(
const QPaintEngineState &state) override;
101 virtual void drawStaticTextItem(QStaticTextItem *);
103 virtual void setState(QPainterState *s);
104 inline QPainterState *state() {
return static_cast<QPainterState *>(QPaintEngine::state); }
105 inline const QPainterState *state()
const {
return static_cast<
const QPainterState *>(QPaintEngine::state); }
107 virtual void sync() {}
109 virtual void beginNativePainting() {}
110 virtual void endNativePainting() {}
116 IsEmulationEngine = 0x02
118 virtual uint flags()
const {
return 0;}
119 virtual bool requiresPretransformedGlyphPositions(QFontEngine *fontEngine,
const QTransform &m)
const;
120 virtual bool shouldDrawCachedGlyphs(QFontEngine *fontEngine,
const QTransform &m)
const;
123 QPaintEngineEx(QPaintEngineExPrivate &data);