path: root/src/gui/painting/qpdfwriter.h
diff options
authorJohn Layt <>2014-03-28 10:58:25 +0100
committerThe Qt Project <>2014-04-05 21:47:46 +0200
commitbc46b591b2cb81a5cb0c513aa4139b7e88fa8b06 (patch)
treef419a9eb6c623cd24d57f316edcaec1d4f6c5cd2 /src/gui/painting/qpdfwriter.h
parentd84da399649d01ac689e87295f8decc024a4f8e8 (diff)
QPagedPaintDevice - Move QPageLayout methods
The new QPageLayout methods weren't originally added to QPagePaintDevice as no new virtuals can be added, instead static polymorphism was used to add the methods directly in the derived classes QPdfWriter and QPrinter. This however means that classes like QTextDocument with print() methods that take a QPagedPaintDevice are unable to access the QPageLayout methods. To fix this, instead make the QPagedPaintDevicePrivate a virtual class and have QPdfWriter and QPrinter implement derived private classes that are called by the non-virtual QPagedPaintDevice base methods. Change-Id: Ieb6e513b1fa05f5ae76ea1f9156b0b1a053089eb Reviewed-by: Lars Knoll <>
Diffstat (limited to 'src/gui/painting/qpdfwriter.h')
1 files changed, 4 insertions, 1 deletions
diff --git a/src/gui/painting/qpdfwriter.h b/src/gui/painting/qpdfwriter.h
index fce0b88ea8..747ce380e7 100644
--- a/src/gui/painting/qpdfwriter.h
+++ b/src/gui/painting/qpdfwriter.h
@@ -74,13 +74,16 @@ public:
void setResolution(int resolution);
int resolution() const;
+#ifdef Q_QDOC
bool setPageLayout(const QPageLayout &pageLayout);
bool setPageSize(const QPageSize &pageSize);
bool setPageOrientation(QPageLayout::Orientation orientation);
bool setPageMargins(const QMarginsF &margins);
bool setPageMargins(const QMarginsF &margins, QPageLayout::Unit units);
QPageLayout pageLayout() const;
+ using QPagedPaintDevice::setPageSize;
void setPageSize(PageSize size);
void setPageSizeMM(const QSizeF &size);