summaryrefslogtreecommitdiffstats
path: root/src/printsupport/kernel/qcups.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/printsupport/kernel/qcups.cpp')
-rw-r--r--src/printsupport/kernel/qcups.cpp21
1 files changed, 21 insertions, 0 deletions
diff --git a/src/printsupport/kernel/qcups.cpp b/src/printsupport/kernel/qcups.cpp
index cf71e92e95..a10baaa7fb 100644
--- a/src/printsupport/kernel/qcups.cpp
+++ b/src/printsupport/kernel/qcups.cpp
@@ -490,6 +490,27 @@ void QCUPSSupport::setBannerPages(QPrinter *printer, const BannerPage startBanne
setCupsOptions(printer, cupsOptions);
}
+void QCUPSSupport::setPageSet(QPrinter *printer, const PageSet pageSet)
+{
+ QStringList cupsOptions = cupsOptionsList(printer);
+ QString pageSetString;
+
+ switch (pageSet) {
+ case OddPages:
+ pageSetString = QStringLiteral("odd");
+ break;
+ case EvenPages:
+ pageSetString = QStringLiteral("even");
+ break;
+ case AllPages:
+ pageSetString = QStringLiteral("all");
+ break;
+ }
+
+ setCupsOption(cupsOptions, QStringLiteral("page-set"), pageSetString);
+ setCupsOptions(printer, cupsOptions);
+}
+
bool QCUPSSupport::printerHasPPD(const char *printerName)
{
if (!isAvailable())