From 6bbf3f0257603eb39d5511910e8bee1ed862b6cf Mon Sep 17 00:00:00 2001 From: Volker Hilsheimer Date: Wed, 2 Sep 2020 16:23:06 +0200 Subject: Mark obsolete QPrinter functions as deprecated from 5.15 on MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Some of the methods are overrides of virtuals in QPagedPaintDevice, so document and mark those as obsolete as well. Adjust code that calls those APIs to use the recommended replacement. Change-Id: I3cd1980609ea20808d17379a5f97ca595e869875 Pick-to: 5.15 Reviewed-by: Tor Arne Vestbø --- src/gui/painting/qpagedpaintdevice.cpp | 8 +++++- src/gui/painting/qpagedpaintdevice.h | 10 +++++++ src/gui/text/qtextdocument.cpp | 4 +-- src/printsupport/dialogs/qprintdialog_mac.mm | 2 +- src/printsupport/kernel/qprinter.h | 34 +++++++++++++++++++++++- src/printsupport/widgets/qprintpreviewwidget.cpp | 8 +++--- 6 files changed, 58 insertions(+), 8 deletions(-) diff --git a/src/gui/painting/qpagedpaintdevice.cpp b/src/gui/painting/qpagedpaintdevice.cpp index ecb952a8bd..2149bd8cff 100644 --- a/src/gui/painting/qpagedpaintdevice.cpp +++ b/src/gui/painting/qpagedpaintdevice.cpp @@ -136,7 +136,8 @@ QPagedPaintDevicePrivate *QPagedPaintDevice::dd() \enum QPagedPaintDevice::PageSize This enum type lists the available page sizes as defined in the Postscript - PPD standard. These values are duplicated in QPageSize and QPrinter. + PPD standard. These values are duplicated in QPageSize and QPrinter and + those types and enum will be merged in Qt 6. The defined sizes are: @@ -315,6 +316,7 @@ QPagedPaintDevice::PageSize QPagedPaintDevice::pageSize() const } /*! + \obsolete Use setPageSize(QPageSize) instead. Sets the page size to \a size. \a size is specified in millimeters. If the size matches a standard QPagedPaintDevice::PageSize then that page @@ -326,6 +328,8 @@ void QPagedPaintDevice::setPageSizeMM(const QSizeF &size) } /*! + \obsolete Use pageLayout().pageSize() instead. + Returns the page size in millimeters. */ QSizeF QPagedPaintDevice::pageSizeMM() const @@ -334,6 +338,7 @@ QSizeF QPagedPaintDevice::pageSizeMM() const } /*! + \obsolete Use setPageMargins(QMarginsF, QPageLayout::Unit) instead. Sets the margins to be used to \a margins. Margins are specified in millimeters. @@ -349,6 +354,7 @@ void QPagedPaintDevice::setMargins(const QMarginsF &margins) } /*! + \obsolete Use pageLayout().margins() instead. Returns the current margins of the paint device. The default is 0. Margins are specified in millimeters. diff --git a/src/gui/painting/qpagedpaintdevice.h b/src/gui/painting/qpagedpaintdevice.h index 914a72b7be..f4e671f2d2 100644 --- a/src/gui/painting/qpagedpaintdevice.h +++ b/src/gui/painting/qpagedpaintdevice.h @@ -224,14 +224,24 @@ public: bool setPageMargins(const QMarginsF &margins, QPageLayout::Unit units); QPageLayout pageLayout() const; +#if QT_DEPRECATED_SINCE(5,15) + QT_DEPRECATED_VERSION_X_5_15("Use setPageSize(QPageSize) instead.") virtual void setPageSize(PageSize size); + QT_DEPRECATED_VERSION_X_5_15("Use pageLayout().pageSize().id() instead.") PageSize pageSize() const; + QT_DEPRECATED_VERSION_X_5_15("Use setPageSize(QPageSize) instead.") virtual void setPageSizeMM(const QSizeF &size); + QT_DEPRECATED_VERSION_X_5_15("Use pageLayout().pageSize() instead.") QSizeF pageSizeMM() const; +#endif +#if QT_DEPRECATED_SINCE(5,15) + QT_DEPRECATED_VERSION_X_5_15("Use setPageMargins(QMarginsF, QPageLayout::Unit) instead.") virtual void setMargins(const QMarginsF &margins); + QT_DEPRECATED_VERSION_X_5_15("Use pageLayout().margins() instead.") QMarginsF margins() const; +#endif protected: QPagedPaintDevice(QPagedPaintDevicePrivate *dd); diff --git a/src/gui/text/qtextdocument.cpp b/src/gui/text/qtextdocument.cpp index 877bae0f0a..2af1c57286 100644 --- a/src/gui/text/qtextdocument.cpp +++ b/src/gui/text/qtextdocument.cpp @@ -1918,13 +1918,13 @@ void QTextDocument::print(QPagedPaintDevice *printer) const QPagedPaintDevicePrivate *pd = QPagedPaintDevicePrivate::get(printer); // ### set page size to paginated size? - QMarginsF m = printer->margins(); + QMarginsF m = printer->pageLayout().margins(QPageLayout::Millimeter); if (!documentPaginated && m.left() == 0. && m.right() == 0. && m.top() == 0. && m.bottom() == 0.) { m.setLeft(2); m.setRight(2); m.setTop(2); m.setBottom(2); - printer->setMargins(m); + printer->setPageMargins(m, QPageLayout::Millimeter); } // ### use the margins correctly diff --git a/src/printsupport/dialogs/qprintdialog_mac.mm b/src/printsupport/dialogs/qprintdialog_mac.mm index 9f84f98588..219a7a1f30 100644 --- a/src/printsupport/dialogs/qprintdialog_mac.mm +++ b/src/printsupport/dialogs/qprintdialog_mac.mm @@ -204,7 +204,7 @@ QT_USE_NAMESPACE } if (pageSize.isValid() && !pageSize.isEquivalentTo(printer->pageLayout().pageSize())) printer->setPageSize(pageSize); - printer->setOrientation(orientation == kPMLandscape ? QPrinter::Landscape : QPrinter::Portrait); + printer->setPageOrientation(orientation == kPMLandscape ? QPageLayout::Landscape : QPageLayout::Portrait); dialog->done((returnCode == NSModalResponseOK) ? QDialog::Accepted : QDialog::Rejected); } diff --git a/src/printsupport/kernel/qprinter.h b/src/printsupport/kernel/qprinter.h index 50b84e72d7..b912ed8f54 100644 --- a/src/printsupport/kernel/qprinter.h +++ b/src/printsupport/kernel/qprinter.h @@ -168,22 +168,35 @@ public: using QPagedPaintDevice::setPageMargins; #endif +#if QT_DEPRECATED_SINCE(5,15) + QT_DEPRECATED_VERSION_X_5_15("Use setPageOrientation() instead.") void setOrientation(Orientation); + QT_DEPRECATED_VERSION_X_5_15("Use pageLayout().pageOrientation() instead.") Orientation orientation() const; + QT_DEPRECATED_VERSION_X_5_15("Use setPageSize(QPageSize) instead.") void setPageSize(PageSize) override; + QT_DEPRECATED_VERSION_X_5_15("Use pageLayout().pageSize().id() instead.") PageSize pageSize() const; + QT_DEPRECATED_VERSION_X_5_15("Use setPageSize(QPageSize) instead.") void setPageSizeMM(const QSizeF &size) override; + QT_DEPRECATED_VERSION_X_5_15("Use setPageSize(QPageSize) instead.") void setPaperSize(PaperSize); + QT_DEPRECATED_VERSION_X_5_15("pageLayout().pageSize().id()") PaperSize paperSize() const; + QT_DEPRECATED_VERSION_X_5_15("Use setPageSize(QPageSize) instead.") void setPaperSize(const QSizeF &paperSize, Unit unit); + QT_DEPRECATED_VERSION_X_5_15("Use pageLayout().pageSize().size() or pageLayout().fullPageSize() instead.") QSizeF paperSize(Unit unit) const; + QT_DEPRECATED_VERSION_X_5_15("Use setPageSize(QPageSize) instead.") void setPaperName(const QString &paperName); + QT_DEPRECATED_VERSION_X_5_15("Use pageLayout().pageSize().name() instead.") QString paperName() const; +#endif void setPageOrder(PageOrder); PageOrder pageOrder() const; @@ -200,10 +213,14 @@ public: void setFullPage(bool); bool fullPage() const; +#if QT_DEPRECATED_SINCE(5,15) + QT_DEPRECATED_VERSION_X_5_15("Use setCopyCount() instead.") void setNumCopies(int); + QT_DEPRECATED_VERSION_X_5_15("Use copyCount() instead.") int numCopies() const; - + QT_DEPRECATED_VERSION_X_5_15("Use copyCount() instead.") int actualNumCopies() const; +#endif void setCopyCount(int); int copyCount() const; @@ -224,14 +241,24 @@ public: void setFontEmbeddingEnabled(bool enable); bool fontEmbeddingEnabled() const; +#if QT_DEPRECATED_SINCE(5,15) + QT_DEPRECATED_VERSION_X_5_15("Use setDuplex() instead.") void setDoubleSidedPrinting(bool enable); + QT_DEPRECATED_VERSION_X_5_15("Use duplex() instead.") bool doubleSidedPrinting() const; +#endif +#if QT_DEPRECATED_SINCE(5,15) + QT_DEPRECATED_VERSION_X_5_15("Use QPageSize::id(windowsId) and setPageLayout(QPageSize) instead.") void setWinPageSize(int winPageSize); + QT_DEPRECATED_VERSION_X_5_15("Use pageLayout.pageSize().windowsId() instead.") int winPageSize() const; + QT_DEPRECATED_VERSION_X_5_15("Use pageLayout().fullRectPixels(resolution()) instead.") QRect paperRect() const; + QT_DEPRECATED_VERSION_X_5_15("Use pageLayout().paintRectPixels(resolution()) instead.") QRect pageRect() const; +#endif QRectF paperRect(Unit) const; QRectF pageRect(Unit) const; @@ -255,10 +282,15 @@ public: void setPrintRange(PrintRange range); PrintRange printRange() const; +#if QT_DEPRECATED_SINCE(5,15) + QT_DEPRECATED_VERSION_X_5_15("Use setPageMargins(QMarginsF, QPageLayout::Unit) instead.") void setMargins(const QMarginsF &m) override; + QT_DEPRECATED_VERSION_X_5_15("Use setPageMargins(QMarginsF, QPageLayout::Unit) instead.") void setPageMargins(qreal left, qreal top, qreal right, qreal bottom, Unit unit); + QT_DEPRECATED_VERSION_X_5_15("Use pageLayout().pageMargins() instead.") void getPageMargins(qreal *left, qreal *top, qreal *right, qreal *bottom, Unit unit) const; +#endif protected: int metric(PaintDeviceMetric) const override; diff --git a/src/printsupport/widgets/qprintpreviewwidget.cpp b/src/printsupport/widgets/qprintpreviewwidget.cpp index 16b84e328d..bd22d5a6a5 100644 --- a/src/printsupport/widgets/qprintpreviewwidget.cpp +++ b/src/printsupport/widgets/qprintpreviewwidget.cpp @@ -357,7 +357,7 @@ void QPrintPreviewWidgetPrivate::layoutPages() int numPagePlaces = numPages; int cols = 1; // singleMode and default if (viewMode == QPrintPreviewWidget::AllPagesView) { - if (printer->orientation() == QPrinter::Portrait) + if (printer->pageLayout().orientation() == QPageLayout::Portrait) cols = qCeil(qSqrt((float) numPages)); else cols = qFloor(qSqrt((float) numPages)); @@ -593,7 +593,8 @@ void QPrintPreviewWidget::setViewMode(ViewMode mode) QPrinter::Orientation QPrintPreviewWidget::orientation() const { Q_D(const QPrintPreviewWidget); - return d->printer->orientation(); + return d->printer->pageLayout().orientation() == QPageLayout::Portrait + ? QPrinter::Portrait : QPrinter::Landscape; } /*! @@ -603,7 +604,8 @@ QPrinter::Orientation QPrintPreviewWidget::orientation() const void QPrintPreviewWidget::setOrientation(QPrinter::Orientation orientation) { Q_D(QPrintPreviewWidget); - d->printer->setOrientation(orientation); + d->printer->setPageOrientation(orientation == QPrinter::Portrait + ? QPageLayout::Portrait : QPageLayout::Landscape); d->generatePreview(); } -- cgit v1.2.3