diff options
author | Frederik Gladhorn <frederik.gladhorn@digia.com> | 2013-04-26 09:45:55 +0200 |
---|---|---|
committer | The Qt Project <gerrit-noreply@qt-project.org> | 2013-04-26 09:45:55 +0200 |
commit | 08585f02dc0eb8dc5567f47c55915540c0a34e01 (patch) | |
tree | d509ccc2e90e13620ef423cb099262cd88919c0a /src/gui/image | |
parent | 55145c52677e961804b7b3a725652bd5ce1e0269 (diff) | |
parent | 4c231d5df3040dbf4545a9a77145ee0e1f9c380c (diff) |
Merge "Merge remote-tracking branch 'origin/stable' into dev" into refs/staging/dev
Diffstat (limited to 'src/gui/image')
-rw-r--r-- | src/gui/image/qimage.cpp | 9 | ||||
-rw-r--r-- | src/gui/image/qimagereader.cpp | 4 | ||||
-rw-r--r-- | src/gui/image/qimagewriter.cpp | 4 | ||||
-rw-r--r-- | src/gui/image/qpicture.cpp | 3 | ||||
-rw-r--r-- | src/gui/image/qpixmap_blitter.cpp | 2 | ||||
-rw-r--r-- | src/gui/image/qpixmap_raster.cpp | 7 |
6 files changed, 21 insertions, 8 deletions
diff --git a/src/gui/image/qimage.cpp b/src/gui/image/qimage.cpp index 7287f54e74..0efb9c2646 100644 --- a/src/gui/image/qimage.cpp +++ b/src/gui/image/qimage.cpp @@ -4994,12 +4994,17 @@ int QImage::metric(PaintDeviceMetric metric) const break; case PdmPhysicalDpiX: - return qRound(d->dpmx * 0.0254 * d->devicePixelRatio); + return qRound(d->dpmx * 0.0254); break; case PdmPhysicalDpiY: - return qRound(d->dpmy * 0.0254 * d->devicePixelRatio); + return qRound(d->dpmy * 0.0254); break; + + case PdmDevicePixelRatio: + return d->devicePixelRatio; + break; + default: qWarning("QImage::metric(): Unhandled metric type %d", metric); break; diff --git a/src/gui/image/qimagereader.cpp b/src/gui/image/qimagereader.cpp index e612a2c374..5dd51843fb 100644 --- a/src/gui/image/qimagereader.cpp +++ b/src/gui/image/qimagereader.cpp @@ -1513,9 +1513,9 @@ QList<QByteArray> QImageReader::supportedMimeTypes() for (int i = 0; i < _qt_NumFormats; ++i) mimeTypes << _qt_BuiltInFormats[i].mimeType; -#ifndef QT_NO_LIBRARY +#ifndef QT_NO_IMAGEFORMATPLUGIN supportedImageHandlerMimeTypes(loader(), QImageIOPlugin::CanRead, &mimeTypes); -#endif // QT_NO_LIBRARY +#endif // QT_NO_IMAGEFORMATPLUGIN QList<QByteArray> sortedMimeTypes; for (QSet<QByteArray>::ConstIterator it = mimeTypes.constBegin(); it != mimeTypes.constEnd(); ++it) diff --git a/src/gui/image/qimagewriter.cpp b/src/gui/image/qimagewriter.cpp index 8823f9293d..a27dc9d16f 100644 --- a/src/gui/image/qimagewriter.cpp +++ b/src/gui/image/qimagewriter.cpp @@ -789,9 +789,9 @@ QList<QByteArray> QImageWriter::supportedMimeTypes() mimeTypes << "image/jpeg"; #endif -#ifndef QT_NO_LIBRARY +#ifndef QT_NO_IMAGEFORMATPLUGIN supportedImageHandlerMimeTypes(loader(), QImageIOPlugin::CanWrite, &mimeTypes); -#endif // QT_NO_LIBRARY +#endif // QT_NO_IMAGEFORMATPLUGIN QList<QByteArray> sortedMimeTypes; for (QSet<QByteArray>::ConstIterator it = mimeTypes.constBegin(); it != mimeTypes.constEnd(); ++it) diff --git a/src/gui/image/qpicture.cpp b/src/gui/image/qpicture.cpp index f6de22851d..1071ed754b 100644 --- a/src/gui/image/qpicture.cpp +++ b/src/gui/image/qpicture.cpp @@ -956,6 +956,9 @@ int QPicture::metric(PaintDeviceMetric m) const case PdmDepth: val = 24; break; + case PdmDevicePixelRatio: + val = 1; + break; default: val = 0; qWarning("QPicture::metric: Invalid metric command"); diff --git a/src/gui/image/qpixmap_blitter.cpp b/src/gui/image/qpixmap_blitter.cpp index 75b7a4ba06..4c1b30a6d8 100644 --- a/src/gui/image/qpixmap_blitter.cpp +++ b/src/gui/image/qpixmap_blitter.cpp @@ -120,6 +120,8 @@ int QBlittablePlatformPixmap::metric(QPaintDevice::PaintDeviceMetric metric) con case QPaintDevice::PdmDpiY: // fall-through case QPaintDevice::PdmPhysicalDpiY: return qt_defaultDpiY(); + case QPaintDevice::PdmDevicePixelRatio: + return 1; default: qWarning("QRasterPlatformPixmap::metric(): Unhandled metric type %d", metric); break; diff --git a/src/gui/image/qpixmap_raster.cpp b/src/gui/image/qpixmap_raster.cpp index 302945dbf8..f9a017c281 100644 --- a/src/gui/image/qpixmap_raster.cpp +++ b/src/gui/image/qpixmap_raster.cpp @@ -244,6 +244,7 @@ QImage QRasterPlatformPixmap::toImage(const QRect &rect) const QImage newImage(image.scanLine(clipped.y()) + clipped.x() * (du / 8), clipped.width(), clipped.height(), image.bytesPerLine(), image.format()); + newImage.setDevicePixelRatio(image.devicePixelRatio()); return newImage; } else { return image.copy(clipped); @@ -278,11 +279,13 @@ int QRasterPlatformPixmap::metric(QPaintDevice::PaintDeviceMetric metric) const case QPaintDevice::PdmDpiX: return qt_defaultDpiX(); case QPaintDevice::PdmPhysicalDpiX: - return qt_defaultDpiX() * image.devicePixelRatio(); + return qt_defaultDpiX(); case QPaintDevice::PdmDpiY: return qt_defaultDpiX(); case QPaintDevice::PdmPhysicalDpiY: - return qt_defaultDpiY() * image.devicePixelRatio(); + return qt_defaultDpiY(); + case QPaintDevice::PdmDevicePixelRatio: + return image.devicePixelRatio(); default: qWarning("QRasterPlatformPixmap::metric(): Unhandled metric type %d", metric); break; |