30 QBlittablePlatformPixmap();
31 ~QBlittablePlatformPixmap();
33 virtual QBlittable *createBlittable(
const QSize &size,
bool alpha)
const = 0;
34 QBlittable *blittable()
const;
35 void setBlittable(QBlittable *blittable);
37 void resize(
int width,
int height) override;
38 int metric(QPaintDevice::PaintDeviceMetric metric)
const override;
39 void fill(
const QColor &color) override;
40 QImage *buffer() override;
41 QImage toImage()
const override;
42 bool hasAlphaChannel()
const override;
43 void fromImage(
const QImage &image, Qt::ImageConversionFlags flags) override;
44 qreal devicePixelRatio()
const override;
45 void setDevicePixelRatio(qreal scaleFactor) override;
47 QPaintEngine *paintEngine()
const override;
49 void markRasterOverlay(
const QRectF &);
50 void markRasterOverlay(
const QPointF &,
const QTextItem &);
51 void markRasterOverlay(
const QVectorPath &);
52 void markRasterOverlay(
const QPainterPath &);
53 void markRasterOverlay(
const QRect *rects,
int rectCount);
54 void markRasterOverlay(
const QRectF *rects,
int rectCount);
55 void markRasterOverlay(
const QPointF *points,
int pointCount);
56 void markRasterOverlay(
const QPoint *points,
int pointCount);
57 void unmarkRasterOverlay(
const QRectF &);
59#ifdef QT_BLITTER_RASTEROVERLAY
61 void unmergeOverlay();
66 QScopedPointer<QBlitterPaintEngine> m_engine;
67 QScopedPointer<QBlittable> m_blittable;
69 qreal m_devicePixelRatio;
71#ifdef QT_BLITTER_RASTEROVERLAY
72 QImage *m_rasterOverlay;
73 QImage *m_unmergedCopy;
74 QColor m_overlayColor;
76 void markRasterOverlayImpl(
const QRectF &);
77 void unmarkRasterOverlayImpl(
const QRectF &);
78 QRectF clipAndTransformRect(
const QRectF &)
const;