From 70f6a35c8f0b6a73f4d568532e1365cd3e8ff8dd Mon Sep 17 00:00:00 2001 From: Albert Astals Cid Date: Mon, 4 Dec 2017 13:23:49 +0100 Subject: Introduce QPrintDevice::property/setProperty So we can access QPlatformPrintDevice internals if needed Change-Id: Ib37c5717713f37262ef12d7b61793d80f05baf4a Reviewed-by: Liang Qi --- src/printsupport/kernel/qplatformprintdevice.cpp | 15 +++++++++++++++ src/printsupport/kernel/qplatformprintdevice.h | 6 ++++++ src/printsupport/kernel/qprintdevice.cpp | 10 ++++++++++ src/printsupport/kernel/qprintdevice_p.h | 7 +++++++ 4 files changed, 38 insertions(+) diff --git a/src/printsupport/kernel/qplatformprintdevice.cpp b/src/printsupport/kernel/qplatformprintdevice.cpp index e2d4a08de3..ad3f923bec 100644 --- a/src/printsupport/kernel/qplatformprintdevice.cpp +++ b/src/printsupport/kernel/qplatformprintdevice.cpp @@ -381,6 +381,21 @@ void QPlatformPrintDevice::loadMimeTypes() const { } +QVariant QPlatformPrintDevice::property(QPrintDevice::PrintDevicePropertyKey key) const +{ + Q_UNUSED(key) + + return QVariant(); +} + +bool QPlatformPrintDevice::setProperty(QPrintDevice::PrintDevicePropertyKey key, const QVariant &value) +{ + Q_UNUSED(key) + Q_UNUSED(value) + + return false; +} + QList QPlatformPrintDevice::supportedMimeTypes() const { if (!m_haveMimeTypes) diff --git a/src/printsupport/kernel/qplatformprintdevice.h b/src/printsupport/kernel/qplatformprintdevice.h index 44a3a966f4..654bb123fb 100644 --- a/src/printsupport/kernel/qplatformprintdevice.h +++ b/src/printsupport/kernel/qplatformprintdevice.h @@ -53,11 +53,14 @@ #include #include +#include +#include #include #include #include + QT_BEGIN_NAMESPACE #ifndef QT_NO_PRINTER @@ -118,6 +121,9 @@ public: virtual QPrint::ColorMode defaultColorMode() const; virtual QList supportedColorModes() const; + virtual QVariant property(QPrintDevice::PrintDevicePropertyKey key) const; + virtual bool setProperty(QPrintDevice::PrintDevicePropertyKey key, const QVariant &value); + #ifndef QT_NO_MIMETYPE virtual QList supportedMimeTypes() const; #endif diff --git a/src/printsupport/kernel/qprintdevice.cpp b/src/printsupport/kernel/qprintdevice.cpp index 26799a6f13..7096f5a2f6 100644 --- a/src/printsupport/kernel/qprintdevice.cpp +++ b/src/printsupport/kernel/qprintdevice.cpp @@ -245,6 +245,16 @@ QList QPrintDevice::supportedColorModes() const return isValid() ? d->supportedColorModes() : QList(); } +QVariant QPrintDevice::property(PrintDevicePropertyKey key) const +{ + return isValid() ? d->property(key) : QVariant(); +} + +bool QPrintDevice::setProperty(PrintDevicePropertyKey key, const QVariant &value) +{ + return isValid() ? d->setProperty(key, value) : false; +} + #ifndef QT_NO_MIMETYPE QList QPrintDevice::supportedMimeTypes() const { diff --git a/src/printsupport/kernel/qprintdevice_p.h b/src/printsupport/kernel/qprintdevice_p.h index 1e0d3983e9..1a26d3afcf 100644 --- a/src/printsupport/kernel/qprintdevice_p.h +++ b/src/printsupport/kernel/qprintdevice_p.h @@ -131,6 +131,13 @@ public: QPrint::ColorMode defaultColorMode() const; QList supportedColorModes() const; + enum PrintDevicePropertyKey { + PDPK_CustomBase = 0xff00 + }; + + QVariant property(PrintDevicePropertyKey key) const; + bool setProperty(PrintDevicePropertyKey key, const QVariant &value); + #ifndef QT_NO_MIMETYPE QList supportedMimeTypes() const; #endif -- cgit v1.2.3