summaryrefslogtreecommitdiffstats
path: root/examples/widgets/widgets/imageviewer/imageviewer.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'examples/widgets/widgets/imageviewer/imageviewer.cpp')
-rw-r--r--examples/widgets/widgets/imageviewer/imageviewer.cpp14
1 files changed, 7 insertions, 7 deletions
diff --git a/examples/widgets/widgets/imageviewer/imageviewer.cpp b/examples/widgets/widgets/imageviewer/imageviewer.cpp
index 83cf8bb7bc..7a0f49308b 100644
--- a/examples/widgets/widgets/imageviewer/imageviewer.cpp
+++ b/examples/widgets/widgets/imageviewer/imageviewer.cpp
@@ -200,19 +200,20 @@ void ImageViewer::saveAs()
void ImageViewer::print()
//! [5] //! [6]
{
- Q_ASSERT(imageLabel->pixmap());
-#if QT_CONFIG(printdialog)
+ Q_ASSERT(!imageLabel->pixmap(Qt::ReturnByValue).isNull());
+#if defined(QT_PRINTSUPPORT_LIB) && QT_CONFIG(printdialog)
//! [6] //! [7]
QPrintDialog dialog(&printer, this);
//! [7] //! [8]
if (dialog.exec()) {
QPainter painter(&printer);
+ QPixmap pixmap = imageLabel->pixmap(Qt::ReturnByValue);
QRect rect = painter.viewport();
- QSize size = imageLabel->pixmap()->size();
+ QSize size = pixmap.size();
size.scale(rect.size(), Qt::KeepAspectRatio);
painter.setViewport(rect.x(), rect.y(), size.width(), size.height());
- painter.setWindow(imageLabel->pixmap()->rect());
- painter.drawPixmap(0, 0, *imageLabel->pixmap());
+ painter.setWindow(pixmap.rect());
+ painter.drawPixmap(0, 0, pixmap);
}
#endif
}
@@ -383,9 +384,8 @@ void ImageViewer::updateActions()
void ImageViewer::scaleImage(double factor)
//! [23] //! [24]
{
- Q_ASSERT(imageLabel->pixmap());
scaleFactor *= factor;
- imageLabel->resize(scaleFactor * imageLabel->pixmap()->size());
+ imageLabel->resize(scaleFactor * imageLabel->pixmap(Qt::ReturnByValue).size());
adjustScrollBar(scrollArea->horizontalScrollBar(), factor);
adjustScrollBar(scrollArea->verticalScrollBar(), factor);