summaryrefslogtreecommitdiffstats
path: root/src/plugins/platforms/cocoa
diff options
context:
space:
mode:
Diffstat (limited to 'src/plugins/platforms/cocoa')
-rw-r--r--src/plugins/platforms/cocoa/qcocoanativeinterface.h5
-rw-r--r--src/plugins/platforms/cocoa/qcocoanativeinterface.mm8
-rw-r--r--src/plugins/platforms/cocoa/qprintengine_mac_p.h3
3 files changed, 16 insertions, 0 deletions
diff --git a/src/plugins/platforms/cocoa/qcocoanativeinterface.h b/src/plugins/platforms/cocoa/qcocoanativeinterface.h
index 2665768edc..8856e90cf3 100644
--- a/src/plugins/platforms/cocoa/qcocoanativeinterface.h
+++ b/src/plugins/platforms/cocoa/qcocoanativeinterface.h
@@ -66,6 +66,11 @@ private:
plugin.
*/
Q_INVOKABLE QPlatformPrinterSupport *createPlatformPrinterSupport();
+ /*
+ Function to return the NSPrintInfo * from QMacPaintEnginePrivate.
+ Needed by the native print dialog in the QtPrintSupport library.
+ */
+ Q_INVOKABLE void *NSPrintInfoForPrintEngine(QPrintEngine *printEngine);
};
#endif // QCOCOANATIVEINTERFACE_H
diff --git a/src/plugins/platforms/cocoa/qcocoanativeinterface.mm b/src/plugins/platforms/cocoa/qcocoanativeinterface.mm
index 7767254e11..29c2e58959 100644
--- a/src/plugins/platforms/cocoa/qcocoanativeinterface.mm
+++ b/src/plugins/platforms/cocoa/qcocoanativeinterface.mm
@@ -52,6 +52,8 @@
#include "qopenglcontext.h"
#include <qdebug.h>
+#include "qprintengine_mac_p.h"
+
void *QCocoaNativeInterface::nativeResourceForWindow(const QByteArray &resourceString, QWindow *window)
{
if (!window->handle()) {
@@ -73,3 +75,9 @@ QPlatformPrinterSupport *QCocoaNativeInterface::createPlatformPrinterSupport()
{
return new QCocoaPrinterSupport();
}
+
+void *QCocoaNativeInterface::NSPrintInfoForPrintEngine(QPrintEngine *printEngine)
+{
+ QMacPrintEngine *macPrintEngine = static_cast<QMacPrintEngine *>(printEngine);
+ return macPrintEngine->d_func()->printInfo;
+}
diff --git a/src/plugins/platforms/cocoa/qprintengine_mac_p.h b/src/plugins/platforms/cocoa/qprintengine_mac_p.h
index c690a5733c..2d37b43dfa 100644
--- a/src/plugins/platforms/cocoa/qprintengine_mac_p.h
+++ b/src/plugins/platforms/cocoa/qprintengine_mac_p.h
@@ -108,6 +108,9 @@ public:
virtual void drawTextItem(const QPointF &p, const QTextItem &ti);
virtual void drawTiledPixmap(const QRectF &r, const QPixmap &pixmap, const QPointF &s);
virtual void drawPath(const QPainterPath &);
+
+private:
+ friend class QCocoaNativeInterface;
};
class QMacPrintEnginePrivate : public QPaintEnginePrivate