diff options
Diffstat (limited to 'src/printsupport')
-rw-r--r-- | src/printsupport/kernel/qprinter.cpp | 19 | ||||
-rw-r--r-- | src/printsupport/kernel/qprinterinfo.cpp | 14 |
2 files changed, 20 insertions, 13 deletions
diff --git a/src/printsupport/kernel/qprinter.cpp b/src/printsupport/kernel/qprinter.cpp index 72522b38c1..3f169755d8 100644 --- a/src/printsupport/kernel/qprinter.cpp +++ b/src/printsupport/kernel/qprinter.cpp @@ -52,7 +52,7 @@ #ifndef QT_NO_PRINTER -#include <private/qguiapplication_p.h> +#include "qplatformprintplugin_qpa.h" #include <QtPrintSupport/QPlatformPrinterSupport> #if defined (Q_WS_WIN) @@ -158,19 +158,24 @@ Q_GUI_EXPORT QSizeF qt_printerPaperSize(QPrinter::Orientation orientation, void QPrinterPrivate::createDefaultEngines() { QPrinter::OutputFormat realOutputFormat = outputFormat; -#if !defined (QTOPIA_PRINTENGINE) #if defined (Q_OS_UNIX) && ! defined (Q_WS_MAC) if(outputFormat == QPrinter::NativeFormat) { realOutputFormat = QPrinter::PdfFormat; } #endif -#endif switch (realOutputFormat) { case QPrinter::NativeFormat: { #if defined (Q_WS_QPA) - printEngine = QGuiApplicationPrivate::platformIntegration()->printerSupport()->createNativePrintEngine(printerMode); - paintEngine = QGuiApplicationPrivate::platformIntegration()->printerSupport()->createPaintEngine(printEngine, printerMode); + QPlatformPrinterSupport *ps = QPlatformPrinterSupportPlugin::get(); + if (ps) { + printEngine = ps->createNativePrintEngine(printerMode); + paintEngine = ps->createPaintEngine(printEngine, printerMode); + } else { + QPdfPrintEngine *pdfEngine = new QPdfPrintEngine(printerMode); + paintEngine = pdfEngine; + printEngine = pdfEngine; + } #elif defined (Q_WS_WIN) QWin32PrintEngine *winEngine = new QWin32PrintEngine(printerMode); paintEngine = winEngine; @@ -179,10 +184,6 @@ void QPrinterPrivate::createDefaultEngines() QMacPrintEngine *macEngine = new QMacPrintEngine(printerMode); paintEngine = macEngine; printEngine = macEngine; -#elif defined (QTOPIA_PRINTENGINE) - QtopiaPrintEngine *qwsEngine = new QtopiaPrintEngine(printerMode); - paintEngine = qwsEngine; - printEngine = qwsEngine; #elif defined (Q_OS_UNIX) Q_ASSERT(false); #endif diff --git a/src/printsupport/kernel/qprinterinfo.cpp b/src/printsupport/kernel/qprinterinfo.cpp index e48db449b5..5be73e76b9 100644 --- a/src/printsupport/kernel/qprinterinfo.cpp +++ b/src/printsupport/kernel/qprinterinfo.cpp @@ -30,7 +30,7 @@ #ifndef QT_NO_PRINTER -#include <private/qguiapplication_p.h> +#include "qplatformprintplugin_qpa.h" #include <QtPrintSupport/QPlatformPrinterSupport> QT_BEGIN_NAMESPACE @@ -176,7 +176,7 @@ QList<QPrinter::PaperSize> QPrinterInfo::supportedPaperSizes() const { const Q_D(QPrinterInfo); if (!isNull() && !d->hasPaperSizes) { - d->paperSizes = QGuiApplicationPrivate::platformIntegration()->printerSupport()->supportedPaperSizes(*this); + d->paperSizes = QPlatformPrinterSupportPlugin::get()->supportedPaperSizes(*this); d->hasPaperSizes = true; } return d->paperSizes; @@ -184,12 +184,18 @@ QList<QPrinter::PaperSize> QPrinterInfo::supportedPaperSizes() const QList<QPrinterInfo> QPrinterInfo::availablePrinters() { - return QGuiApplicationPrivate::platformIntegration()->printerSupport()->availablePrinters(); + QPlatformPrinterSupport *ps = QPlatformPrinterSupportPlugin::get(); + if (!ps) + return QList<QPrinterInfo>(); + return ps->availablePrinters(); } QPrinterInfo QPrinterInfo::defaultPrinter() { - return QGuiApplicationPrivate::platformIntegration()->printerSupport()->defaultPrinter(); + QPlatformPrinterSupport *ps = QPlatformPrinterSupportPlugin::get(); + if (!ps) + return QPrinterInfo(); + return QPlatformPrinterSupportPlugin::get()->defaultPrinter(); } #endif //Q_WS_QPA |