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.cpp57
1 files changed, 57 insertions, 0 deletions
diff --git a/src/printsupport/kernel/qcups.cpp b/src/printsupport/kernel/qcups.cpp
index 332245cc21..cf71e92e95 100644
--- a/src/printsupport/kernel/qcups.cpp
+++ b/src/printsupport/kernel/qcups.cpp
@@ -433,6 +433,63 @@ void QCUPSSupport::setJobPriority(QPrinter *printer, int priority)
setCupsOptions(printer, cupsOptions);
}
+void QCUPSSupport::setBannerPages(QPrinter *printer, const BannerPage startBannerPage, const BannerPage endBannerPage)
+{
+ QStringList cupsOptions = cupsOptionsList(printer);
+ QString startBanner, endBanner;
+
+ switch (startBannerPage) {
+ case NoBanner:
+ startBanner = QStringLiteral("none");
+ break;
+ case Standard:
+ startBanner = QStringLiteral("standard");
+ break;
+ case Unclassified:
+ startBanner = QStringLiteral("unclassified");
+ break;
+ case Confidential:
+ startBanner = QStringLiteral("confidential");
+ break;
+ case Classified:
+ startBanner = QStringLiteral("classified");
+ break;
+ case Secret:
+ startBanner = QStringLiteral("secret");
+ break;
+ case TopSecret:
+ startBanner = QStringLiteral("topsecret");
+ break;
+ }
+
+ switch (endBannerPage) {
+ case NoBanner:
+ endBanner = QStringLiteral("none");
+ break;
+ case Standard:
+ endBanner = QStringLiteral("standard");
+ break;
+ case Unclassified:
+ endBanner = QStringLiteral("unclassified");
+ break;
+ case Confidential:
+ endBanner = QStringLiteral("confidential");
+ break;
+ case Classified:
+ endBanner = QStringLiteral("classified");
+ break;
+ case Secret:
+ endBanner = QStringLiteral("secret");
+ break;
+ case TopSecret:
+ endBanner = QStringLiteral("topsecret");
+ break;
+ }
+
+ setCupsOption(cupsOptions, QStringLiteral("job-sheets"), startBanner + QLatin1Char(',') + endBanner);
+ setCupsOptions(printer, cupsOptions);
+}
+
bool QCUPSSupport::printerHasPPD(const char *printerName)
{
if (!isAvailable())