diff options
Diffstat (limited to 'src/plugins/printsupport/windows')
-rw-r--r-- | src/plugins/printsupport/windows/qwindowsprintersupport.cpp | 46 | ||||
-rw-r--r-- | src/plugins/printsupport/windows/qwindowsprintersupport.h | 14 |
2 files changed, 3 insertions, 57 deletions
diff --git a/src/plugins/printsupport/windows/qwindowsprintersupport.cpp b/src/plugins/printsupport/windows/qwindowsprintersupport.cpp index 2da10fc5d0..997082a367 100644 --- a/src/plugins/printsupport/windows/qwindowsprintersupport.cpp +++ b/src/plugins/printsupport/windows/qwindowsprintersupport.cpp @@ -42,12 +42,8 @@ #include "qwindowsprintersupport.h" #include "qwindowsprintdevice.h" -#include <QtCore/QList> -#include <QtCore/QScopedArrayPointer> -#include <QtPrintSupport/QPrinterInfo> +#include <QtCore/QStringList> #include <qprintengine_win_p.h> -#include <private/qpaintengine_alpha_p.h> -#include <private/qprinterinfo_p.h> #include <private/qprintdevice_p.h> QT_BEGIN_NAMESPACE @@ -55,7 +51,6 @@ QT_BEGIN_NAMESPACE QWindowsPrinterSupport::QWindowsPrinterSupport() : QPlatformPrinterSupport() { - m_printers = QWindowsPrinterSupport::queryPrinters(); } QWindowsPrinterSupport::~QWindowsPrinterSupport() @@ -88,43 +83,4 @@ QString QWindowsPrinterSupport::defaultPrintDeviceId() const return QWindowsPrintDevice::defaultPrintDeviceId(); } -QList<QPrinter::PaperSize> QWindowsPrinterSupport::supportedPaperSizes(const QPrinterInfo &printerInfo) const -{ - return QWin32PrintEngine::supportedPaperSizes(printerInfo); -} - -QList<QPair<QString, QSizeF> >QWindowsPrinterSupport::supportedSizesWithNames(const QPrinterInfo &printerInfo) const -{ - return QWin32PrintEngine::supportedSizesWithNames(printerInfo); -} - -QList<QPrinterInfo> QWindowsPrinterSupport::availablePrinters() -{ - m_printers = QWindowsPrinterSupport::queryPrinters(); - return QPlatformPrinterSupport::availablePrinters(); -} - -QList<QPrinterInfo> QWindowsPrinterSupport::queryPrinters() -{ - QList<QPrinterInfo> result; - DWORD needed = 0; - DWORD returned = 0; - if ((!EnumPrinters(PRINTER_ENUM_LOCAL | PRINTER_ENUM_CONNECTIONS, NULL, 4, 0, 0, &needed, &returned) && GetLastError() != ERROR_INSUFFICIENT_BUFFER) - || !needed) { - return result; - } - QScopedArrayPointer<BYTE> buffer(new BYTE[needed]); - if (!EnumPrinters(PRINTER_ENUM_LOCAL | PRINTER_ENUM_CONNECTIONS, NULL, 4, buffer.data(), needed, &needed, &returned)) - return result; - PPRINTER_INFO_4 infoList = reinterpret_cast<PPRINTER_INFO_4>(buffer.data()); - QString defaultPrinterName; - QWin32PrintEngine::queryDefaultPrinter(defaultPrinterName); - for (uint i = 0; i < returned; ++i) { - const QString printerName(QString::fromWCharArray(infoList[i].pPrinterName)); - const bool isDefault = (printerName == defaultPrinterName); - result.append(QPlatformPrinterSupport::createPrinterInfo(printerName, QString(), QString(), QString(), isDefault, i)); - } - return result; -} - QT_END_NAMESPACE diff --git a/src/plugins/printsupport/windows/qwindowsprintersupport.h b/src/plugins/printsupport/windows/qwindowsprintersupport.h index 7b82d214ff..6a84b667dd 100644 --- a/src/plugins/printsupport/windows/qwindowsprintersupport.h +++ b/src/plugins/printsupport/windows/qwindowsprintersupport.h @@ -46,28 +46,18 @@ QT_BEGIN_NAMESPACE -class QWin32PrintEngine; - class QWindowsPrinterSupport : public QPlatformPrinterSupport { public: QWindowsPrinterSupport(); ~QWindowsPrinterSupport(); - virtual QPrintEngine *createNativePrintEngine(QPrinter::PrinterMode printerMode); - virtual QPaintEngine *createPaintEngine(QPrintEngine *printEngine, QPrinter::PrinterMode); + QPrintEngine *createNativePrintEngine(QPrinter::PrinterMode printerMode) Q_DECL_OVERRIDE; + QPaintEngine *createPaintEngine(QPrintEngine *printEngine, QPrinter::PrinterMode) Q_DECL_OVERRIDE; QPrintDevice createPrintDevice(const QString &id) Q_DECL_OVERRIDE; QStringList availablePrintDeviceIds() const Q_DECL_OVERRIDE; QString defaultPrintDeviceId() const Q_DECL_OVERRIDE; - - virtual QList<QPrinter::PaperSize> supportedPaperSizes(const QPrinterInfo &) const; - virtual QList<QPair<QString, QSizeF> >supportedSizesWithNames(const QPrinterInfo &printerInfo) const; - - virtual QList<QPrinterInfo> availablePrinters(); - -private: - static QList<QPrinterInfo> queryPrinters(); }; QT_END_NAMESPACE |