Script 'mail_helper' called by obssrc
Hello community,

here is the log from the commit of package kjobwidgets for openSUSE:Factory 
checked in at 2021-07-15 23:59:49
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/kjobwidgets (Old)
 and      /work/SRC/openSUSE:Factory/.kjobwidgets.new.2625 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "kjobwidgets"

Thu Jul 15 23:59:49 2021 rev:93 rq:905510 version:5.84.0

Changes:
--------
--- /work/SRC/openSUSE:Factory/kjobwidgets/kjobwidgets.changes  2021-06-16 
20:35:39.639204111 +0200
+++ /work/SRC/openSUSE:Factory/.kjobwidgets.new.2625/kjobwidgets.changes        
2021-07-16 00:01:36.372988588 +0200
@@ -1,0 +2,10 @@
+Sun Jul  4 07:45:36 UTC 2021 - Christophe Giboudeaux <christo...@krop.fr>
+
+- Update to 5.84.0
+  * New feature release
+  * For more details please see:
+  * https://kde.org/announcements/frameworks/5/5.84.0
+- Changes since 5.83.0:
+  * Add KJobCreator manual test
+
+-------------------------------------------------------------------

Old:
----
  kjobwidgets-5.83.0.tar.xz
  kjobwidgets-5.83.0.tar.xz.sig

New:
----
  kjobwidgets-5.84.0.tar.xz
  kjobwidgets-5.84.0.tar.xz.sig

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ kjobwidgets.spec ++++++
--- /var/tmp/diff_new_pack.qzxbKX/_old  2021-07-16 00:01:36.988983458 +0200
+++ /var/tmp/diff_new_pack.qzxbKX/_new  2021-07-16 00:01:36.992983426 +0200
@@ -17,14 +17,14 @@
 
 
 %define lname   libKF5JobWidgets5
-%define _tar_path 5.83
+%define _tar_path 5.84
 # Full KF5 version (e.g. 5.33.0)
 %{!?_kf5_version: %global _kf5_version %{version}}
 # Last major and minor KF5 version (e.g. 5.33)
 %{!?_kf5_bugfix_version: %define _kf5_bugfix_version %(echo %{_kf5_version} | 
awk -F. '{print $1"."$2}')}
 %bcond_without lang
 Name:           kjobwidgets
-Version:        5.83.0
+Version:        5.84.0
 Release:        0
 Summary:        Widgets for showing progress of asynchronous jobs
 License:        LGPL-2.1-or-later


++++++ kjobwidgets-5.83.0.tar.xz -> kjobwidgets-5.84.0.tar.xz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/kjobwidgets-5.83.0/CMakeLists.txt 
new/kjobwidgets-5.84.0/CMakeLists.txt
--- old/kjobwidgets-5.83.0/CMakeLists.txt       2021-06-05 11:20:49.000000000 
+0200
+++ new/kjobwidgets-5.84.0/CMakeLists.txt       2021-07-03 14:14:39.000000000 
+0200
@@ -1,11 +1,11 @@
 cmake_minimum_required(VERSION 3.16)
 
-set(KF_VERSION "5.83.0") # handled by release scripts
-set(KF_DEP_VERSION "5.83.0") # handled by release scripts
+set(KF_VERSION "5.84.0") # handled by release scripts
+set(KF_DEP_VERSION "5.84.0") # handled by release scripts
 project(KJobWidgets VERSION ${KF_VERSION})
 
 include(FeatureSummary)
-find_package(ECM 5.83.0  NO_MODULE)
+find_package(ECM 5.84.0  NO_MODULE)
 set_package_properties(ECM PROPERTIES TYPE REQUIRED DESCRIPTION "Extra CMake 
Modules." URL "https://commits.kde.org/extra-cmake-modules";)
 feature_summary(WHAT REQUIRED_PACKAGES_NOT_FOUND 
FATAL_ON_MISSING_REQUIRED_PACKAGES)
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/kjobwidgets-5.83.0/po/de/kjobwidgets5_qt.po 
new/kjobwidgets-5.84.0/po/de/kjobwidgets5_qt.po
--- old/kjobwidgets-5.83.0/po/de/kjobwidgets5_qt.po     2021-06-05 
11:20:49.000000000 +0200
+++ new/kjobwidgets-5.84.0/po/de/kjobwidgets5_qt.po     2021-07-03 
14:14:39.000000000 +0200
@@ -21,9 +21,8 @@
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
 "Content-Transfer-Encoding: 8bit\n"
-"X-Generator: Lokalize 19.04.3\n"
-"X-Qt-Contexts: true\n"
 "Plural-Forms: nplurals=2; plural=n != 1;\n"
+"X-Qt-Contexts: true\n"
 
 #: kjobtrackerformatters.cpp:27
 #, qt-format
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/kjobwidgets-5.83.0/po/hi/kjobwidgets5_qt.po 
new/kjobwidgets-5.84.0/po/hi/kjobwidgets5_qt.po
--- old/kjobwidgets-5.83.0/po/hi/kjobwidgets5_qt.po     2021-06-05 
11:20:49.000000000 +0200
+++ new/kjobwidgets-5.84.0/po/hi/kjobwidgets5_qt.po     2021-07-03 
14:14:39.000000000 +0200
@@ -5,260 +5,198 @@
 # Ravishankar Shrivastava <raviratl...@yahoo.com>, 2007.
 # Ravishankar Shrivastava <raviratl...@aol.in>, 2008.
 # G Karunakar <karuna...@indlinux.org>, 2009, 2010, 2012.
+# Raghavendra Kamath <ra...@raghukamath.com>, 2021.
 msgid ""
 msgstr ""
 "Project-Id-Version: kdelibs4\n"
 "Report-Msgid-Bugs-To: http://bugs.kde.org\n";
 "POT-Creation-Date: 2014-03-23 01:50+0000\n"
-"PO-Revision-Date: 2012-06-25 15:27+0530\n"
-"Last-Translator: G Karunakar <karuna...@indlinux.org>\n"
-"Language-Team: Hindi <kde-i18n-...@kde.org>\n"
+"PO-Revision-Date: 2021-06-29 21:11+0530\n"
+"Last-Translator: Raghavendra Kamath <ra...@raghukamath.com>\n"
+"Language-Team: kde-hindi\n"
 "Language: hi\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
 "Content-Transfer-Encoding: 8bit\n"
 "Plural-Forms: nplurals=2; plural=(n!=1);\n"
-"X-Generator: Lokalize 1.2\n"
+"X-Generator: Lokalize 21.04.2\n"
 "X-Qt-Contexts: true\n"
 
 #: kjobtrackerformatters.cpp:27
-#, fuzzy, qt-format
-#| msgctxt "@item:intext %1 is a real number, e.g. 1.23 days"
-#| msgid "%1 days"
+#, qt-format
 msgctxt "KJobTrackerFormatters|@item:intext"
 msgid "%n day(s)"
 msgid_plural "%n day(s)"
-msgstr[0] "%1 ?????????"
-msgstr[1] "%1 ?????????"
+msgstr[0] "%n ?????????"
+msgstr[1] "%n ?????????"
 
 #: kjobtrackerformatters.cpp:34
-#, fuzzy, qt-format
-#| msgctxt "@item:intext %1 is a real number, e.g. 1.23 hours"
-#| msgid "%1 hours"
+#, qt-format
 msgctxt "KJobTrackerFormatters|@item:intext"
 msgid "%n hour(s)"
 msgid_plural "%n hour(s)"
-msgstr[0] "%1 ????????????"
-msgstr[1] "%1 ????????????"
+msgstr[0] "%n ????????????"
+msgstr[1] "%n ????????????"
 
 #: kjobtrackerformatters.cpp:41
-#, fuzzy, qt-format
-#| msgctxt "@item:intext %1 is a real number, e.g. 1.23 minutes"
-#| msgid "%1 minutes"
+#, qt-format
 msgctxt "KJobTrackerFormatters|@item:intext"
 msgid "%n minute(s)"
 msgid_plural "%n minute(s)"
-msgstr[0] "%1 ????????????"
-msgstr[1] "%1 ????????????"
+msgstr[0] "%n ????????????"
+msgstr[1] "%n ????????????"
 
 #: kjobtrackerformatters.cpp:48
-#, fuzzy, qt-format
-#| msgctxt "@item:intext %1 is a real number, e.g. 1.23 seconds"
-#| msgid "%1 seconds"
+#, qt-format
 msgctxt "KJobTrackerFormatters|@item:intext"
 msgid "%n second(s)"
 msgid_plural "%n second(s)"
-msgstr[0] "%1 ??????????????????"
-msgstr[1] "%1 ??????????????????"
+msgstr[0] "%n ??????????????????"
+msgstr[1] "%n ??????????????????"
 
 #: kjobtrackerformatters.cpp:69
-#, fuzzy, qt-format
-#| msgctxt ""
-#| "@item:intext days and hours. This uses the previous item:intext messages. "
-#| "If this does not fit the grammar of your language please contact the i18n "
-#| "team to solve the problem"
-#| msgid "%1 and %2"
+#, qt-format
 msgctxt "KJobTrackerFormatters|@item:intext days and hours."
 msgid "%1 and %2"
 msgstr "%1 ?????? %2"
 
 #: kjobtrackerformatters.cpp:73
-#, fuzzy, qt-format
-#| msgctxt ""
-#| "@item:intext days and hours. This uses the previous item:intext messages. "
-#| "If this does not fit the grammar of your language please contact the i18n "
-#| "team to solve the problem"
-#| msgid "%1 and %2"
+#, qt-format
 msgctxt "KJobTrackerFormatters|@item:intext hours and minutes."
 msgid "%1 and %2"
 msgstr "%1 ?????? %2"
 
 #: kjobtrackerformatters.cpp:78
-#, fuzzy, qt-format
-#| msgctxt ""
-#| "@item:intext days and hours. This uses the previous item:intext messages. "
-#| "If this does not fit the grammar of your language please contact the i18n "
-#| "team to solve the problem"
-#| msgid "%1 and %2"
+#, qt-format
 msgctxt "KJobTrackerFormatters|@item:intext minutes and seconds."
 msgid "%1 and %2"
 msgstr "%1 ?????? %2"
 
 #: kstatusbarjobtracker.cpp:161
-#, fuzzy
-#| msgid "Stop"
 msgctxt "KStatusBarJobTracker|"
 msgid "Stop"
 msgstr "???????????????"
 
 #: kstatusbarjobtracker.cpp:240
-#, fuzzy
-#| msgid " Stalled "
 msgctxt "KStatusBarJobTracker|"
 msgid " Stalled "
-msgstr "???????????? ?????????"
+msgstr " ?????????????????? "
 
 #: kstatusbarjobtracker.cpp:242
-#, fuzzy, qt-format
-#| msgid " %1/s "
+#, qt-format
 msgctxt "KStatusBarJobTracker|"
 msgid " %1/s "
-msgstr " %1/s "
+msgstr " %1/?????? "
 
 #: kwidgetjobtracker.cpp:279 kwidgetjobtracker.cpp:287
-#, fuzzy, qt-format
-#| msgctxt "%1 is the label, we add a ':' to it"
-#| msgid "%1:"
+#, qt-format
 msgctxt "KWidgetJobTracker|%1 is the label, we add a ':' to it"
 msgid "%1:"
 msgstr "%1:"
 
 #: kwidgetjobtracker.cpp:347
-#, fuzzy, qt-format
-#| msgid "%2 of %3 complete"
-#| msgid_plural "%2 of %3 complete"
+#, qt-format
 msgctxt "KWidgetJobTracker|"
 msgid "%1 of %2 complete"
 msgid_plural "%1 of %2 complete"
-msgstr[0] "%3 ???????????????, ??????????????? ????????? %2 "
-msgstr[1] "%3 ???????????????, ??????????????? ????????? %2 "
+msgstr[0] "%2 ????????? ?????? %1 ???????????????"
+msgstr[1] "%2 ????????? ?????? %1 ???????????????"
 
 #: kwidgetjobtracker.cpp:366 kwidgetjobtracker.cpp:383
-#, fuzzy, qt-format
-#| msgid "%2 / %1 folder"
-#| msgid_plural "%2 / %1 folders"
+#, qt-format
 msgctxt "KWidgetJobTracker|"
 msgid "%1 / %n folder(s)"
 msgid_plural "%1 / %n folder(s)"
-msgstr[0] "%2 / %1 ?????????????????????"
-msgstr[1] "%2 / %1 ???????????????????????????"
+msgstr[0] "%1 / %n ?????????????????????"
+msgstr[1] "%1 / %n ?????????????????????"
 
 #: kwidgetjobtracker.cpp:370 kwidgetjobtracker.cpp:388
-#, fuzzy, qt-format
-#| msgid "%2 / %1 file"
-#| msgid_plural "%2 / %1 files"
+#, qt-format
 msgctxt "KWidgetJobTracker|"
 msgid "%1 / %n file(s)"
 msgid_plural "%1 / %n file(s)"
-msgstr[0] "%2 / %1 ???????????????"
-msgstr[1] "%2 / %1 ?????????????????????"
+msgstr[0] "%1 / %n ???????????????"
+msgstr[1] "%1 / %n ?????????????????????"
 
 #: kwidgetjobtracker.cpp:399
-#, fuzzy, qt-format
-#| msgid "%2 / %1 file"
-#| msgid_plural "%2 / %1 files"
+#, qt-format
 msgctxt "KWidgetJobTracker|"
 msgid "%1 / %n item(s)"
 msgid_plural "%1 / %n item(s)"
-msgstr[0] "%2 / %1 ???????????????"
-msgstr[1] "%2 / %1 ?????????????????????"
+msgstr[0] "%1 / %n ???????????????(??????)"
+msgstr[1] "%1 / %n ?????????????????????"
 
 #: kwidgetjobtracker.cpp:410
-#, fuzzy, qt-format
-#| msgid "%1% of %2"
+#, qt-format
 msgctxt "KWidgetJobTracker|"
 msgid "%1% of %2"
-msgstr "%2 ????????? ?????? %1 %"
+msgstr "%2 ????????? ?????? %1%"
 
 #: kwidgetjobtracker.cpp:414
-#, fuzzy, qt-format
-#| msgid "%2% of 1 file"
-#| msgid_plural "%2% of %1 files"
+#, qt-format
 msgctxt "KWidgetJobTracker|"
 msgid "%1% of %n file(s)"
 msgid_plural "%1% of %n file(s)"
-msgstr[0] "%2 % ????????? ?????? 1 ???????????????"
-msgstr[1] "%2 % ????????? ?????? %1 ?????????????????????"
+msgstr[0] "%1% ????????? ?????? %n ???????????????"
+msgstr[1] "%1% ????????? ?????? %n ?????????????????????"
 
 #: kwidgetjobtracker.cpp:416
-#, fuzzy, qt-format
-#| msgid "%1%"
+#, qt-format
 msgctxt "KWidgetJobTracker|"
 msgid "%1%"
 msgstr "%1%"
 
 #: kwidgetjobtracker.cpp:429
-#, fuzzy
-#| msgid "Stalled"
 msgctxt "KWidgetJobTracker|"
 msgid "Stalled"
-msgstr "???????????? ?????????"
+msgstr "??????????????????"
 
 #: kwidgetjobtracker.cpp:436
-#, fuzzy, qt-format
-#| msgid "%2/s (%3 remaining)"
-#| msgid_plural "%2/s (%3 remaining)"
+#, qt-format
 msgctxt "KWidgetJobTracker|"
 msgid "%1/s (%2 remaining)"
 msgid_plural "%1/s (%2 remaining)"
-msgstr[0] "%2/s ( %3 ????????? ?????? )"
-msgstr[1] "%2/s ( %3 ????????? ?????? )"
+msgstr[0] "%1/?????? ( %2 ????????? ?????? )"
+msgstr[1] "%1/s ( %2 ???????????? ????????? )"
 
 #: kwidgetjobtracker.cpp:439
-#, fuzzy, qt-format
-#| msgctxt "speed in bytes per second"
-#| msgid "%1/s"
+#, qt-format
 msgctxt "KWidgetJobTracker|speed in bytes per second"
 msgid "%1/s"
-msgstr " %1/s "
+msgstr "%1/??????"
 
 #: kwidgetjobtracker.cpp:447
-#, fuzzy
-#| msgid "&Close"
 msgctxt "KWidgetJobTracker|"
 msgid "&Close"
 msgstr "????????? ???????????? (&C)"
 
 #: kwidgetjobtracker.cpp:449
-#, fuzzy
-#| msgid "Close the current window or document"
 msgctxt "KWidgetJobTracker|"
 msgid "Close the current window or document"
 msgstr "????????????????????? ??????????????? ?????? 
??????????????????????????? ????????? ????????????"
 
 #: kwidgetjobtracker.cpp:462
-#, fuzzy, qt-format
-#| msgid "%1/s (done)"
+#, qt-format
 msgctxt "KWidgetJobTracker|"
 msgid "%1/s (done)"
-msgstr "%1/s (?????????????????????)"
+msgstr "%1/?????? (?????????????????????)"
 
 #: kwidgetjobtracker.cpp:468
-#, fuzzy
-#| msgid "&Resume"
 msgctxt "KWidgetJobTracker|"
 msgid "&Resume"
 msgstr "???????????????????????? (&R)"
 
 #: kwidgetjobtracker.cpp:474 kwidgetjobtracker.cpp:545
-#, fuzzy
-#| msgid "&Pause"
 msgctxt "KWidgetJobTracker|"
 msgid "&Pause"
 msgstr "??????????????? (&P)"
 
 #: kwidgetjobtracker.cpp:498
-#, fuzzy
-#| msgctxt "The source url of a job"
-#| msgid "Source:"
 msgctxt "KWidgetJobTracker|The source url of a job"
 msgid "Source:"
-msgstr "???????????????:"
+msgstr "??????????????? :"
 
 #: kwidgetjobtracker.cpp:506
-#, fuzzy
-#| msgctxt "The destination url of a job"
-#| msgid "Destination:"
 msgctxt "KWidgetJobTracker|The destination url of a job"
 msgid "Destination:"
 msgstr "??????????????????:"
@@ -266,73 +204,58 @@
 #: kwidgetjobtracker.cpp:530 kwidgetjobtracker.cpp:712
 msgctxt "KWidgetJobTracker|"
 msgid "Click this to expand the dialog, to show details"
-msgstr ""
+msgstr "??????????????? ?????????????????? ?????? ?????????, ??????????????? 
?????? ????????????????????? ???????????? ?????? ????????? ????????? 
??????????????? ????????????"
 
 #: kwidgetjobtracker.cpp:565
-#, fuzzy
-#| msgid "&Keep this window open after transfer is complete"
 msgctxt "KWidgetJobTracker|"
 msgid "&Keep this window open after transfer is complete"
-msgstr "??????????????????????????? ???????????? ???????????? ?????? ????????? 
?????? ??????????????? ?????? ???????????? ????????????. (&K)"
+msgstr "??????????????????????????? ???????????? ???????????? ?????? ????????? 
?????? ??????????????? ?????? ???????????? ??????????????? (&K)"
 
 #: kwidgetjobtracker.cpp:573
-#, fuzzy
-#| msgid "Open &File"
 msgctxt "KWidgetJobTracker|"
 msgid "Open &File"
 msgstr "??????????????? ??????????????? (&F)"
 
 #: kwidgetjobtracker.cpp:579
-#, fuzzy
-#| msgid "Open &Destination"
 msgctxt "KWidgetJobTracker|"
 msgid "Open &Destination"
 msgstr "?????????????????? ??????????????? (&D)"
 
 #: kwidgetjobtracker.cpp:587
-#, fuzzy
-#| msgid "&Cancel"
 msgctxt "KWidgetJobTracker|"
 msgid "&Cancel"
 msgstr "???????????? ???????????? (&C)"
 
 #: kwidgetjobtracker.cpp:595
-#, fuzzy
-#| msgid "Progress Dialog"
 msgctxt "KWidgetJobTracker|"
 msgid "Progress Dialog"
-msgstr "?????????????????? ??????????????? "
+msgstr "?????????????????? ???????????????"
 
 #: kwidgetjobtracker.cpp:608
-#, fuzzy, qt-format
-#| msgid "Delete item(s)"
+#, qt-format
 msgctxt "KWidgetJobTracker|"
 msgid "%n item(s)"
 msgid_plural "%n item(s)"
-msgstr[0] "????????????????????? ??????????????????"
-msgstr[1] "????????????????????? ??????????????????"
+msgstr[0] "%n ?????????????????????"
+msgstr[1] "%n ?????????????????????"
 
 #: kwidgetjobtracker.cpp:614
-#, fuzzy, qt-format
-#| msgid "%1 folder"
-#| msgid_plural "%1 folders"
+#, qt-format
 msgctxt "KWidgetJobTracker|"
 msgid "%n folder(s)"
 msgid_plural "%n folder(s)"
-msgstr[0] "%1 ?????????????????????"
-msgstr[1] "%1 ???????????????????????????"
+msgstr[0] "%n ?????????????????????"
+msgstr[1] "%n ?????????????????????"
 
 #: kwidgetjobtracker.cpp:618
-#, fuzzy, qt-format
-#| msgid "%1 file"
-#| msgid_plural "%1 files"
+#, qt-format
 msgctxt "KWidgetJobTracker|"
 msgid "%n file(s)"
 msgid_plural "%n file(s)"
-msgstr[0] "%1 ???????????????"
-msgstr[1] "%1 ?????????????????????"
+msgstr[0] "%n ???????????????"
+msgstr[1] "%n ?????????????????????"
 
 #: kwidgetjobtracker.cpp:705
 msgctxt "KWidgetJobTracker|"
 msgid "Click this to collapse the dialog, to hide details"
-msgstr ""
+msgstr "??????????????? ?????? ??????????????????????????? ???????????? ?????? 
?????????, ??????????????? ?????????????????? ?????? ????????? ?????? ?????? 
??????????????? ???????????? "
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/kjobwidgets-5.83.0/po/zh_CN/kjobwidgets5_qt.po 
new/kjobwidgets-5.84.0/po/zh_CN/kjobwidgets5_qt.po
--- old/kjobwidgets-5.83.0/po/zh_CN/kjobwidgets5_qt.po  2021-06-05 
11:20:49.000000000 +0200
+++ new/kjobwidgets-5.84.0/po/zh_CN/kjobwidgets5_qt.po  2021-07-03 
14:14:39.000000000 +0200
@@ -13,7 +13,7 @@
 msgid ""
 msgstr ""
 "Project-Id-Version: kdeorg\n"
-"PO-Revision-Date: 2021-06-03 16:05\n"
+"PO-Revision-Date: 2021-06-20 07:35\n"
 "Language-Team: Chinese Simplified\n"
 "Language: zh_CN\n"
 "MIME-Version: 1.0\n"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/kjobwidgets-5.83.0/src/CMakeLists.txt 
new/kjobwidgets-5.84.0/src/CMakeLists.txt
--- old/kjobwidgets-5.83.0/src/CMakeLists.txt   2021-06-05 11:20:49.000000000 
+0200
+++ new/kjobwidgets-5.84.0/src/CMakeLists.txt   2021-07-03 14:14:39.000000000 
+0200
@@ -1,20 +1,36 @@
 configure_file(config-kjobwidgets.h.cmake 
${CMAKE_CURRENT_BINARY_DIR}/config-kjobwidgets.h )
 
-ecm_create_qm_loader(kjobwidgets_QM_LOADER kjobwidgets5_qt)
+add_library(KF5JobWidgets)
+add_library(KF5::JobWidgets ALIAS KF5JobWidgets)
+
+set_target_properties(KF5JobWidgets PROPERTIES
+    VERSION     ${KJOBWIDGETS_VERSION}
+    SOVERSION   ${KJOBWIDGETS_SOVERSION}
+    EXPORT_NAME JobWidgets
+)
 
-set(kjobwidgets_SRCS
-  kabstractwidgetjobtracker.cpp
-  kdialogjobuidelegate.cpp
-  kjobtrackerformatters.cpp
-  kuiserverjobtracker.cpp
-  kuiserverv2jobtracker.cpp
-  kjobwidgets.cpp
-  kstatusbarjobtracker.cpp
-  kwidgetjobtracker.cpp
-  ${kjobwidgets_QM_LOADER}
+ecm_create_qm_loader(KF5JobWidgets kjobwidgets5_qt)
+
+set(kjobwidgets_dbus_SRCS)
+qt_add_dbus_interfaces(kjobwidgets_dbus_SRCS 
${CMAKE_CURRENT_SOURCE_DIR}/org.kde.JobViewServer.xml )
+qt_add_dbus_interface(kjobwidgets_dbus_SRCS 
${CMAKE_CURRENT_SOURCE_DIR}/org.kde.JobView.xml jobviewiface )
+
+qt_add_dbus_interfaces(kjobwidgets_dbus_SRCS 
${CMAKE_CURRENT_SOURCE_DIR}/org.kde.JobViewServerV2.xml )
+qt_add_dbus_interface(kjobwidgets_dbus_SRCS 
${CMAKE_CURRENT_SOURCE_DIR}/org.kde.JobViewV3.xml jobviewv3iface )
+
+target_sources(KF5JobWidgets PRIVATE
+    kabstractwidgetjobtracker.cpp
+    kdialogjobuidelegate.cpp
+    kjobtrackerformatters.cpp
+    kuiserverjobtracker.cpp
+    kuiserverv2jobtracker.cpp
+    kjobwidgets.cpp
+    kstatusbarjobtracker.cpp
+    kwidgetjobtracker.cpp
+    ${kjobwidgets_dbus_SRCS}
 )
 
-ecm_qt_declare_logging_category(kjobwidgets_SRCS
+ecm_qt_declare_logging_category(KF5JobWidgets
     HEADER debug.h
     IDENTIFIER KJOBWIDGETS
     CATEGORY_NAME kf.jobwidgets
@@ -23,14 +39,6 @@
     EXPORT KJOBWIDGETS
 )
 
-qt_add_dbus_interfaces(kjobwidgets_SRCS 
${CMAKE_CURRENT_SOURCE_DIR}/org.kde.JobViewServer.xml )
-qt_add_dbus_interface(kjobwidgets_SRCS 
${CMAKE_CURRENT_SOURCE_DIR}/org.kde.JobView.xml jobviewiface )
-
-qt_add_dbus_interfaces(kjobwidgets_SRCS 
${CMAKE_CURRENT_SOURCE_DIR}/org.kde.JobViewServerV2.xml )
-qt_add_dbus_interface(kjobwidgets_SRCS 
${CMAKE_CURRENT_SOURCE_DIR}/org.kde.JobViewV3.xml jobviewv3iface )
-
-add_library(KF5JobWidgets ${kjobwidgets_SRCS})
-
 ecm_generate_export_header(KF5JobWidgets
     BASE_NAME KJobWidgets
     GROUP_BASE_NAME KF
@@ -40,8 +48,6 @@
     EXCLUDE_DEPRECATED_BEFORE_AND_AT ${EXCLUDE_DEPRECATED_BEFORE_AND_AT}
 )
 
-add_library(KF5::JobWidgets ALIAS KF5JobWidgets)
-
 target_include_directories(KF5JobWidgets INTERFACE 
"$<INSTALL_INTERFACE:${KDE_INSTALL_INCLUDEDIR_KF5}/KJobWidgets>")
 
 target_link_libraries(KF5JobWidgets
@@ -58,12 +64,6 @@
   target_link_libraries(KF5JobWidgets PRIVATE Qt5::X11Extras)
 endif ()
 
-set_target_properties(KF5JobWidgets PROPERTIES VERSION   ${KJOBWIDGETS_VERSION}
-                                               SOVERSION 
${KJOBWIDGETS_SOVERSION}
-                                               EXPORT_NAME JobWidgets
-)
-
-
 ecm_generate_headers(KJobWidgets_HEADERS
   HEADER_NAMES
   KAbstractWidgetJobTracker
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/kjobwidgets-5.83.0/tests/CMakeLists.txt 
new/kjobwidgets-5.84.0/tests/CMakeLists.txt
--- old/kjobwidgets-5.83.0/tests/CMakeLists.txt 2021-06-05 11:20:49.000000000 
+0200
+++ new/kjobwidgets-5.84.0/tests/CMakeLists.txt 2021-07-03 14:14:39.000000000 
+0200
@@ -14,3 +14,9 @@
 kjobwidgets_executable_tests(
    kjobtrackerstest
 )
+
+set(kjobcreator_SRCS kjobcreator.cpp)
+qt_wrap_ui(kjobcreator_SRCS kjobcreator.ui)
+add_executable(kjobcreator ${kjobcreator_SRCS})
+target_link_libraries(kjobcreator Qt5::Widgets KF5::JobWidgets)
+ecm_mark_as_test(kjobcreator)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/kjobwidgets-5.83.0/tests/kjobcreator.cpp 
new/kjobwidgets-5.84.0/tests/kjobcreator.cpp
--- old/kjobwidgets-5.83.0/tests/kjobcreator.cpp        1970-01-01 
01:00:00.000000000 +0100
+++ new/kjobwidgets-5.84.0/tests/kjobcreator.cpp        2021-07-03 
14:14:39.000000000 +0200
@@ -0,0 +1,335 @@
+/*
+    SPDX-FileCopyrightText: 2021 Kai Uwe Broulik <k...@broulik.de>
+
+    SPDX-License-Identifier: LGPL-2.0-or-later
+*/
+
+#include "kjobcreator.h"
+
+#include <QApplication>
+#include <QIcon>
+#include <QPushButton>
+
+#include <KUiServerJobTracker>
+#include <KUiServerV2JobTracker>
+#include <KWidgetJobTracker>
+
+#include <limits>
+
+TestJob::TestJob(QObject *parent)
+    : KJob(parent)
+{
+}
+
+void TestJob::start()
+{
+    m_started = true;
+}
+
+bool TestJob::started() const
+{
+    return m_started;
+}
+
+void TestJob::finish()
+{
+    emitResult();
+}
+
+void TestJob::setPercentage(int percent)
+{
+    setPercent(percent);
+}
+
+void TestJob::setProcessedMiB(double bytes)
+{
+    setProcessedAmount(KJob::Bytes, bytes * 1024 * 1024);
+}
+
+void TestJob::setTotalMiB(double bytes)
+{
+    setTotalAmount(KJob::Bytes, bytes * 1024 * 1024);
+}
+
+void TestJob::setProcessedFiles(int files)
+{
+    setProcessedAmount(KJob::Files, files);
+}
+
+void TestJob::setTotalFiles(int files)
+{
+    setTotalAmount(KJob::Files, files);
+}
+
+void TestJob::setProcessedDirectories(int directories)
+{
+    setProcessedAmount(KJob::Directories, directories);
+}
+
+void TestJob::setTotalDirectories(int directories)
+{
+    setTotalAmount(KJob::Directories, directories);
+}
+
+void TestJob::setProcessedItems(int items)
+{
+    setProcessedAmount(KJob::Items, items);
+}
+
+void TestJob::setTotalItems(int items)
+{
+    setTotalAmount(KJob::Items, items);
+}
+
+void TestJob::setSpeedMiB(double speed)
+{
+    emitSpeed(speed * 1024 * 1024);
+}
+
+void TestJob::setErrorState(int errorCode, const QString &errorTest)
+{
+    setError(errorCode);
+    setErrorText(errorTest);
+}
+
+void TestJob::setSuspendable(bool suspendable)
+{
+    auto caps = capabilities();
+    caps.setFlag(KJob::Suspendable, suspendable);
+    setCapabilities(caps);
+}
+
+void TestJob::setKillable(bool killable)
+{
+    auto caps = capabilities();
+    caps.setFlag(KJob::Killable, killable);
+    setCapabilities(caps);
+}
+
+bool TestJob::doKill()
+{
+    // TODO add checkbox for testing what happens when you try to kill a job 
that refuses?
+    return true;
+}
+
+bool TestJob::doSuspend()
+{
+    return true;
+}
+
+bool TestJob::doResume()
+{
+    return true;
+}
+
+TestDialog::TestDialog(QWidget *parent)
+    : QDialog(parent)
+{
+    m_ui.setupUi(this);
+
+    m_ui.desktopEntry->setText(QGuiApplication::desktopFileName());
+
+    m_ui.processedBytes->setMaximum(std::numeric_limits<double>::max());
+    m_ui.totalBytes->setMaximum(m_ui.processedBytes->maximum());
+    m_ui.processedFiles->setMaximum(std::numeric_limits<int>::max());
+    m_ui.totalFiles->setMaximum(m_ui.processedFiles->maximum());
+    m_ui.processedDirectories->setMaximum(std::numeric_limits<int>::max());
+    m_ui.totalDirectories->setMaximum(m_ui.processedDirectories->maximum());
+    m_ui.processedItems->setMaximum(std::numeric_limits<int>::max());
+    m_ui.totalItems->setMaximum(m_ui.processedItems->maximum());
+
+    m_ui.speed->setMaximum(std::numeric_limits<double>::max());
+
+    
m_ui.createButton->setIcon(QIcon::fromTheme(QStringLiteral("document-new")));
+    
m_ui.startButton->setIcon(QIcon::fromTheme(QStringLiteral("media-playback-start")));
+    
m_ui.suspendButton->setIcon(QIcon::fromTheme(QStringLiteral("media-playback-pause")));
+    
m_ui.killButton->setIcon(QIcon::fromTheme(QStringLiteral("media-playback-stop")));
+    m_ui.finishButton->setIcon(QIcon::fromTheme(QStringLiteral("view-task")));
+
+    updateUiState();
+
+    connect(m_ui.desktopEntry, &QLineEdit::editingFinished, this, [this] {
+        QGuiApplication::setDesktopFileName(m_ui.desktopEntry->text());
+        updateUiState();
+    });
+
+    connect(m_ui.destUrl, &QLineEdit::editingFinished, this, 
&TestDialog::updateJob);
+
+    connect(m_ui.emitDescriptionButton, &QPushButton::clicked, this, [this] {
+        m_job->description(m_job,
+                           m_ui.title->text(),
+                           qMakePair(m_ui.descriptionLabel1->text(), 
m_ui.descriptionValue1->text()),
+                           qMakePair(m_ui.descriptionLabel2->text(), 
m_ui.descriptionValue2->text()));
+    });
+
+    connect(m_ui.percent, &QSlider::valueChanged, this, 
&TestDialog::updateJob);
+    connect(m_ui.processedBytes, 
QOverload<double>::of(&QDoubleSpinBox::valueChanged), this, 
&TestDialog::updateJob);
+    connect(m_ui.totalBytes, 
QOverload<double>::of(&QDoubleSpinBox::valueChanged), this, 
&TestDialog::updateJob);
+    connect(m_ui.processedFiles, QOverload<int>::of(&QSpinBox::valueChanged), 
this, &TestDialog::updateJob);
+    connect(m_ui.totalFiles, QOverload<int>::of(&QSpinBox::valueChanged), 
this, &TestDialog::updateJob);
+    connect(m_ui.processedDirectories, 
QOverload<int>::of(&QSpinBox::valueChanged), this, &TestDialog::updateJob);
+    connect(m_ui.totalDirectories, 
QOverload<int>::of(&QSpinBox::valueChanged), this, &TestDialog::updateJob);
+    connect(m_ui.processedItems, QOverload<int>::of(&QSpinBox::valueChanged), 
this, &TestDialog::updateJob);
+    connect(m_ui.totalItems, QOverload<int>::of(&QSpinBox::valueChanged), 
this, &TestDialog::updateJob);
+    connect(m_ui.speed, QOverload<double>::of(&QDoubleSpinBox::valueChanged), 
this, &TestDialog::updateJob);
+
+    connect(m_ui.infoMessage, &QLineEdit::returnPressed, m_ui.emitInfoMessage, 
&QPushButton::click);
+    connect(m_ui.emitInfoMessage, &QPushButton::clicked, this, [this] {
+        m_job->infoMessage(m_job, m_ui.infoMessage->text(), QString());
+    });
+
+    connect(m_ui.errorCombo, QOverload<int>::of(&QComboBox::activated), this, 
&TestDialog::updateJob);
+    connect(m_ui.errorText, &QLineEdit::editingFinished, this, 
&TestDialog::updateJob);
+
+    connect(m_ui.suspendableCheck, &QCheckBox::toggled, this, 
&TestDialog::updateJob);
+    connect(m_ui.killableCheck, &QCheckBox::toggled, this, 
&TestDialog::updateJob);
+
+    connect(m_ui.createButton, &QPushButton::clicked, this, [this] {
+        Q_ASSERT(!m_job);
+        m_job = new TestJob(this);
+        connect(m_job, &KJob::finished, this, [this] {
+            m_job = nullptr;
+            m_registeredWithWidgetTracker = false;
+            m_registeredWithUiServerTracker = false;
+            m_registeredWithUiServerV2Tracker = false;
+            updateUiState();
+        });
+        connect(m_job, &KJob::suspended, this, &TestDialog::updateUiState);
+        connect(m_job, &KJob::resumed, this, &TestDialog::updateUiState);
+
+        // KJob auto-calculates percent based on processed/total amount, so 
sync that back into the UI
+        connect(m_job, &KJob::percentChanged, this, [this](KJob *job, unsigned 
long percent) {
+            Q_UNUSED(job);
+            m_ui.percent->setValue(percent);
+        });
+
+        updateJob();
+        updateUiState();
+    });
+    connect(m_ui.startButton, &QPushButton::clicked, this, [this] {
+        m_job->start();
+        updateUiState();
+    });
+    connect(m_ui.suspendButton, &QPushButton::clicked, this, [this] {
+        if (m_job->isSuspended()) {
+            m_job->resume();
+        } else {
+            m_job->suspend();
+        }
+    });
+    connect(m_ui.killButton, &QPushButton::clicked, this, [this] {
+        m_job->kill();
+    });
+    connect(m_ui.finishButton, &QPushButton::clicked, this, [this] {
+        m_job->finish();
+    });
+
+    connect(m_ui.registerKWidgetJobTracker, &QPushButton::clicked, this, 
[this] {
+        if (!m_widgetTracker) {
+            // not passing "parent" so it spawns a new window
+            m_widgetTracker.reset(new KWidgetJobTracker(nullptr));
+        }
+        m_widgetTracker->registerJob(m_job.data());
+        m_registeredWithWidgetTracker = true;
+        updateUiState();
+    });
+    connect(m_ui.registerKUIServerJobTracker, &QPushButton::clicked, this, 
[this] {
+        if (!m_uiServerTracker) {
+            m_uiServerTracker.reset(new KUiServerJobTracker(nullptr));
+        }
+        m_uiServerTracker->registerJob(m_job.data());
+        m_registeredWithUiServerTracker = true;
+        updateUiState();
+    });
+    connect(m_ui.registerKUIServerV2JobTracker, &QPushButton::clicked, this, 
[this] {
+        if (!m_uiServerV2Tracker) {
+            m_uiServerV2Tracker.reset(new KUiServerV2JobTracker(nullptr));
+        }
+        m_uiServerV2Tracker->registerJob(m_job.data());
+        m_registeredWithUiServerV2Tracker = true;
+        updateUiState();
+    });
+}
+
+TestDialog::~TestDialog() = default;
+
+void TestDialog::closeEvent(QCloseEvent *event)
+{
+    Q_UNUSED(event)
+    if (m_job) {
+        m_job->kill(KJob::EmitResult);
+    }
+}
+
+void TestDialog::updateUiState()
+{
+    m_ui.destUrl->setEnabled(m_job);
+
+    m_ui.emitDescriptionButton->setEnabled(m_job);
+    m_ui.emitInfoMessage->setEnabled(m_job);
+
+    m_ui.processedBytes->setEnabled(m_job);
+    m_ui.totalBytes->setEnabled(m_job);
+    m_ui.processedFiles->setEnabled(m_job);
+    m_ui.totalFiles->setEnabled(m_job);
+    m_ui.processedDirectories->setEnabled(m_job);
+    m_ui.totalDirectories->setEnabled(m_job);
+    m_ui.processedItems->setEnabled(m_job);
+    m_ui.totalItems->setEnabled(m_job);
+
+    m_ui.percent->setEnabled(m_job);
+    m_ui.speed->setEnabled(m_job);
+    m_ui.errorCombo->setEnabled(m_job);
+    m_ui.errorText->setEnabled(m_job);
+
+    m_ui.createButton->setEnabled(!m_job);
+    m_ui.startButton->setEnabled(m_job && !m_job->started());
+    m_ui.suspendButton->setEnabled(m_job);
+    m_ui.suspendButton->setChecked(m_job && m_job->isSuspended());
+    m_ui.killButton->setEnabled(m_job);
+    m_ui.finishButton->setEnabled(m_job);
+
+    m_ui.registerKWidgetJobTracker->setEnabled(m_job && 
!m_registeredWithWidgetTracker);
+    m_ui.registerKUIServerJobTracker->setEnabled(m_job && 
!m_registeredWithUiServerTracker);
+    m_ui.registerKUIServerV2JobTracker->setEnabled(m_job && 
!m_registeredWithUiServerV2Tracker && 
!QGuiApplication::desktopFileName().isEmpty());
+}
+
+void TestDialog::updateJob()
+{
+    if (!m_job) {
+        return;
+    }
+
+    m_job->setProperty("destUrl", m_ui.destUrl->text());
+    m_job->setProperty("immediateProgressReporting", 
m_ui.immediateCheck->isChecked());
+
+    m_job->setPercentage(m_ui.percent->value());
+
+    m_job->setProcessedMiB(m_ui.processedBytes->value());
+    m_job->setTotalMiB(m_ui.totalBytes->value());
+    m_job->setProcessedFiles(m_ui.processedFiles->value());
+    m_job->setTotalFiles(m_ui.totalFiles->value());
+    m_job->setProcessedDirectories(m_ui.processedDirectories->value());
+    m_job->setTotalDirectories(m_ui.totalDirectories->value());
+    m_job->setProcessedItems(m_ui.processedItems->value());
+    m_job->setTotalItems(m_ui.totalItems->value());
+
+    m_job->setSpeedMiB(m_ui.speed->value());
+
+    m_job->setErrorState(m_ui.errorCombo->currentIndex(), 
m_ui.errorText->text());
+
+    m_job->setSuspendable(m_ui.suspendableCheck->isChecked());
+    m_job->setKillable(m_ui.killableCheck->isChecked());
+}
+
+int main(int argc, char **argv)
+{
+    QApplication app(argc, argv);
+    app.setApplicationName(QStringLiteral("kjobcreator"));
+    app.setDesktopFileName(QStringLiteral("org.kde.dolphin"));
+
+    TestDialog dialog;
+    dialog.show();
+
+    return app.exec();
+}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/kjobwidgets-5.83.0/tests/kjobcreator.h 
new/kjobwidgets-5.84.0/tests/kjobcreator.h
--- old/kjobwidgets-5.83.0/tests/kjobcreator.h  1970-01-01 01:00:00.000000000 
+0100
+++ new/kjobwidgets-5.84.0/tests/kjobcreator.h  2021-07-03 14:14:39.000000000 
+0200
@@ -0,0 +1,88 @@
+/*
+    SPDX-FileCopyrightText: 2021 Kai Uwe Broulik <k...@broulik.de>
+
+    SPDX-License-Identifier: LGPL-2.0-or-later
+*/
+
+#ifndef KJOBCREATOR_H
+#define KJOBCREATOR_H
+
+#include <QDialog>
+#include <QPointer>
+#include <QScopedPointer>
+
+#include <KJob>
+
+#include "ui_kjobcreator.h"
+
+class KWidgetJobTracker;
+class KUiServerJobTracker;
+class KUiServerV2JobTracker;
+
+class TestJob : public KJob
+{
+    Q_OBJECT
+
+public:
+    TestJob(QObject *parent = nullptr);
+
+    void start() override;
+    bool started() const;
+
+    void finish();
+
+    void setPercentage(int percent);
+
+    void setProcessedMiB(double bytes);
+    void setTotalMiB(double bytes);
+    void setProcessedFiles(int files);
+    void setTotalFiles(int files);
+    void setProcessedDirectories(int directories);
+    void setTotalDirectories(int directories);
+    void setProcessedItems(int items);
+    void setTotalItems(int items);
+
+    void setSpeedMiB(double speed);
+
+    void setErrorState(int errorCode, const QString &errorText);
+
+    void setKillable(bool killable);
+    void setSuspendable(bool suspendable);
+
+protected:
+    bool doKill() override;
+    bool doSuspend() override;
+    bool doResume() override;
+
+private:
+    bool m_started = false;
+};
+
+class TestDialog : public QDialog
+{
+    Q_OBJECT
+
+public:
+    TestDialog(QWidget *parent = nullptr);
+    ~TestDialog();
+
+protected:
+    void closeEvent(QCloseEvent *event) override;
+
+private:
+    void updateUiState();
+    void updateJob();
+
+    Ui_KJobCreator m_ui;
+
+    QPointer<TestJob> m_job;
+
+    QScopedPointer<KWidgetJobTracker> m_widgetTracker;
+    bool m_registeredWithWidgetTracker = false;
+    QScopedPointer<KUiServerJobTracker> m_uiServerTracker;
+    bool m_registeredWithUiServerTracker = false;
+    QScopedPointer<KUiServerV2JobTracker> m_uiServerV2Tracker;
+    bool m_registeredWithUiServerV2Tracker = false;
+};
+
+#endif // KJOBCREATOR_H
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/kjobwidgets-5.83.0/tests/kjobcreator.ui 
new/kjobwidgets-5.84.0/tests/kjobcreator.ui
--- old/kjobwidgets-5.83.0/tests/kjobcreator.ui 1970-01-01 01:00:00.000000000 
+0100
+++ new/kjobwidgets-5.84.0/tests/kjobcreator.ui 2021-07-03 14:14:39.000000000 
+0200
@@ -0,0 +1,500 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<ui version="4.0">
+ <class>KJobCreator</class>
+ <widget class="QDialog" name="KJobCreator">
+  <property name="geometry">
+   <rect>
+    <x>0</x>
+    <y>0</y>
+    <width>566</width>
+    <height>644</height>
+   </rect>
+  </property>
+  <property name="windowTitle">
+   <string>KJobCreator</string>
+  </property>
+  <layout class="QVBoxLayout" name="verticalLayout">
+   <item>
+    <layout class="QFormLayout" name="formLayout_2">
+     <item row="0" column="0">
+      <widget class="QLabel" name="label_10">
+       <property name="text">
+        <string>Desktop Entry</string>
+       </property>
+      </widget>
+     </item>
+     <item row="0" column="1">
+      <widget class="QLineEdit" name="desktopEntry"/>
+     </item>
+     <item row="2" column="0">
+      <widget class="QLabel" name="label_2">
+       <property name="text">
+        <string>DestUrl</string>
+       </property>
+      </widget>
+     </item>
+     <item row="2" column="1">
+      <widget class="QLineEdit" name="destUrl"/>
+     </item>
+     <item row="4" column="0">
+      <widget class="QLineEdit" name="descriptionLabel1">
+       <property name="text">
+        <string/>
+       </property>
+       <property name="placeholderText">
+        <string>Label 1</string>
+       </property>
+      </widget>
+     </item>
+     <item row="4" column="1">
+      <widget class="QLineEdit" name="descriptionValue1">
+       <property name="placeholderText">
+        <string>Description 1</string>
+       </property>
+      </widget>
+     </item>
+     <item row="5" column="0">
+      <widget class="QLineEdit" name="descriptionLabel2">
+       <property name="placeholderText">
+        <string>Label 2</string>
+       </property>
+      </widget>
+     </item>
+     <item row="5" column="1">
+      <widget class="QLineEdit" name="descriptionValue2">
+       <property name="placeholderText">
+        <string>Description 2</string>
+       </property>
+      </widget>
+     </item>
+     <item row="6" column="1">
+      <layout class="QHBoxLayout" name="horizontalLayout_5">
+       <item>
+        <spacer name="horizontalSpacer">
+         <property name="orientation">
+          <enum>Qt::Horizontal</enum>
+         </property>
+         <property name="sizeHint" stdset="0">
+          <size>
+           <width>40</width>
+           <height>20</height>
+          </size>
+         </property>
+        </spacer>
+       </item>
+       <item>
+        <widget class="QPushButton" name="emitDescriptionButton">
+         <property name="text">
+          <string>Emit &amp;Description</string>
+         </property>
+        </widget>
+       </item>
+      </layout>
+     </item>
+     <item row="8" column="0">
+      <widget class="QLabel" name="label_8">
+       <property name="text">
+        <string>Percent</string>
+       </property>
+      </widget>
+     </item>
+     <item row="8" column="1">
+      <widget class="QSlider" name="percent">
+       <property name="maximum">
+        <number>100</number>
+       </property>
+       <property name="tracking">
+        <bool>false</bool>
+       </property>
+       <property name="orientation">
+        <enum>Qt::Horizontal</enum>
+       </property>
+       <property name="tickInterval">
+        <number>1</number>
+       </property>
+      </widget>
+     </item>
+     <item row="9" column="0">
+      <widget class="QLabel" name="label">
+       <property name="text">
+        <string>Bytes</string>
+       </property>
+      </widget>
+     </item>
+     <item row="9" column="1">
+      <layout class="QHBoxLayout" name="horizontalLayout">
+       <item>
+        <widget class="QDoubleSpinBox" name="processedBytes">
+         <property name="suffix">
+          <string> MiB</string>
+         </property>
+         <property name="decimals">
+          <number>6</number>
+         </property>
+         <property name="minimum">
+          <double>-1.000000000000000</double>
+         </property>
+        </widget>
+       </item>
+       <item>
+        <widget class="QLabel" name="bytesOfLabel">
+         <property name="text">
+          <string>of</string>
+         </property>
+        </widget>
+       </item>
+       <item>
+        <widget class="QDoubleSpinBox" name="totalBytes">
+         <property name="suffix">
+          <string> MiB</string>
+         </property>
+         <property name="decimals">
+          <number>6</number>
+         </property>
+         <property name="minimum">
+          <double>-1.000000000000000</double>
+         </property>
+        </widget>
+       </item>
+      </layout>
+     </item>
+     <item row="14" column="0">
+      <widget class="QLabel" name="label_3">
+       <property name="text">
+        <string>Speed</string>
+       </property>
+      </widget>
+     </item>
+     <item row="14" column="1">
+      <widget class="QDoubleSpinBox" name="speed">
+       <property name="suffix">
+        <string> MiB/s</string>
+       </property>
+       <property name="decimals">
+        <number>6</number>
+       </property>
+      </widget>
+     </item>
+     <item row="15" column="0">
+      <widget class="QLabel" name="label_5">
+       <property name="text">
+        <string>Info Message</string>
+       </property>
+      </widget>
+     </item>
+     <item row="15" column="1">
+      <layout class="QHBoxLayout" name="horizontalLayout_4">
+       <item>
+        <widget class="QLineEdit" name="infoMessage"/>
+       </item>
+       <item>
+        <widget class="QPushButton" name="emitInfoMessage">
+         <property name="text">
+          <string>Emit</string>
+         </property>
+        </widget>
+       </item>
+      </layout>
+     </item>
+     <item row="17" column="0">
+      <widget class="QLabel" name="label_7">
+       <property name="text">
+        <string>Error</string>
+       </property>
+      </widget>
+     </item>
+     <item row="17" column="1">
+      <layout class="QHBoxLayout" name="horizontalLayout_7">
+       <item>
+        <widget class="QComboBox" name="errorCombo">
+         <item>
+          <property name="text">
+           <string>No Error</string>
+          </property>
+         </item>
+         <item>
+          <property name="text">
+           <string>User Canceled</string>
+          </property>
+         </item>
+         <item>
+          <property name="text">
+           <string>Error</string>
+          </property>
+         </item>
+        </widget>
+       </item>
+       <item>
+        <widget class="QLineEdit" name="errorText">
+         <property name="placeholderText">
+          <string>Error message</string>
+         </property>
+        </widget>
+       </item>
+      </layout>
+     </item>
+     <item row="3" column="0">
+      <widget class="QLabel" name="label_4">
+       <property name="text">
+        <string>Title</string>
+       </property>
+      </widget>
+     </item>
+     <item row="3" column="1">
+      <widget class="QLineEdit" name="title">
+       <property name="text">
+        <string>Test Job</string>
+       </property>
+      </widget>
+     </item>
+     <item row="11" column="1">
+      <layout class="QHBoxLayout" name="horizontalLayout_3">
+       <item>
+        <widget class="QSpinBox" name="processedFiles"/>
+       </item>
+       <item>
+        <widget class="QLabel" name="filesOfLabel">
+         <property name="text">
+          <string>of</string>
+         </property>
+        </widget>
+       </item>
+       <item>
+        <widget class="QSpinBox" name="totalFiles"/>
+       </item>
+      </layout>
+     </item>
+     <item row="11" column="0">
+      <widget class="QLabel" name="label_9">
+       <property name="text">
+        <string>Files</string>
+       </property>
+      </widget>
+     </item>
+     <item row="18" column="1">
+      <layout class="QHBoxLayout" name="horizontalLayout_8">
+       <item>
+        <widget class="QCheckBox" name="suspendableCheck">
+         <property name="text">
+          <string>Suspendable</string>
+         </property>
+         <property name="checked">
+          <bool>true</bool>
+         </property>
+        </widget>
+       </item>
+       <item>
+        <widget class="QCheckBox" name="killableCheck">
+         <property name="text">
+          <string>Killable</string>
+         </property>
+         <property name="checked">
+          <bool>true</bool>
+         </property>
+        </widget>
+       </item>
+       <item>
+        <widget class="QCheckBox" name="immediateCheck">
+         <property name="text">
+          <string>Immediate</string>
+         </property>
+        </widget>
+       </item>
+      </layout>
+     </item>
+     <item row="12" column="0">
+      <widget class="QLabel" name="label_11">
+       <property name="text">
+        <string>Directories</string>
+       </property>
+      </widget>
+     </item>
+     <item row="13" column="0">
+      <widget class="QLabel" name="label_12">
+       <property name="text">
+        <string>Items</string>
+       </property>
+      </widget>
+     </item>
+     <item row="12" column="1">
+      <layout class="QHBoxLayout" name="horizontalLayout_9">
+       <item>
+        <widget class="QSpinBox" name="processedDirectories"/>
+       </item>
+       <item>
+        <widget class="QLabel" name="directoriesOfLabel">
+         <property name="text">
+          <string>of</string>
+         </property>
+        </widget>
+       </item>
+       <item>
+        <widget class="QSpinBox" name="totalDirectories"/>
+       </item>
+      </layout>
+     </item>
+     <item row="13" column="1">
+      <layout class="QHBoxLayout" name="horizontalLayout_10">
+       <item>
+        <widget class="QSpinBox" name="processedItems"/>
+       </item>
+       <item>
+        <widget class="QLabel" name="itemsOfLabel">
+         <property name="text">
+          <string>of</string>
+         </property>
+        </widget>
+       </item>
+       <item>
+        <widget class="QSpinBox" name="totalItems"/>
+       </item>
+      </layout>
+     </item>
+    </layout>
+   </item>
+   <item>
+    <widget class="QFrame" name="frame_2">
+     <property name="frameShape">
+      <enum>QFrame::HLine</enum>
+     </property>
+     <property name="frameShadow">
+      <enum>QFrame::Raised</enum>
+     </property>
+    </widget>
+   </item>
+   <item>
+    <layout class="QHBoxLayout" name="horizontalLayout_2">
+     <item>
+      <widget class="QLabel" name="label_6">
+       <property name="text">
+        <string>Register with</string>
+       </property>
+      </widget>
+     </item>
+     <item>
+      <widget class="QPushButton" name="registerKWidgetJobTracker">
+       <property name="enabled">
+        <bool>false</bool>
+       </property>
+       <property name="text">
+        <string>KWidgetJobTracker</string>
+       </property>
+      </widget>
+     </item>
+     <item>
+      <widget class="QPushButton" name="registerKUIServerJobTracker">
+       <property name="enabled">
+        <bool>false</bool>
+       </property>
+       <property name="text">
+        <string>KUIServerJobTracker</string>
+       </property>
+      </widget>
+     </item>
+     <item>
+      <widget class="QPushButton" name="registerKUIServerV2JobTracker">
+       <property name="enabled">
+        <bool>false</bool>
+       </property>
+       <property name="text">
+        <string>KUIServerV2JobTracke&amp;r</string>
+       </property>
+      </widget>
+     </item>
+     <item>
+      <spacer name="horizontalSpacer_2">
+       <property name="orientation">
+        <enum>Qt::Horizontal</enum>
+       </property>
+       <property name="sizeHint" stdset="0">
+        <size>
+         <width>40</width>
+         <height>20</height>
+        </size>
+       </property>
+      </spacer>
+     </item>
+    </layout>
+   </item>
+   <item>
+    <widget class="QFrame" name="frame">
+     <property name="frameShape">
+      <enum>QFrame::HLine</enum>
+     </property>
+     <property name="frameShadow">
+      <enum>QFrame::Raised</enum>
+     </property>
+    </widget>
+   </item>
+   <item>
+    <layout class="QHBoxLayout" name="horizontalLayout_6">
+     <item>
+      <spacer name="horizontalSpacer_3">
+       <property name="orientation">
+        <enum>Qt::Horizontal</enum>
+       </property>
+       <property name="sizeHint" stdset="0">
+        <size>
+         <width>40</width>
+         <height>20</height>
+        </size>
+       </property>
+      </spacer>
+     </item>
+     <item>
+      <widget class="QPushButton" name="createButton">
+       <property name="text">
+        <string>&amp;Create</string>
+       </property>
+       <property name="default">
+        <bool>true</bool>
+       </property>
+      </widget>
+     </item>
+     <item>
+      <widget class="QPushButton" name="startButton">
+       <property name="enabled">
+        <bool>false</bool>
+       </property>
+       <property name="text">
+        <string>&amp;Start</string>
+       </property>
+      </widget>
+     </item>
+     <item>
+      <widget class="QPushButton" name="suspendButton">
+       <property name="enabled">
+        <bool>false</bool>
+       </property>
+       <property name="text">
+        <string>Sus&amp;pend</string>
+       </property>
+       <property name="checkable">
+        <bool>true</bool>
+       </property>
+      </widget>
+     </item>
+     <item>
+      <widget class="QPushButton" name="killButton">
+       <property name="enabled">
+        <bool>false</bool>
+       </property>
+       <property name="text">
+        <string>&amp;Kill</string>
+       </property>
+      </widget>
+     </item>
+     <item>
+      <widget class="QPushButton" name="finishButton">
+       <property name="text">
+        <string>Finish</string>
+       </property>
+      </widget>
+     </item>
+    </layout>
+   </item>
+  </layout>
+ </widget>
+ <resources/>
+ <connections/>
+</ui>

Reply via email to