summaryrefslogtreecommitdiffstats
path: root/src/gui/image/qpixmap_blitter_p.h
diff options
context:
space:
mode:
authorHolger Hans Peter Freyther <holger@moiji-mobile.com>2012-01-01 22:12:34 +0100
committerQt by Nokia <qt-info@nokia.com>2012-01-02 10:44:00 +0100
commit6a1ee9667f42b98bd0a28d4beef8e15adbc241e1 (patch)
tree385bbfb078432db700e8a710824b36675125de51 /src/gui/image/qpixmap_blitter_p.h
parentca1921ffe99c95847b810317f9143e27a7cb0967 (diff)
blitter: Base QBlitterPaintEngine on QRasterPaintEngine
The original intention was to identify a clipping bug, it turns out that during a ::begin() (and systemChanged) we should forward the QPaintEnginePrivate state to our proxy engine. Instead of using the proxy-pattern subclass rasterengine and specialize the paths we are able to accelerate using the blitter interface. This will avoid similiar problems in the future. I have no performance measurement to show which of the two approaches is faster/slower. Change-Id: I39bff11b32b1fe20284c7e8df60050de5991bb6e Reviewed-by: Jørgen Lind <jorgen.lind@nokia.com>
Diffstat (limited to 'src/gui/image/qpixmap_blitter_p.h')
-rw-r--r--src/gui/image/qpixmap_blitter_p.h32
1 files changed, 32 insertions, 0 deletions
diff --git a/src/gui/image/qpixmap_blitter_p.h b/src/gui/image/qpixmap_blitter_p.h
index b0a9b7f848..50ac16889a 100644
--- a/src/gui/image/qpixmap_blitter_p.h
+++ b/src/gui/image/qpixmap_blitter_p.h
@@ -72,8 +72,11 @@ public:
void markRasterOverlay(const QRectF &);
void markRasterOverlay(const QPointF &, const QTextItem &);
void markRasterOverlay(const QVectorPath &);
+ void markRasterOverlay(const QPainterPath &);
void markRasterOverlay(const QRect *rects, int rectCount);
void markRasterOverlay(const QRectF *rects, int rectCount);
+ void markRasterOverlay(const QPointF *points, int pointCount);
+ void markRasterOverlay(const QPoint *points, int pointCount);
void unmarkRasterOverlay(const QRectF &);
#ifdef QT_BLITTER_RASTEROVERLAY
@@ -153,6 +156,35 @@ inline void QBlittablePlatformPixmap::markRasterOverlay(const QRectF *rects, int
#endif
}
+inline void QBlittablePlatformPixmap::markRasterOverlay(const QPointF *points, int pointCount)
+{
+#ifdef QT_BLITTER_RASTEROVERLAY
+#error "not ported yet"
+#else
+ Q_UNUSED(points);
+ Q_UNUSED(pointCount);
+#endif
+}
+
+inline void QBlittablePlatformPixmap::markRasterOverlay(const QPoint *points, int pointCount)
+{
+#ifdef QT_BLITTER_RASTEROVERLAY
+#error "not ported yet"
+#else
+ Q_UNUSED(points);
+ Q_UNUSED(pointCount);
+#endif
+}
+
+inline void QBlittablePlatformPixmap::markRasterOverlay(const QPainterPath& path)
+{
+#ifdef QT_BLITTER_RASTEROVERLAY
+#error "not ported yet"
+#else
+ Q_UNUSED(path);
+#endif
+}
+
inline void QBlittablePlatformPixmap::unmarkRasterOverlay(const QRectF &rect)
{
#ifdef QT_BLITTER_RASTEROVERLAY