summaryrefslogtreecommitdiffstats
path: root/examples/widgets
diff options
context:
space:
mode:
authorFriedemann Kleint <Friedemann.Kleint@digia.com>2015-07-12 23:47:20 +0200
committerFriedemann Kleint <Friedemann.Kleint@theqtcompany.com>2015-07-13 20:16:35 +0000
commit0d81316dcca0324b343def07a4a2bd5792c27fd5 (patch)
treeb94df5ec064eedb56023a9e235d36d4ac19abfff /examples/widgets
parentf1f9489d08a52fd1f52fcf768d43c58c5cda4f25 (diff)
Use QImageReader::setAutoTransform() in examples.
Change-Id: If80616d680f1aa6c9d5cd1a4080710e5ad67d603 Reviewed-by: Rainer Keller <rainer.keller@theqtcompany.com> Reviewed-by: Allan Sandfeld Jensen <allan.jensen@theqtcompany.com>
Diffstat (limited to 'examples/widgets')
-rw-r--r--examples/widgets/doc/src/imageviewer.qdoc14
-rw-r--r--examples/widgets/gestures/imagegestures/imagewidget.cpp1
-rw-r--r--examples/widgets/widgets/imageviewer/imageviewer.cpp4
3 files changed, 14 insertions, 5 deletions
diff --git a/examples/widgets/doc/src/imageviewer.qdoc b/examples/widgets/doc/src/imageviewer.qdoc
index 901d6fe76e..91ae56b5d7 100644
--- a/examples/widgets/doc/src/imageviewer.qdoc
+++ b/examples/widgets/doc/src/imageviewer.qdoc
@@ -124,10 +124,16 @@
\snippet widgets/imageviewer/imageviewer.cpp 2
- In the \c loadFile() function, we check if the file's
- format is an image format by constructing a QImage which tries to
- load the image from the file. If the constructor returns a null
- image, we use a QMessageBox to alert the user.
+ In the \c loadFile() function, we instantiate a QImageReader
+ and enable automatic transformations by calling
+ QImageReader::setAutoTransform(). For files in JPEG format,
+ this ensures that portrait mode images of digital cameras are shown
+ correctly by applying the appropriate orientation read from the
+ EXIF meta data stored in the image file.
+
+ We then load the image using QImageReader::read(). If this returns
+ a null image, indicating that the file is not an image file,
+ we use a QMessageBox to alert the user.
The QMessageBox class provides a modal dialog with a short
message, an icon, and some buttons. As with QFileDialog the
diff --git a/examples/widgets/gestures/imagegestures/imagewidget.cpp b/examples/widgets/gestures/imagegestures/imagewidget.cpp
index 3d0d7e7a93..440eb783c1 100644
--- a/examples/widgets/gestures/imagegestures/imagewidget.cpp
+++ b/examples/widgets/gestures/imagegestures/imagewidget.cpp
@@ -202,6 +202,7 @@ QImage ImageWidget::loadImage(const QString &fileName)
{
qDebug() << position << files << fileName;
QImageReader reader(fileName);
+ reader.setAutoTransform(true);
qCDebug(lcExample) << "loading" << QDir::toNativeSeparators(fileName) << position << '/' << files.size();
if (!reader.canRead()) {
qCWarning(lcExample) << QDir::toNativeSeparators(fileName) << ": can't load image";
diff --git a/examples/widgets/widgets/imageviewer/imageviewer.cpp b/examples/widgets/widgets/imageviewer/imageviewer.cpp
index 0b8513f090..93b88e9c18 100644
--- a/examples/widgets/widgets/imageviewer/imageviewer.cpp
+++ b/examples/widgets/widgets/imageviewer/imageviewer.cpp
@@ -69,7 +69,9 @@ ImageViewer::ImageViewer()
bool ImageViewer::loadFile(const QString &fileName)
{
- QImage image(fileName);
+ QImageReader reader(fileName);
+ reader.setAutoTransform(true);
+ const QImage image = reader.read();
if (image.isNull()) {
QMessageBox::information(this, QGuiApplication::applicationDisplayName(),
tr("Cannot load %1.").arg(QDir::toNativeSeparators(fileName)));