diff options
author | Jørgen Lind <jorgen.lind@nokia.com> | 2010-01-05 12:09:20 +0100 |
---|---|---|
committer | Jørgen Lind <jorgen.lind@nokia.com> | 2010-01-05 12:09:20 +0100 |
commit | 5e4b2e2591bb1b5897b29c43fa35b0a60fd43d56 (patch) | |
tree | 84c3a6c8def77ca0a518a9e9da7a1d52d1fcbc0c /src/gui/image/qpixmap_blitter.cpp | |
parent | 781e8b00979f22de15a17510121be1ad20630c7a (diff) |
Make sure that premultiplied surfaces are used
and clean up a bit. Also removed alot of unnecessary windowsurface code
Diffstat (limited to 'src/gui/image/qpixmap_blitter.cpp')
-rw-r--r-- | src/gui/image/qpixmap_blitter.cpp | 8 |
1 files changed, 3 insertions, 5 deletions
diff --git a/src/gui/image/qpixmap_blitter.cpp b/src/gui/image/qpixmap_blitter.cpp index 3b18ca9b65..3613211e9a 100644 --- a/src/gui/image/qpixmap_blitter.cpp +++ b/src/gui/image/qpixmap_blitter.cpp @@ -29,15 +29,13 @@ QBlittable *QBlittablePixmapData::blittable() const void QBlittablePixmapData::setBlittable(QBlittable *blittable) { - if (m_blittable) - delete m_blittable; + delete m_blittable; + resize(blittable->rect().width(),blittable->rect().height()); m_blittable = blittable; } void QBlittablePixmapData::resize(int width, int height) { - delete m_blittable; - m_blittable = 0; delete m_engine; m_engine = 0; d = QApplicationPrivate::graphicsSystem()->screens().at(0)->depth(); @@ -78,7 +76,7 @@ int QBlittablePixmapData::metric(QPaintDevice::PaintDeviceMetric metric) const void QBlittablePixmapData::fill(const QColor &color) { if (blittable()->capabilities() & QBlittable::SolidRectCapability) - blittable()->fillRect(m_blittable->rect(),color); + blittable()->fillRect(QRectF(0,0,w,h),color); else blittable()->lock()->fill(color.rgb()); } |