summaryrefslogtreecommitdiffstats
path: root/src/printsupport/kernel/qcups_p.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/printsupport/kernel/qcups_p.h')
-rw-r--r--src/printsupport/kernel/qcups_p.h23
1 files changed, 23 insertions, 0 deletions
diff --git a/src/printsupport/kernel/qcups_p.h b/src/printsupport/kernel/qcups_p.h
index 0828f582a3..58608ea1f1 100644
--- a/src/printsupport/kernel/qcups_p.h
+++ b/src/printsupport/kernel/qcups_p.h
@@ -56,6 +56,7 @@
#include "QtCore/qstringlist.h"
#include "QtCore/qpair.h"
#include "QtPrintSupport/qprinter.h"
+#include "QtCore/qdatetime.h"
#ifndef QT_NO_CUPS
#include <QtCore/qlibrary.h>
@@ -90,6 +91,18 @@ public:
QCUPSSupport();
~QCUPSSupport();
+ // Enum for values of job-hold-until option
+ enum JobHoldUntil {
+ NoHold = 0, //CUPS Default
+ Indefinite,
+ DayTime,
+ Night,
+ SecondShift,
+ ThirdShift,
+ Weekend,
+ SpecificTime
+ };
+
static bool isAvailable();
static int cupsVersion() { return isAvailable() ? CUPS_VERSION_MAJOR*10000+CUPS_VERSION_MINOR*100+CUPS_VERSION_PATCH : 0; }
int availablePrintersCount() const;
@@ -111,6 +124,14 @@ public:
QStringList options() const;
+ static QStringList cupsOptionsList(QPrinter *printer);
+ static void setCupsOptions(QPrinter *printer, const QStringList &cupsOptions);
+ static void setCupsOption(QStringList &cupsOptions, const QString &option, const QString &value);
+
+ static void setJobHold(QPrinter *printer, const JobHoldUntil jobHold = NoHold, const QTime &holdUntilTime = QTime());
+ static void setJobBilling(QPrinter *printer, const QString &jobBilling = QString());
+ static void setJobPriority(QPrinter *printer, int priority = 50);
+
static bool printerHasPPD(const char *printerName);
QString unicodeString(const char *s);
@@ -139,6 +160,8 @@ private:
QT_END_NAMESPACE
+Q_DECLARE_METATYPE(QCUPSSupport::JobHoldUntil)
+
#endif // QT_NO_CUPS
#endif