summaryrefslogtreecommitdiffstats
path: root/src/printsupport/widgets/qcupsjobwidget.cpp
diff options
context:
space:
mode:
authorAlbert Astals Cid <albert.astals.cid@kdab.com>2017-12-06 10:19:13 +0100
committerAlbert Astals Cid <albert.astals.cid@kdab.com>2017-12-18 15:23:29 +0000
commitad77a2447e8cc828dadd268c72428556e3cc8a84 (patch)
treecc7d29e7f9ab3b69e30022c1c1acd3b735695dad /src/printsupport/widgets/qcupsjobwidget.cpp
parentc61810b6f5f645c79adabea35304ac76946c50d0 (diff)
CUPS: Use default cups job-priority instead of 50
This also reads the job-priority from lpoptions if set there for the particular printer Change-Id: I75d983c377d2135a0b0d3e028829a7384a5e1897 Reviewed-by: Laurent Montel <laurent.montel@kdab.com> Reviewed-by: Frederik Gladhorn <frederik.gladhorn@qt.io>
Diffstat (limited to 'src/printsupport/widgets/qcupsjobwidget.cpp')
-rw-r--r--src/printsupport/widgets/qcupsjobwidget.cpp20
1 files changed, 17 insertions, 3 deletions
diff --git a/src/printsupport/widgets/qcupsjobwidget.cpp b/src/printsupport/widgets/qcupsjobwidget.cpp
index 8fb07c86b0..f21e229ebc 100644
--- a/src/printsupport/widgets/qcupsjobwidget.cpp
+++ b/src/printsupport/widgets/qcupsjobwidget.cpp
@@ -52,6 +52,8 @@
#include <QPrinter>
#include <QPrintEngine>
+#include <kernel/qprintdevice_p.h>
+
QT_BEGIN_NAMESPACE
/*!
@@ -64,9 +66,10 @@ QT_BEGIN_NAMESPACE
\inmodule QtPrintSupport
*/
-QCupsJobWidget::QCupsJobWidget(QPrinter *printer, QWidget *parent)
+QCupsJobWidget::QCupsJobWidget(QPrinter *printer, QPrintDevice *printDevice, QWidget *parent)
: QWidget(parent),
- m_printer(printer)
+ m_printer(printer),
+ m_printDevice(printDevice)
{
m_ui.setupUi(this);
//set all the default values
@@ -151,7 +154,18 @@ QString QCupsJobWidget::jobBilling() const
void QCupsJobWidget::initJobPriority()
{
- setJobPriority(50);
+ int priority = -1;
+ if (m_printDevice) {
+ bool ok;
+ priority = m_printDevice->property(PDPK_CupsJobPriority).toInt(&ok);
+ if (!ok)
+ priority = -1;
+ }
+
+ if (priority < 0 || priority > 100)
+ priority = 50;
+
+ setJobPriority(priority);
}
void QCupsJobWidget::setJobPriority(int jobPriority)