diff options
Diffstat (limited to 'src/printsupport/kernel/qprintengine_pdf.cpp')
-rw-r--r-- | src/printsupport/kernel/qprintengine_pdf.cpp | 44 |
1 files changed, 39 insertions, 5 deletions
diff --git a/src/printsupport/kernel/qprintengine_pdf.cpp b/src/printsupport/kernel/qprintengine_pdf.cpp index 7b3c3c1dac..6c65300462 100644 --- a/src/printsupport/kernel/qprintengine_pdf.cpp +++ b/src/printsupport/kernel/qprintengine_pdf.cpp @@ -147,6 +147,28 @@ void QPdfPrintEngine::setProperty(PrintEnginePropertyKey key, const QVariant &va Q_D(QPdfPrintEngine); switch (int(key)) { + + // The following keys are properties or derived values and so cannot be set + case PPK_PageRect: + break; + case PPK_PaperRect: + break; + case PPK_PaperSources: + break; + case PPK_SupportsMultipleCopies: + break; + case PPK_SupportedResolutions: + break; + + // The following keys are settings that are unsupported by the PDF PrintEngine + case PPK_CustomBase: + break; + case PPK_PaperName: + break; + case PPK_WindowsPageSize: + break; + + // The following keys are properties and settings that are supported by the PDF PrintEngine case PPK_CollateCopies: d->collate = value.toBool(); break; @@ -216,8 +238,7 @@ void QPdfPrintEngine::setProperty(PrintEnginePropertyKey key, const QVariant &va d->pageMarginsSet = true; break; } - default: - break; + // No default so that compiler will complain if new keys added and not handled in this engine } } @@ -227,6 +248,20 @@ QVariant QPdfPrintEngine::property(PrintEnginePropertyKey key) const QVariant ret; switch (int(key)) { + + // The following keys are settings that are unsupported by the PDF PrintEngine + // Return sensible default values to ensure consistent behavior across platforms + case PPK_CustomBase: + // Special case, leave null + break; + case PPK_PaperName: + ret = QString(); + break; + case PPK_WindowsPageSize: + // Special case, leave null + break; + + // The following keys are properties and settings that are supported by the PDF PrintEngine case PPK_CollateCopies: ret = d->collate; break; @@ -307,8 +342,7 @@ QVariant QPdfPrintEngine::property(PrintEnginePropertyKey key) const ret = margins; break; } - default: - break; + // No default so that compiler will complain if new keys added and not handled in this engine } return ret; } @@ -352,7 +386,7 @@ void QPdfPrintEnginePrivate::closePrintDevice() QPdfPrintEnginePrivate::QPdfPrintEnginePrivate(QPrinter::PrinterMode m) : QPdfEnginePrivate(), duplex(QPrinter::DuplexNone), - collate(false), + collate(true), copies(1), pageOrder(QPrinter::FirstPageFirst), paperSource(QPrinter::Auto), |