File 0004-Remove-QCupsJobWidget-setPrinter.patch of Package libqt5-qtbase

From 881690969cc5a6a78df41e2d80ea1fa7bf07cb27 Mon Sep 17 00:00:00 2001
From: Albert Astals Cid <albert.astals.cid@kdab.com>
Date: Mon, 4 Dec 2017 12:57:40 +0100
Subject: [PATCH 05/54] Remove QCupsJobWidget::setPrinter

It is only ever called after the constructor so merge the code

Change-Id: I381165ad90c85342e5db3c16327d729388b71fb2
Reviewed-by: Andy Shaw <andy.shaw@qt.io>
---
 src/printsupport/dialogs/qprintdialog_unix.cpp |  3 +--
 src/printsupport/widgets/qcupsjobwidget.cpp    | 10 +++-------
 src/printsupport/widgets/qcupsjobwidget_p.h    |  3 +--
 3 files changed, 5 insertions(+), 11 deletions(-)

Index: qtbase-opensource-src-5.6.2/src/printsupport/dialogs/qprintdialog_unix.cpp
===================================================================
--- qtbase-opensource-src-5.6.2.orig/src/printsupport/dialogs/qprintdialog_unix.cpp
+++ qtbase-opensource-src-5.6.2/src/printsupport/dialogs/qprintdialog_unix.cpp
@@ -237,8 +237,7 @@ QPrintPropertiesDialog::QPrintProperties
     widget.pageSetup->setPrinter(printer);
 
 #ifndef QT_NO_CUPS
-    m_jobOptions = new QCupsJobWidget();
-    m_jobOptions->setPrinter(printer);
+    m_jobOptions = new QCupsJobWidget(printer);
     widget.tabs->addTab(m_jobOptions, tr("Job Options"));
 #endif
 }
Index: qtbase-opensource-src-5.6.2/src/printsupport/widgets/qcupsjobwidget.cpp
===================================================================
--- qtbase-opensource-src-5.6.2.orig/src/printsupport/widgets/qcupsjobwidget.cpp
+++ qtbase-opensource-src-5.6.2/src/printsupport/widgets/qcupsjobwidget.cpp
@@ -61,7 +61,8 @@ QT_BEGIN_NAMESPACE
  */
 
 QCupsJobWidget::QCupsJobWidget(QWidget *parent)
-    : QWidget(parent)
+    : QWidget(parent),
+      m_printer(Q_NULLPTR)
 {
     m_ui.setupUi(this);
     //set all the default values
@@ -72,13 +73,21 @@ QCupsJobWidget::QCupsJobWidget(QWidget *
     initBannerPages();
 }
 
-QCupsJobWidget::~QCupsJobWidget()
+QCupsJobWidget::QCupsJobWidget(QPrinter *printer, QWidget *parent)
+    : QWidget(parent),
+      m_printer(printer)
 {
+    m_ui.setupUi(this);
+    //set all the default values
+    //TODO restore last used values
+    initJobHold();
+    initJobBilling();
+    initJobPriority();
+    initBannerPages();
 }
 
-void QCupsJobWidget::setPrinter(QPrinter *printer)
+QCupsJobWidget::~QCupsJobWidget()
 {
-    m_printer = printer;
 }
 
 void QCupsJobWidget::setupPrinter()
Index: qtbase-opensource-src-5.6.2/src/printsupport/widgets/qcupsjobwidget_p.h
===================================================================
--- qtbase-opensource-src-5.6.2.orig/src/printsupport/widgets/qcupsjobwidget_p.h
+++ qtbase-opensource-src-5.6.2/src/printsupport/widgets/qcupsjobwidget_p.h
@@ -65,8 +65,8 @@ class QCupsJobWidget : public QWidget
 
 public:
     explicit QCupsJobWidget(QWidget *parent = 0);
+    explicit QCupsJobWidget(QPrinter *printer, QWidget *parent = nullptr);
     ~QCupsJobWidget();
-    void setPrinter(QPrinter *printer);
     void setupPrinter();
 
 private Q_SLOTS:
openSUSE Build Service is sponsored by