diff options
Diffstat (limited to 'examples/widgets/widgets/imageviewer/imageviewer.cpp')
-rw-r--r-- | examples/widgets/widgets/imageviewer/imageviewer.cpp | 12 |
1 files changed, 6 insertions, 6 deletions
diff --git a/examples/widgets/widgets/imageviewer/imageviewer.cpp b/examples/widgets/widgets/imageviewer/imageviewer.cpp index 70a4cda984..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()); + 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); |