Hello community, here is the log from the commit of package libyui-qt-pkg for openSUSE:Factory checked in at 2019-12-14 12:03:38 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/libyui-qt-pkg (Old) and /work/SRC/openSUSE:Factory/.libyui-qt-pkg.new.4691 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "libyui-qt-pkg" Sat Dec 14 12:03:38 2019 rev:50 rq:755646 version:2.47.0 Changes: -------- --- /work/SRC/openSUSE:Factory/libyui-qt-pkg/libyui-qt-pkg.changes 2019-11-18 20:00:06.985902389 +0100 +++ /work/SRC/openSUSE:Factory/.libyui-qt-pkg.new.4691/libyui-qt-pkg.changes 2019-12-14 12:04:25.643393104 +0100 @@ -1,0 +2,20 @@ +Tue Dec 10 16:18:41 UTC 2019 - Rodion Iafarov <[email protected]> + +- Increase SO version to 11 (bsc#1132247) +- 2.47.0 + +------------------------------------------------------------------- +Mon Dec 9 16:58:24 UTC 2019 - Ladislav Slezák <[email protected]> + +- Partially restore the "Package Groups" view, display only special + package groups (orphaned, unneeded, multiversion,... packages) + (bsc#1155132) +- 2.46.11 + +------------------------------------------------------------------- +Thu Nov 28 11:17:12 UTC 2019 - Stefan Hundhammer <[email protected]> + +- Fixed Qt 5.14 deprecated warnings (bsc#1155550) +- 2.46.10 + +------------------------------------------------------------------- @@ -1472 +1491,0 @@ - Old: ---- libyui-qt-pkg-2.46.9.tar.bz2 New: ---- libyui-qt-pkg-2.47.0.tar.bz2 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ libyui-qt-pkg-doc.spec ++++++ --- /var/tmp/diff_new_pack.iZI9dn/_old 2019-12-14 12:04:26.395392973 +0100 +++ /var/tmp/diff_new_pack.iZI9dn/_new 2019-12-14 12:04:26.395392973 +0100 @@ -17,9 +17,9 @@ %define parent libyui-qt-pkg -%define so_version 10 +%define so_version 11 Name: %{parent}-doc -Version: 2.46.9 +Version: 2.47.0 Release: 0 Summary: Libyui-qt-pkg documentation License: LGPL-2.1-only OR LGPL-3.0-only @@ -31,7 +31,7 @@ BuildRequires: gcc-c++ BuildRequires: graphviz BuildRequires: graphviz-gnome -BuildRequires: libyui-devel >= 3.0.4 +BuildRequires: libyui-devel >= 3.9.0 BuildRequires: texlive-epstopdf-bin BuildRequires: texlive-latex BuildArch: noarch ++++++ libyui-qt-pkg.spec ++++++ --- /var/tmp/diff_new_pack.iZI9dn/_old 2019-12-14 12:04:26.411392970 +0100 +++ /var/tmp/diff_new_pack.iZI9dn/_new 2019-12-14 12:04:26.415392970 +0100 @@ -16,12 +16,12 @@ # -%define so_version 10 +%define so_version 11 %define bin_name %{name}%{so_version} %define libyui_qt_devel_version libyui-qt-devel >= 2.50.1 %define libzypp_devel_version libzypp-devel >= 15.14.0 Name: libyui-qt-pkg -Version: 2.46.9 +Version: 2.47.0 Release: 0 Summary: Libyui - Qt Package Selector License: LGPL-2.1-only OR LGPL-3.0-only @@ -34,7 +34,7 @@ BuildRequires: libqt5-qtbase-devel BuildRequires: libqt5-qtsvg-devel BuildRequires: libqt5-qtx11extras-devel -BuildRequires: libyui-devel >= 3.0.4 +BuildRequires: libyui-devel >= 3.9.0 BuildRequires: pkgconfig %if 0%{?suse_version} > 1325 BuildRequires: libboost_headers-devel @@ -54,8 +54,8 @@ Supplements: (libyui-qt and yast2-packager) Conflicts: libqdialogsolver1 < 1.4.0 Provides: %{name} = %{version} -Provides: yast2-qt-pkg = 2.42.0 -Obsoletes: yast2-qt-pkg < 2.42.0 +Provides: yast2-qt-pkg = 2.47.0 +Obsoletes: yast2-qt-pkg < 2.47.0 # force removal of all previous library versions (bsc#1148622), # expands to: libyui-qt-pkg1 libyui-qt-pkg2 ... libyui-qt-pkg{so_version - 1} Obsoletes: %(echo `seq -s " " -f "libyui-qt-pkg%.f" $(expr %{so_version} - 1)`) ++++++ libyui-qt-pkg-2.46.9.tar.bz2 -> libyui-qt-pkg-2.47.0.tar.bz2 ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libyui-qt-pkg-2.46.9/Dockerfile new/libyui-qt-pkg-2.47.0/Dockerfile --- old/libyui-qt-pkg-2.46.9/Dockerfile 2019-11-11 13:07:30.000000000 +0100 +++ new/libyui-qt-pkg-2.47.0/Dockerfile 2019-12-10 17:36:52.000000000 +0100 @@ -1,4 +1,4 @@ # Use the libyui/devel image as the base -FROM libyui/devel +FROM registry.opensuse.org/devel/libraries/libyui/containers/libyui-devel:latest COPY . /usr/src/app diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libyui-qt-pkg-2.46.9/SOURCECONF.cmake new/libyui-qt-pkg-2.47.0/SOURCECONF.cmake --- old/libyui-qt-pkg-2.46.9/SOURCECONF.cmake 2019-11-11 13:07:30.000000000 +0100 +++ new/libyui-qt-pkg-2.47.0/SOURCECONF.cmake 2019-12-10 17:36:52.000000000 +0100 @@ -26,6 +26,7 @@ YQPkgLangList.cc YQPkgList.cc YQPkgObjList.cc + YQPkgPackageClassificationFilterView.cc YQPkgPatchFilterView.cc YQPkgPatchList.cc YQPkgPatternList.cc @@ -74,6 +75,7 @@ YQPkgLangList.h YQPkgList.h YQPkgObjList.h + YQPkgPackageClassificationFilterView.h YQPkgPatchFilterView.h YQPkgPatchList.h YQPkgPatternList.h diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libyui-qt-pkg-2.46.9/VERSION.cmake new/libyui-qt-pkg-2.47.0/VERSION.cmake --- old/libyui-qt-pkg-2.46.9/VERSION.cmake 2019-11-11 13:07:30.000000000 +0100 +++ new/libyui-qt-pkg-2.47.0/VERSION.cmake 2019-12-10 17:36:52.000000000 +0100 @@ -1,6 +1,6 @@ SET( VERSION_MAJOR "2" ) -SET( VERSION_MINOR "46" ) -SET( VERSION_PATCH "9" ) +SET( VERSION_MINOR "47" ) +SET( VERSION_PATCH "0" ) SET( VERSION "${VERSION_MAJOR}.${VERSION_MINOR}.${VERSION_PATCH}" ) ##### This is need for the libyui core, ONLY. diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libyui-qt-pkg-2.46.9/package/libyui-qt-pkg-doc.spec new/libyui-qt-pkg-2.47.0/package/libyui-qt-pkg-doc.spec --- old/libyui-qt-pkg-2.46.9/package/libyui-qt-pkg-doc.spec 2019-11-11 13:07:30.000000000 +0100 +++ new/libyui-qt-pkg-2.47.0/package/libyui-qt-pkg-doc.spec 2019-12-10 17:36:52.000000000 +0100 @@ -17,9 +17,9 @@ %define parent libyui-qt-pkg -%define so_version 10 +%define so_version 11 Name: %{parent}-doc -Version: 2.46.9 +Version: 2.47.0 Release: 0 Summary: Libyui-qt-pkg documentation License: LGPL-2.1-only OR LGPL-3.0-only @@ -31,7 +31,7 @@ BuildRequires: gcc-c++ BuildRequires: graphviz BuildRequires: graphviz-gnome -BuildRequires: libyui-devel >= 3.0.4 +BuildRequires: libyui-devel >= 3.9.0 BuildRequires: texlive-epstopdf-bin BuildRequires: texlive-latex BuildArch: noarch diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libyui-qt-pkg-2.46.9/package/libyui-qt-pkg.changes new/libyui-qt-pkg-2.47.0/package/libyui-qt-pkg.changes --- old/libyui-qt-pkg-2.46.9/package/libyui-qt-pkg.changes 2019-11-11 13:07:30.000000000 +0100 +++ new/libyui-qt-pkg-2.47.0/package/libyui-qt-pkg.changes 2019-12-10 17:36:52.000000000 +0100 @@ -1,4 +1,24 @@ ------------------------------------------------------------------- +Tue Dec 10 16:18:41 UTC 2019 - Rodion Iafarov <[email protected]> + +- Increase SO version to 11 (bsc#1132247) +- 2.47.0 + +------------------------------------------------------------------- +Mon Dec 9 16:58:24 UTC 2019 - Ladislav Slezák <[email protected]> + +- Partially restore the "Package Groups" view, display only special + package groups (orphaned, unneeded, multiversion,... packages) + (bsc#1155132) +- 2.46.11 + +------------------------------------------------------------------- +Thu Nov 28 11:17:12 UTC 2019 - Stefan Hundhammer <[email protected]> + +- Fixed Qt 5.14 deprecated warnings (bsc#1155550) +- 2.46.10 + +------------------------------------------------------------------- Mon Nov 11 12:05:47 UTC 2019 - Stasiek Michalski <[email protected]> - Switch to native rpm boolean dependency syntax (boo#1156428) @@ -163,7 +183,7 @@ ------------------------------------------------------------------- Tue Jun 19 08:52:21 UTC 2018 - [email protected] -- Drop code related to qt solver plugin which is dead for long time +- Drop code related to qt solver plugin which is dead for long time (bsc#1088759) - 2.45.17 @@ -272,14 +292,14 @@ - Fixed crash in conflict resolver dialog: No longer call libzypp function that always returns null pointer (bsc#941398) -- 2.45.2 +- 2.45.2 ------------------------------------------------------------------- Wed Aug 12 19:10:53 CEST 2015 - [email protected] - Handle mixed multiversion packages (fate#318778) - Fixed libzypp deprecated warning -- 2.45.1 +- 2.45.1 ------------------------------------------------------------------- Mon Jun 22 13:46:17 UTC 2015 - [email protected] @@ -423,7 +443,7 @@ ------------------------------------------------------------------- Thu Jan 17 14:34:22 CET 2013 - [email protected] -- Fixed endcoding of entries in package history (bnc #775608) +- Fixed endcoding of entries in package history (bnc #775608) - Version 2.42.5 ------------------------------------------------------------------- @@ -481,7 +501,7 @@ ------------------------------------------------------------------- Tue Mar 6 14:36:45 CET 2012 - [email protected] -- Fixed bnc#691572: Formatting Package Descriptions +- Fixed bnc#691572: Formatting Package Descriptions - Version: 2.21.19 ------------------------------------------------------------------- @@ -518,7 +538,7 @@ ------------------------------------------------------------------- Tue Nov 8 14:43:20 CET 2011 - [email protected] -- Fixed untranslated rpm package groups (bnc #722325) +- Fixed untranslated rpm package groups (bnc #722325) - Version: 2.21.15 ------------------------------------------------------------------- @@ -539,14 +559,14 @@ - Fixed bnc#721810: Disabled option "Ignore recommended packages for already installed packages" for update mode - + - Version: 2.21.12 ------------------------------------------------------------------- Tue Oct 11 14:15:20 CEST 2011 - [email protected] - Fixed bnc#718197: YaST2 Qt package manager opens RMB context - menus at a wrong position, usability issue + menus at a wrong position, usability issue - Version: 2.21.11 ------------------------------------------------------------------- @@ -632,21 +652,21 @@ ------------------------------------------------------------------- Tue Oct 12 15:57:01 CEST 2010 - [email protected] -- fixed bnc #422226: Switching patterns should scroll the +- fixed bnc #422226: Switching patterns should scroll the package list back to the top - 2.20.1 ------------------------------------------------------------------- Tue Jul 13 13:53:01 UTC 2010 - [email protected] -- bnc#621649 patterns with no categories were supposed to be +- bnc#621649 patterns with no categories were supposed to be displayed at the top, not randomly - 2.20.0 ------------------------------------------------------------------- Fri Apr 30 11:21:19 CEST 2010 - [email protected] -- Added solver options: +- Added solver options: * cleanup when deleting packages * allow vendor change - 2.19.2 @@ -742,7 +762,7 @@ ------------------------------------------------------------------- Mon Sep 28 11:36:14 CEST 2009 - [email protected] -- fixed bnc #532518: YaST in translation +- fixed bnc #532518: YaST in translation - V 2.18.14 ------------------------------------------------------------------- @@ -755,19 +775,19 @@ Mon Sep 14 11:33:11 CEST 2009 - [email protected] - Applied patch that fixes sorting by Fabien Crespel -- V 2.18.12 +- V 2.18.12 ------------------------------------------------------------------- Tue Sep 8 17:00:04 CEST 2009 - [email protected] -- Removed wrong package version from file list and change log view +- Removed wrong package version from file list and change log view (#bnc 528750) ------------------------------------------------------------------- Fri Aug 14 10:14:22 CEST 2009 - [email protected] - Applied patch for optimal column width by Frank Schaefer -- V 2.18.11 +- V 2.18.11 ------------------------------------------------------------------- Tue Aug 11 12:40:50 CEST 2009 - [email protected] @@ -797,16 +817,16 @@ ------------------------------------------------------------------- Mon Jul 27 12:04:03 CEST 2009 - [email protected] -- applied patch for autosize columns +- applied patch for autosize columns - patch by Frank Schäfer -- tested by Dave Plater +- tested by Dave Plater - bnc #441828 - V 2.18.10 ------------------------------------------------------------------- Wed Jul 22 16:19:10 CEST 2009 - [email protected] -- Start webpin client from 'Configuration' menu (FaTE #306928) +- Start webpin client from 'Configuration' menu (FaTE #306928) ------------------------------------------------------------------- Thu May 28 10:51:50 CEST 2009 - [email protected] @@ -828,7 +848,7 @@ Fri Apr 3 17:58:35 CEST 2009 - [email protected] - Fixed confusion caused by patterns (bnc #476965) -- V 2.18.7 +- V 2.18.7 ------------------------------------------------------------------- Fri Apr 3 15:51:09 CEST 2009 - [email protected] @@ -839,7 +859,7 @@ Thu Apr 2 10:35:05 CEST 2009 - [email protected] - Fixed libzypp dependency -- V 2.18.6 +- V 2.18.6 ------------------------------------------------------------------- Tue Mar 17 17:40:49 CET 2009 - [email protected] @@ -855,12 +875,12 @@ Thu Mar 12 17:52:29 CET 2009 - [email protected] - Fixed confusing system verification mode (bnc #285482) -- V 2.18.5 +- V 2.18.5 ------------------------------------------------------------------- Mon Mar 9 16:09:29 CET 2009 - [email protected] -- Fixed "Unsupported Packages" confirmation when removing unsupported packages (bnc #475186) +- Fixed "Unsupported Packages" confirmation when removing unsupported packages (bnc #475186) ------------------------------------------------------------------- Thu Feb 26 17:02:30 CET 2009 - [email protected] @@ -881,7 +901,7 @@ Wed Feb 4 18:24:46 CET 2009 - [email protected] - Save and restore open tabs -- V 2.18.4 +- V 2.18.4 ------------------------------------------------------------------- Wed Feb 4 14:13:15 CET 2009 - [email protected] @@ -893,7 +913,7 @@ ------------------------------------------------------------------- Wed Feb 4 13:54:08 CET 2009 - [email protected] -- Added tab context menu (move left, move right, close) +- Added tab context menu (move left, move right, close) ------------------------------------------------------------------- Thu Jan 29 11:59:13 CET 2009 - [email protected] @@ -904,7 +924,7 @@ http://preview.tinyurl.com/tabbed-pkg-browsing-follow-up - Moved PackageKit package groups filter view to separate class - Restored RPM groups filter view -- V 2.18.2 +- V 2.18.2 ------------------------------------------------------------------- Mon Jan 12 14:12:31 CET 2009 - [email protected] @@ -920,7 +940,7 @@ Fri Jan 9 17:59:43 CET 2009 - [email protected] - Fixed bnc #462778: Community repos show up as repo_1, repo_2, etc. - in Versions view + in Versions view ------------------------------------------------------------------- Fri Jan 2 15:42:19 CET 2009 - [email protected] @@ -955,13 +975,13 @@ - hide the solver information feature if the package is not present on the installation media (the popup has no sense there) (bnc #450065) -- V 2.17.23 +- V 2.17.23 ------------------------------------------------------------------- Tue Dec 2 14:06:07 CET 2008 - [email protected] - Fixed bnc #450280: Text cut off in repository list -- V 2.17.22 +- V 2.17.22 ------------------------------------------------------------------- Fri Nov 28 17:10:23 CET 2008 - [email protected] @@ -977,7 +997,7 @@ - Fixed fix for bnc #447273 (versions missing) that broke fix for bnc #441828 (column widths) -- V 2.17.20 +- V 2.17.20 ------------------------------------------------------------------- Mon Nov 24 17:45:49 CET 2008 - [email protected] @@ -989,29 +1009,29 @@ Wed Nov 19 17:36:24 CET 2008 - [email protected] - Fixed bnc #445415: No packages from patterns installed -- V 2.17.18 +- V 2.17.18 ------------------------------------------------------------------- Tue Nov 18 17:05:36 CET 2008 - [email protected] -- Fixed broken version numbers in change log +- Fixed broken version numbers in change log - V 2.17.17 ------------------------------------------------------------------- Thu Nov 13 19:22:46 CET 2008 - [email protected] -- Fixed over-wide buttons in dependency problem dialog +- Fixed over-wide buttons in dependency problem dialog ------------------------------------------------------------------- Wed Nov 12 17:57:41 CET 2008 - [email protected] - Improved table column widths (bnc #441828) - still not perfect, but much better + still not perfect, but much better ------------------------------------------------------------------- Wed Nov 12 15:11:28 CET 2008 - [email protected] -- Fixed over-wide [OK] button in package selector help +- Fixed over-wide [OK] button in package selector help - V 2.17.16 ------------------------------------------------------------------- @@ -1022,7 +1042,7 @@ ------------------------------------------------------------------- Mon Nov 3 16:44:47 CET 2008 - [email protected] -- Fixed bnc #438680: software installation description not +- Fixed bnc #438680: software installation description not refreshed after search ------------------------------------------------------------------- @@ -1030,7 +1050,7 @@ - Fixed bnc #381981: Bad initial size for secondary filters in "Repositories" filter view -- V 2.17.15 +- V 2.17.15 ------------------------------------------------------------------- Fri Oct 24 18:25:17 CEST 2008 - [email protected] @@ -1043,7 +1063,7 @@ - Fixed bnc #436783: Map Amusements/Teaching/* to Education - De-obfuscated RPM groups <--> PackageKit mapping -- V 2.17.13 +- V 2.17.13 ------------------------------------------------------------------- Wed Oct 15 15:15:08 CEST 2008 - [email protected] @@ -1056,7 +1076,7 @@ Tue Oct 14 13:06:48 CEST 2008 - [email protected] - Fixed bnc #434042: "Install -devel packages" doesn't work - with new library package naming scheme + with new library package naming scheme ------------------------------------------------------------------- Mon Oct 13 14:32:15 CEST 2008 - [email protected] @@ -1067,30 +1087,30 @@ Thu Oct 9 18:20:07 CEST 2008 - [email protected] - Fixed bnc #433914: YQPkgDiskUsageWarningDialog too wide -- V 2.17.11 +- V 2.17.11 ------------------------------------------------------------------- Thu Oct 9 17:35:47 CEST 2008 - [email protected] -- Fixed bnc #382202: WM_CLOSE closes window, but leaves y2base +- Fixed bnc #382202: WM_CLOSE closes window, but leaves y2base process running in undefined state - V 2.17.10 ------------------------------------------------------------------- Tue Oct 7 18:41:47 CEST 2008 - [email protected] -- Fixed bnc #429030: "Configuration" menu present in installation +- Fixed bnc #429030: "Configuration" menu present in installation - V 2.17.9 ------------------------------------------------------------------- Tue Oct 7 15:04:28 CEST 2008 - [email protected] -- Fixed bnc #421267: Missing newline in exported conflicts list +- Fixed bnc #421267: Missing newline in exported conflicts list ------------------------------------------------------------------- Thu Oct 2 13:20:46 CEST 2008 - [email protected] -- Fixed bnc #430392: Typo in error message +- Fixed bnc #430392: Typo in error message ------------------------------------------------------------------- Wed Oct 1 13:59:45 CEST 2008 - [email protected] @@ -1100,8 +1120,8 @@ ------------------------------------------------------------------- Fri Sep 26 16:53:35 CEST 2008 - [email protected] -- Fixed crash in Languages filter: redefined sort function for - languages so that it does not refer to zypp::ResObjects +- Fixed crash in Languages filter: redefined sort function for + languages so that it does not refer to zypp::ResObjects (zypp::Locale isn't one anymore)(bnc#428355) - V 2.17.8 @@ -1110,12 +1130,12 @@ - Ask for package licenses, not patch licenses even in online update mode -- V 2.17.7 +- V 2.17.7 ------------------------------------------------------------------- Fri Sep 5 16:22:28 CEST 2008 - [email protected] -- Fixed bnc #418676: Use title capitalization for groups +- Fixed bnc #418676: Use title capitalization for groups ------------------------------------------------------------------- Mon Aug 25 13:11:21 CEST 2008 - [email protected] @@ -1134,14 +1154,14 @@ - 2.17.5 - on SLE systems, warn before transaction if it includes unsupported software (fate#305057) - can also be enabled by defining + can also be enabled by defining YPKG_QT_CONFIRM_UNSUPPORTED_PACKAGES at compile time. - (fate#120366) search in file list option ------------------------------------------------------------------- Thu Aug 14 23:18:03 CEST 2008 - [email protected] -- 2.17.4 +- 2.17.4 - make the versions view scrollable (bnc#409096) ------------------------------------------------------------------- @@ -1469,4 +1489,3 @@ Thu Feb 14 15:01:26 CET 2008 - [email protected] - split off the package manager off yast2-qt - diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libyui-qt-pkg-2.46.9/package/libyui-qt-pkg.spec new/libyui-qt-pkg-2.47.0/package/libyui-qt-pkg.spec --- old/libyui-qt-pkg-2.46.9/package/libyui-qt-pkg.spec 2019-11-11 13:07:30.000000000 +0100 +++ new/libyui-qt-pkg-2.47.0/package/libyui-qt-pkg.spec 2019-12-10 17:36:52.000000000 +0100 @@ -16,12 +16,12 @@ # -%define so_version 10 +%define so_version 11 %define bin_name %{name}%{so_version} %define libyui_qt_devel_version libyui-qt-devel >= 2.50.1 %define libzypp_devel_version libzypp-devel >= 15.14.0 Name: libyui-qt-pkg -Version: 2.46.9 +Version: 2.47.0 Release: 0 Summary: Libyui - Qt Package Selector License: LGPL-2.1-only OR LGPL-3.0-only @@ -34,7 +34,7 @@ BuildRequires: libqt5-qtbase-devel BuildRequires: libqt5-qtsvg-devel BuildRequires: libqt5-qtx11extras-devel -BuildRequires: libyui-devel >= 3.0.4 +BuildRequires: libyui-devel >= 3.9.0 BuildRequires: pkgconfig %if 0%{?suse_version} > 1325 BuildRequires: libboost_headers-devel @@ -54,8 +54,8 @@ Supplements: (libyui-qt and yast2-packager) Conflicts: libqdialogsolver1 < 1.4.0 Provides: %{name} = %{version} -Provides: yast2-qt-pkg = 2.42.0 -Obsoletes: yast2-qt-pkg < 2.42.0 +Provides: yast2-qt-pkg = 2.47.0 +Obsoletes: yast2-qt-pkg < 2.47.0 # force removal of all previous library versions (bsc#1148622), # expands to: libyui-qt-pkg1 libyui-qt-pkg2 ... libyui-qt-pkg{so_version - 1} Obsoletes: %(echo `seq -s " " -f "libyui-qt-pkg%.f" $(expr %{so_version} - 1)`) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libyui-qt-pkg-2.46.9/src/YQPackageSelector.cc new/libyui-qt-pkg-2.47.0/src/YQPackageSelector.cc --- old/libyui-qt-pkg-2.46.9/src/YQPackageSelector.cc 2019-11-11 13:07:30.000000000 +0100 +++ new/libyui-qt-pkg-2.47.0/src/YQPackageSelector.cc 2019-12-10 17:36:52.000000000 +0100 @@ -95,6 +95,7 @@ #include "YQPkgHistoryDialog.h" #include "YQPkgLangList.h" #include "YQPkgList.h" +#include "YQPkgPackageClassificationFilterView.h" #include "YQPkgPatchFilterView.h" #include "YQPkgPatchList.h" #include "YQPkgPatternList.h" @@ -146,6 +147,7 @@ _detailsViews = 0; _filters = 0; _langList = 0; + _packageClassificationFilterView = 0; _patchFilterView = 0; _patchList = 0; _patternList = 0; @@ -345,6 +347,18 @@ // + // Package classification view + // + + _packageClassificationFilterView = new YQPkgPackageClassificationFilterView( parent ); + YUI_CHECK_NEW( _packageClassificationFilterView ); + _filters->addPage( _( "Package &Classification" ), _packageClassificationFilterView, "package_classification" ); + + connect( this, SIGNAL( loadData() ), + _packageClassificationFilterView, SLOT ( filter() ) ); + + + // // Languages view // @@ -962,6 +976,7 @@ connectFilter( _langList, _pkgList ); connectFilter( _repoFilterView, _pkgList, false ); connectFilter( _serviceFilterView, _pkgList, false ); + connectFilter( _packageClassificationFilterView, _pkgList, false ); connectFilter( _statusFilterView, _pkgList, false ); connectFilter( _searchFilterView, _pkgList, false ); diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libyui-qt-pkg-2.46.9/src/YQPackageSelector.h new/libyui-qt-pkg-2.47.0/src/YQPackageSelector.h --- old/libyui-qt-pkg-2.46.9/src/YQPackageSelector.h 2019-11-11 13:07:30.000000000 +0100 +++ new/libyui-qt-pkg-2.47.0/src/YQPackageSelector.h 2019-12-10 17:36:52.000000000 +0100 @@ -69,6 +69,7 @@ class YQPkgFilterTab; class YQPkgLangList; class YQPkgList; +class YQPkgPackageClassificationFilterView; class YQPkgPatchFilterView; class YQPkgPatchList; class YQPkgPatternList; @@ -397,6 +398,7 @@ YQPkgLangList * _langList; YQPkgList * _pkgList; YQPkgPatternList * _patternList; + YQPkgPackageClassificationFilterView * _packageClassificationFilterView; YQPkgSearchFilterView * _searchFilterView; YQPkgStatusFilterView * _statusFilterView; YQPkgTechnicalDetailsView * _pkgTechnicalDetailsView; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libyui-qt-pkg-2.46.9/src/YQPkgConflictDialog.cc new/libyui-qt-pkg-2.47.0/src/YQPkgConflictDialog.cc --- old/libyui-qt-pkg-2.46.9/src/YQPkgConflictDialog.cc 2019-11-11 13:07:30.000000000 +0100 +++ new/libyui-qt-pkg-2.47.0/src/YQPkgConflictDialog.cc 2019-12-10 17:36:52.000000000 +0100 @@ -50,7 +50,7 @@ #include <QLayout> #include <QMenu> #include <QPushButton> -#include <QDateTime> +#include <QElapsedTimer> #include <QPainter> #include <QMessageBox> #include <QDesktopWidget> @@ -251,7 +251,7 @@ prepareSolving(); yuiDebug() << "Solving..." << endl; - QTime solveTime; + QElapsedTimer solveTime; solveTime.start(); // Solve. @@ -274,7 +274,7 @@ prepareSolving(); yuiDebug() << "Verifying system..." << endl; - QTime solveTime; + QElapsedTimer solveTime; solveTime.start(); bool success = zypp::getZYpp()->resolver()->verifySystem(); // considerNewHardware diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libyui-qt-pkg-2.46.9/src/YQPkgConflictList.cc new/libyui-qt-pkg-2.47.0/src/YQPkgConflictList.cc --- old/libyui-qt-pkg-2.46.9/src/YQPkgConflictList.cc 2019-11-11 13:07:30.000000000 +0100 +++ new/libyui-qt-pkg-2.47.0/src/YQPkgConflictList.cc 2019-12-10 17:36:52.000000000 +0100 @@ -407,7 +407,9 @@ { QRadioButton *button = it.key(); zypp::ProblemSolution_Ptr solution = it.value(); - buffer.sprintf( " [%c] %s\n", button->isChecked() ? 'x' : ' ', qPrintable( fromUTF8( solution->description() ) ) ); + buffer = QString( " [%1] %2\n" ) + .arg( button->isChecked() ? "x" : " " ) + .arg( qPrintable( fromUTF8( solution->description() ) ) ); buffer += fromUTF8( solution->details() ); buffer += "\n"; file.write( buffer.toUtf8() ); diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libyui-qt-pkg-2.46.9/src/YQPkgDescriptionView.cc new/libyui-qt-pkg-2.47.0/src/YQPkgDescriptionView.cc --- old/libyui-qt-pkg-2.46.9/src/YQPkgDescriptionView.cc 2019-11-11 13:07:30.000000000 +0100 +++ new/libyui-qt-pkg-2.47.0/src/YQPkgDescriptionView.cc 2019-12-10 17:36:52.000000000 +0100 @@ -114,7 +114,10 @@ rit != patch->referencesEnd(); ++rit ) { - html_text += QString().sprintf("<li>%s (%s) : %s</li>", rit.id().c_str(), rit.type().c_str(), rit.title().c_str() ); + html_text += QString( "<li>%1 (%2) : %3</li>" ) + .arg( rit.id().c_str() ) + .arg( rit.type().c_str() ) + .arg( rit.title().c_str() ); } html_text += "</ul>"; } diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libyui-qt-pkg-2.46.9/src/YQPkgFilterTab.cc new/libyui-qt-pkg-2.47.0/src/YQPkgFilterTab.cc --- old/libyui-qt-pkg-2.46.9/src/YQPkgFilterTab.cc 2019-11-11 13:07:30.000000000 +0100 +++ new/libyui-qt-pkg-2.47.0/src/YQPkgFilterTab.cc 2019-12-10 17:36:52.000000000 +0100 @@ -312,7 +312,7 @@ { QAction * action = new QAction( pageLabel, this ); YUI_CHECK_NEW( action ); - action->setData( qVariantFromValue( pageContent ) ); + action->setData( QVariant::fromValue( pageContent ) ); priv->viewButton->menu()->addAction( action ); } diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libyui-qt-pkg-2.46.9/src/YQPkgGenericDetailsView.cc new/libyui-qt-pkg-2.47.0/src/YQPkgGenericDetailsView.cc --- old/libyui-qt-pkg-2.46.9/src/YQPkgGenericDetailsView.cc 2019-11-11 13:07:30.000000000 +0100 +++ new/libyui-qt-pkg-2.47.0/src/YQPkgGenericDetailsView.cc 2019-12-10 17:36:52.000000000 +0100 @@ -233,10 +233,7 @@ QString YQPkgGenericDetailsView::cell( int contents ) { - QString html; - html.sprintf( "<td>%d</td>", contents ); - - return html; + return QString( "<td>%1</td>" ).arg( contents ); } diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libyui-qt-pkg-2.46.9/src/YQPkgLangList.cc new/libyui-qt-pkg-2.47.0/src/YQPkgLangList.cc --- old/libyui-qt-pkg-2.46.9/src/YQPkgLangList.cc 2019-11-11 13:07:30.000000000 +0100 +++ new/libyui-qt-pkg-2.47.0/src/YQPkgLangList.cc 2019-12-10 17:36:52.000000000 +0100 @@ -152,11 +152,6 @@ emit filterMatch( *it, zyppPkg ); } } - //selection()->setInstalledPackages(installed); - //selection()->setTotalPackages(total); - - //selection()->setText( _summaryCol, QString().sprintf("%s (%d/%d)", zyppPattern->summary().c_str(), installed, total)); - } emit filterFinished(); } diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libyui-qt-pkg-2.46.9/src/YQPkgList.cc new/libyui-qt-pkg-2.47.0/src/YQPkgList.cc --- old/libyui-qt-pkg-2.46.9/src/YQPkgList.cc 2019-11-11 13:07:30.000000000 +0100 +++ new/libyui-qt-pkg-2.47.0/src/YQPkgList.cc 2019-12-10 17:36:52.000000000 +0100 @@ -373,7 +373,7 @@ qstr = QString::fromUtf8( zyppPkg->installSize().asString().c_str() ); qstr_width = fm.boundingRect( qstr ).width() + ( STATUS_ICON_SIZE / 2 ); if (qstr_width > _optimalColWidth_size) - _optimalColWidth_size = qstr_width; + _optimalColWidth_size = qstr_width; } @@ -616,25 +616,24 @@ // Write header // - // Format the header line with QString::sprintf() because plain stdio - // fprintf() is not UTF-8 aware - it will count multi-byte characters - // wrong, so the formatting will be broken. - - QString header; - header.sprintf( "# %-18s %-30s | %-40s | %-25s | %10s\n\n", - (const char *) _( "Status" ).toUtf8(), - (const char *) _( "Package" ).toUtf8(), - (const char *) _( "Summary" ).toUtf8(), - (const char *) _( "Installed (Available)" ).toUtf8(), - (const char *) _( "Size" ).toUtf8() - ); - file.write(header.toUtf8()); + // Format the header line with QString::arg() because stdio fprintf() is + // not UTF-8 aware - it will count multi-byte characters wrong, so the + // formatting will be broken. + + QString header = QString( "# %1 %2 | %3 | %4 | 5\n\n" ) + .arg( _( "Status" ), -18 ) + .arg( _( "Package" ), -30 ) + .arg( _( "Summary" ), -40 ) + .arg( _( "Installed (Available)" ), -25 ) + .arg( _( "Size" ), 10 ); + + file.write( header.toUtf8() ); // Write all items QTreeWidgetItemIterator it((QTreeWidget*) this); - + while (*it) { const QTreeWidgetItem* item(*it); @@ -654,16 +653,17 @@ } QString status = "[" + statusText( pkg->status() ) + "]"; - QString format; - format.sprintf("%-20s %-30s | %-40s | %-25s | %10s\n", - (const char*) status.toUtf8(), - (const char*) pkg->text( nameCol() ).toUtf8(), - (const char*) summary.toUtf8(), - (const char*) version.toUtf8(), - (const char*) pkg->text( sizeCol() ).toUtf8() - ); - file.write(format.toUtf8()); + + QString line = QString( "%1 %2 | %3 | %4 | %5\n" ) + .arg( status, -20 ) + .arg( pkg->text( nameCol() ), -30 ) + .arg( summary, -40 ) + .arg( version, -25 ) + .arg( pkg->text( sizeCol() ), 10 ); + + file.write( line.toUtf8() ); } + ++it; } diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libyui-qt-pkg-2.46.9/src/YQPkgObjList.cc new/libyui-qt-pkg-2.47.0/src/YQPkgObjList.cc --- old/libyui-qt-pkg-2.46.9/src/YQPkgObjList.cc 2019-11-11 13:07:30.000000000 +0100 +++ new/libyui-qt-pkg-2.47.0/src/YQPkgObjList.cc 2019-12-10 17:36:52.000000000 +0100 @@ -965,28 +965,27 @@ if ( zyppObj() != installed && zyppObj() != candidate ) { - setText( versionCol(), QString().sprintf( "%s", zyppObj()->edition().c_str() ) ); + setText( versionCol(), zyppObj()->edition()); } else { if ( candidate && installed->edition() != candidate->edition() ) { setText( versionCol(), - QString().sprintf( "%s (%s)", - installed->edition().c_str(), - candidate->edition().c_str() ) ); + QString( "%1 (%2)" ) + .arg( installed->edition().c_str() ) + .arg( candidate->edition().c_str() ) ); } else // no candidate or both versions are the same anyway { - setText( versionCol(), - QString().sprintf( "%s", installed->edition().c_str() ) ); + setText( versionCol(), installed->edition() ); } } } else { if ( candidate ) - setText( versionCol(), QString().sprintf( "(%s)", candidate->edition().c_str() ) ); + setText( versionCol(), QString( "(%1)" ).arg( candidate->edition().c_str() ) ); else setText( versionCol(), zyppObj()->edition() ); } diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libyui-qt-pkg-2.46.9/src/YQPkgPackageClassificationFilterView.cc new/libyui-qt-pkg-2.47.0/src/YQPkgPackageClassificationFilterView.cc --- old/libyui-qt-pkg-2.46.9/src/YQPkgPackageClassificationFilterView.cc 1970-01-01 01:00:00.000000000 +0100 +++ new/libyui-qt-pkg-2.47.0/src/YQPkgPackageClassificationFilterView.cc 2019-12-10 17:36:52.000000000 +0100 @@ -0,0 +1,318 @@ +/************************************************************************** +Copyright (C) 2000 - 2010 Novell, Inc. +All Rights Reserved. + +This program is free software; you can redistribute it and/or modify +it under the terms of the GNU General Public License as published by +the Free Software Foundation; either version 2 of the License, or +(at your option) any later version. + +This program is distributed in the hope that it will be useful, +but WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +GNU General Public License for more details. + +You should have received a copy of the GNU General Public License along +with this program; if not, write to the Free Software Foundation, Inc., +51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. + +**************************************************************************/ + + +/*---------------------------------------------------------------------\ +| | +| __ __ ____ _____ ____ | +| \ \ / /_ _/ ___|_ _|___ \ | +| \ V / _` \___ \ | | __) | | +| | | (_| |___) || | / __/ | +| |_|\__,_|____/ |_| |_____| | +| | +| core system | +| (C) SuSE GmbH | +\----------------------------------------------------------------------/ + + File: YQPkgPackageClassificationFilterView.cc + + Authors: Duncan Mac-Vicar Prett <[email protected]> + Stefan Hundhammer <[email protected]> + + Textdomain "qt-pkg" + +/-*/ + + +#define YUILogComponent "qt-pkg" +#include "YUILog.h" + +#include <QApplication> + +#include "YQPackageSelector.h" + +#include "YQPkgPackageClassificationFilterView.h" +#include "YQi18n.h" +#include "utf8.h" + + +QString +translatedText( YPkgGroupEnum group ) +{ + switch ( group ) + { + case YPKG_GROUP_ALL: return _( "All Packages" ); + case YPKG_GROUP_SUGGESTED: return _( "Suggested Packages" ); + case YPKG_GROUP_RECOMMENDED: return _( "Recommended Packages"); + case YPKG_GROUP_ORPHANED: return _( "Orphaned Packages" ); + case YPKG_GROUP_UNNEEDED: return _( "Unneeded Packages" ); + case YPKG_GROUP_MULTIVERSION: return _( "Multiversion Packages" ); + + // Intentionally omitting 'default' case so gcc can catch unhandled enums + } + + // this should never be reached, not marked for translation + return "Unknown Group"; +} + + +string +groupIcon( YPkgGroupEnum group ) +{ + switch ( group ) + { + case YPKG_GROUP_SUGGESTED: return( "preferences-desktop-locale" ); + case YPKG_GROUP_RECOMMENDED: return( "preferences-desktop-locale" ); + case YPKG_GROUP_ORPHANED: return( "preferences-desktop-locale" ); + case YPKG_GROUP_UNNEEDED: return( "preferences-desktop-locale" ); + case YPKG_GROUP_MULTIVERSION: return( "preferences-desktop-locale" ); + case YPKG_GROUP_ALL: return( "preferences-other" ); + + // Intentionally omitting 'default' case so gcc can catch unhandled enums + } + + return( "" ); +} + +YQPkgPackageClassificationFilterView::YQPkgPackageClassificationFilterView( QWidget * parent ) + : QTreeWidget( parent ) + , _selectedGroup(YPKG_GROUP_ALL) +{ + setIconSize(QSize(32,32)); + setHeaderLabels( QStringList(_( "Package Classification" )) ); + setRootIsDecorated( false ); + setSortingEnabled( true ); + connect( this, SIGNAL( currentItemChanged ( QTreeWidgetItem *, QTreeWidgetItem * ) ), + this, SLOT ( slotSelectionChanged ( QTreeWidgetItem * ) ) ); + fillGroups(); + + selectSomething(); +} + + +YQPkgPackageClassificationFilterView::~YQPkgPackageClassificationFilterView() +{ +} + + +void +YQPkgPackageClassificationFilterView::fillGroups() +{ + if ( _groupsMap.empty() ) + { + _groupsMap[ YPKG_GROUP_ALL ] = new YQPkgPackageClassificationGroup( this, YPKG_GROUP_ALL ); + _groupsMap[ YPKG_GROUP_RECOMMENDED ] = new YQPkgPackageClassificationGroup( this, YPKG_GROUP_RECOMMENDED ); + _groupsMap[ YPKG_GROUP_SUGGESTED ] = new YQPkgPackageClassificationGroup( this, YPKG_GROUP_SUGGESTED ); + _groupsMap[ YPKG_GROUP_ORPHANED ] = new YQPkgPackageClassificationGroup( this, YPKG_GROUP_ORPHANED ); + _groupsMap[ YPKG_GROUP_UNNEEDED ] = new YQPkgPackageClassificationGroup( this, YPKG_GROUP_UNNEEDED ); + if ( ! zypp::sat::Pool::instance().multiversion().empty() ) + _groupsMap[ YPKG_GROUP_MULTIVERSION] = new YQPkgPackageClassificationGroup( this, YPKG_GROUP_MULTIVERSION ); + + } +} + + +void +YQPkgPackageClassificationFilterView::selectSomething() +{ +// FIXME +// QTreeWidgetItem * item = children().first(); +// +// if ( item ) +// setCurrentItem(item); +} + + +void +YQPkgPackageClassificationFilterView::filterIfVisible() +{ + if ( isVisible() ) + filter(); +} + + +void +YQPkgPackageClassificationFilterView::filter() +{ + emit filterStart(); + // yuiDebug() << "Filtering packages for RPM group \"" << selectedRpmGroup() << "\"" << endl; + + if ( selection() ) + { + for ( ZyppPoolIterator it = zyppPkgBegin(); + it != zyppPkgEnd(); + ++it ) + { + ZyppSel selectable = *it; + bool match = false; + + // If there is an installed obj, check this first. The bits are set for the installed + // obj only and the installed obj is not contained in the pick list if there in an + // identical candidate available from a repo. + if ( selectable->installedObj()) + { + match = check( selectable, tryCastToZyppPkg( selectable->installedObj() ) ); + } + if ( selectable->candidateObj() && !match) + { + match = check( selectable, tryCastToZyppPkg( selectable->candidateObj() ) ); + } + + // And then check the pick list which contain all availables and all objects for multi + // version packages and the installed obj if there isn't same version in a repo. + if ( !match ) + { + zypp::ui::Selectable::picklist_iterator it = selectable->picklistBegin(); + while ( it != selectable->picklistEnd() && !match ) + { + check( selectable, tryCastToZyppPkg( *it ) ); + ++it; + } + } + } + } + emit filterFinished(); +} + + +void +YQPkgPackageClassificationFilterView::slotSelectionChanged( QTreeWidgetItem * newSelection ) +{ + YQPkgPackageClassificationGroup * sel = dynamic_cast<YQPkgPackageClassificationGroup *>( newSelection ); + + if ( sel ) + { + _selectedGroup = sel->group(); + // for the list of reccommended packages, we need + // to solve first + if ( _selectedGroup == YPKG_GROUP_SUGGESTED || + _selectedGroup == YPKG_GROUP_RECOMMENDED || + _selectedGroup == YPKG_GROUP_ORPHANED || + _selectedGroup == YPKG_GROUP_UNNEEDED ) + { + // set the busy cursor for the solving + QApplication::setOverrideCursor(Qt::WaitCursor); + zypp::getZYpp()->resolver()->resolvePool(); + QApplication::restoreOverrideCursor(); + } + + } + else + { + _selectedGroup = YPKG_GROUP_ALL; + } + + filter(); +} + + +bool +YQPkgPackageClassificationFilterView::check( ZyppSel selectable, + ZyppPkg pkg ) +{ + if ( ! pkg || ! selection() ) + return false; + + if ( selection()->group() == YPKG_GROUP_ALL ) // Special case: All packages + { + emit filterMatch( selectable, pkg ); + return true; + } + + if ( selectedGroup() == YPKG_GROUP_RECOMMENDED && + zypp::PoolItem(pkg).status().isRecommended() ) + { + emit filterMatch( selectable, pkg ); + return true; + } + if ( selectedGroup() == YPKG_GROUP_SUGGESTED && + zypp::PoolItem(pkg).status().isSuggested() ) + { + emit filterMatch( selectable, pkg ); + return true; + } + if ( selectedGroup() == YPKG_GROUP_ORPHANED && + zypp::PoolItem(pkg).status().isOrphaned() ) + { + emit filterMatch( selectable, pkg ); + return true; + } + if ( selectedGroup() == YPKG_GROUP_UNNEEDED && + zypp::PoolItem(pkg).status().isUnneeded() ) + { + emit filterMatch( selectable, pkg ); + return true; + } + + if ( selectedGroup() == YPKG_GROUP_MULTIVERSION && + selectable->multiversionInstall() ) + { + emit filterMatch( selectable, pkg ); + return true; + } + + + return false; +} + + +YQPkgPackageClassificationGroup * +YQPkgPackageClassificationFilterView::selection() const +{ + QTreeWidgetItem * item = currentItem(); + + if ( ! item ) + return 0; + + return dynamic_cast<YQPkgPackageClassificationGroup *> ( item ); +} + + + + +YQPkgPackageClassificationGroup::YQPkgPackageClassificationGroup( YQPkgPackageClassificationFilterView * parentFilterView, + YPkgGroupEnum group ) + : QTreeWidgetItem( parentFilterView ) + , _filterView( parentFilterView ) + , _group( group ) +{ + setText( 0, translatedText( group ) ); +} + + +YQPkgPackageClassificationGroup::~YQPkgPackageClassificationGroup() +{ + // NOP +} + + +bool +YQPkgPackageClassificationGroup::operator< ( const QTreeWidgetItem & otherListViewItem ) const +{ + const YQPkgPackageClassificationGroup * otherCategoryItem = + dynamic_cast<const YQPkgPackageClassificationGroup *>(&otherListViewItem); + + if ( otherCategoryItem ) + return group() > otherCategoryItem->group(); + else + return true; +} + + diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libyui-qt-pkg-2.46.9/src/YQPkgPackageClassificationFilterView.h new/libyui-qt-pkg-2.47.0/src/YQPkgPackageClassificationFilterView.h --- old/libyui-qt-pkg-2.46.9/src/YQPkgPackageClassificationFilterView.h 1970-01-01 01:00:00.000000000 +0100 +++ new/libyui-qt-pkg-2.47.0/src/YQPkgPackageClassificationFilterView.h 2019-12-10 17:36:52.000000000 +0100 @@ -0,0 +1,189 @@ +/************************************************************************** +Copyright (C) 2000 - 2010 Novell, Inc. +All Rights Reserved. + +This program is free software; you can redistribute it and/or modify +it under the terms of the GNU General Public License as published by +the Free Software Foundation; either version 2 of the License, or +(at your option) any later version. + +This program is distributed in the hope that it will be useful, +but WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +GNU General Public License for more details. + +You should have received a copy of the GNU General Public License along +with this program; if not, write to the Free Software Foundation, Inc., +51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. + +**************************************************************************/ + + +/*---------------------------------------------------------------------\ +| | +| __ __ ____ _____ ____ | +| \ \ / /_ _/ ___|_ _|___ \ | +| \ V / _` \___ \ | | __) | | +| | | (_| |___) || | / __/ | +| |_|\__,_|____/ |_| |_____| | +| | +| core system | +| (C) SuSE GmbH | +\----------------------------------------------------------------------/ + + File: YQPkgPackageClassificationFilterView.h + + Authors: Duncan Mac-Vicar Prett <[email protected]> + Stefan Hundhammer <[email protected]> + +/-*/ + + +#ifndef YQPkgPackageClassificationFilterView_h +#define YQPkgPackageClassificationFilterView_h + +#include <map> +#include "YQZypp.h" +#include "YRpmGroupsTree.h" +#include <QTreeWidget> + +using std::string; + +typedef enum +{ + YPKG_GROUP_SUGGESTED, + YPKG_GROUP_RECOMMENDED, + YPKG_GROUP_ORPHANED, + YPKG_GROUP_UNNEEDED, + YPKG_GROUP_MULTIVERSION, + YPKG_GROUP_ALL, +} YPkgGroupEnum; + + +class YQPkgPackageClassificationGroup; + + +/** + * Filter view for PackageKit groups. Uses the packages' RPM group tags and + * maps them to the corresponding PackageKit group. + **/ +class YQPkgPackageClassificationFilterView : public QTreeWidget +{ + Q_OBJECT + +public: + + /** + * Constructor + **/ + YQPkgPackageClassificationFilterView( QWidget * parent ); + + /** + * Destructor + **/ + virtual ~YQPkgPackageClassificationFilterView(); + + /** + * Returns the currently selected item or 0 if there is none. + **/ + YQPkgPackageClassificationGroup * selection() const; + + /** + * Check if 'pkg' matches the selected group. + * Returns true if there is a match, false otherwise. + **/ + bool check( ZyppSel selectable, + ZyppPkg pkg ); + + /** + * Returns the (untranslated!) currently selected group enum + **/ + YPkgGroupEnum selectedGroup() const { return _selectedGroup; } + +public slots: + + /** + * Filter according to the view's rules and current selection. + * Emits those signals: + * filterStart() + * filterMatch() for each pkg that matches the filter + * filterFinished() + **/ + void filter(); + + /** + * Same as filter(), but only if this widget is currently visible. + **/ + void filterIfVisible(); + + /** + * Select a list entry (if there is any). + * Usually this will be the first list entry, but don't rely on that - this + * might change without notice. Emits signal currentItemChanged(). + **/ + void selectSomething(); + +signals: + + /** + * Emitted when the filtering starts. Use this to clear package lists + * etc. prior to adding new entries. + **/ + void filterStart(); + + /** + * Emitted during filtering for each pkg that matches the filter. + **/ + void filterMatch( ZyppSel selectable, + ZyppPkg pkg ); + + /** + * Emitted when filtering is finished. + **/ + void filterFinished(); + + +protected slots: + + void slotSelectionChanged( QTreeWidgetItem * newSelection ); + + +protected: + + void fillGroups(); + + // + // Data members + // + + YPkgGroupEnum _selectedGroup; + std::map<YPkgGroupEnum, YQPkgPackageClassificationGroup *> _groupsMap; + + // map to cache converted groups + std::map<std::string, YPkgGroupEnum> _groupsCache; +}; + + +class YQPkgPackageClassificationGroup: public QTreeWidgetItem +{ +public: + + YQPkgPackageClassificationGroup( YQPkgPackageClassificationFilterView * parentFilterView, + YPkgGroupEnum group ); + virtual ~YQPkgPackageClassificationGroup(); + + YQPkgPackageClassificationFilterView * filterView() const { return _filterView; } + YPkgGroupEnum group() const { return _group; } + virtual bool operator< ( const QTreeWidgetItem & otherListViewItem ) const; + + +private: + + // Data members + + YQPkgPackageClassificationFilterView * _filterView; + YPkgGroupEnum _group; +}; + + +#endif // ifndef YQPkgPackageClassificationFilterView_h diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libyui-qt-pkg-2.46.9/src/YQPkgPatchFilterView.cc new/libyui-qt-pkg-2.47.0/src/YQPkgPatchFilterView.cc --- old/libyui-qt-pkg-2.46.9/src/YQPkgPatchFilterView.cc 2019-11-11 13:07:30.000000000 +0100 +++ new/libyui-qt-pkg-2.47.0/src/YQPkgPatchFilterView.cc 2019-12-10 17:36:52.000000000 +0100 @@ -46,7 +46,7 @@ #include <QLabel> #include <QSplitter> #include <QTabWidget> -#include <QDateTime> +#include <QElapsedTimer> #include <QFrame> #include <QVBoxLayout> @@ -132,7 +132,7 @@ YQPkgPatchFilterView::updateTotalDownloadSize() { set<ZyppSel> selectablesToInstall; - QTime calcTime; + QElapsedTimer calcTime; calcTime.start(); for ( ZyppPoolIterator patches_it = zyppPatchesBegin(); diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libyui-qt-pkg-2.46.9/src/YQPkgPatternList.cc new/libyui-qt-pkg-2.47.0/src/YQPkgPatternList.cc --- old/libyui-qt-pkg-2.46.9/src/YQPkgPatternList.cc 2019-11-11 13:07:30.000000000 +0100 +++ new/libyui-qt-pkg-2.47.0/src/YQPkgPatternList.cc 2019-12-10 17:36:52.000000000 +0100 @@ -78,7 +78,7 @@ painter->save(); YQPkgPatternCategoryItem *citem = dynamic_cast<YQPkgPatternCategoryItem *>(_view->itemFromIndex(index)); - + // special painting for category items if ( citem ) { @@ -94,7 +94,7 @@ } YQPkgPatternListItem *item = dynamic_cast<YQPkgPatternListItem *>( _view->itemFromIndex( index ) ); - + if ( item ) { //if ( index.column() == _view->howmanyCol() ) @@ -124,8 +124,9 @@ painter->fillRect( x, y, fillWidth, h, fillColor ); - QString percentageText; - percentageText.sprintf("%d/%d", item->installedPackages(), item->totalPackages()); + QString percentageText = QString( "%1/%2" ) + .arg( item->installedPackages() ) + .arg( item->totalPackages() ); painter->setPen( _view->palette().color( QPalette::Base ) ); painter->drawText( QRect( x, y, @@ -140,7 +141,7 @@ else { painter->restore(); - QItemDelegate::paint(painter, option, index); + QItemDelegate::paint( painter, option, index ); } } } @@ -165,7 +166,7 @@ // configuring the web server. For the scope of the package selector, this // is only of little relevance, though. - headers << ""; _iconCol = numCol++; + headers << ""; _iconCol = numCol++; headers << _( "Pattern" ); _summaryCol = numCol++; //headers << ""; _howmanyCol = numCol++; @@ -223,7 +224,7 @@ fillList(); selectSomething(); } - + yuiDebug() << "Creating pattern list done" << std::endl; } diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libyui-qt-pkg-2.46.9/src/YQPkgRepoList.cc new/libyui-qt-pkg-2.47.0/src/YQPkgRepoList.cc --- old/libyui-qt-pkg-2.46.9/src/YQPkgRepoList.cc 2019-11-11 13:07:30.000000000 +0100 +++ new/libyui-qt-pkg-2.47.0/src/YQPkgRepoList.cc 2019-12-10 17:36:52.000000000 +0100 @@ -40,7 +40,7 @@ /-*/ #include <algorithm> -#include <QDateTime> +#include <QElapsedTimer> #include <QHeaderView> #define YUILogComponent "qt-pkg" @@ -140,7 +140,7 @@ emit filterStart(); yuiMilestone() << "Collecting packages in selected repositories..." << endl; - QTime stopWatch; + QElapsedTimer stopWatch; stopWatch.start(); diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libyui-qt-pkg-2.46.9/src/YQPkgSearchFilterView.cc new/libyui-qt-pkg-2.47.0/src/YQPkgSearchFilterView.cc --- old/libyui-qt-pkg-2.46.9/src/YQPkgSearchFilterView.cc 2019-11-11 13:07:30.000000000 +0100 +++ new/libyui-qt-pkg-2.47.0/src/YQPkgSearchFilterView.cc 2019-12-10 17:36:52.000000000 +0100 @@ -47,7 +47,7 @@ #include <QRadioButton> #include <QGroupBox> #include <QProgressDialog> -#include <QDateTime> +#include <QElapsedTimer> #include <QKeyEvent> #include <QMessageBox> @@ -258,7 +258,7 @@ parentWidget()->parentWidget()->setCursor(Qt::WaitCursor); progress.setCursor(Qt::ArrowCursor); - QTime timer; + QElapsedTimer timer; query.setCaseSensitive( _caseSensitive->isChecked() ); switch ( _searchMode->currentIndex() ) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libyui-qt-pkg-2.46.9/src/YQPkgServiceList.cc new/libyui-qt-pkg-2.47.0/src/YQPkgServiceList.cc --- old/libyui-qt-pkg-2.46.9/src/YQPkgServiceList.cc 2019-11-11 13:07:30.000000000 +0100 +++ new/libyui-qt-pkg-2.47.0/src/YQPkgServiceList.cc 2019-12-10 17:36:52.000000000 +0100 @@ -23,7 +23,7 @@ #include <algorithm> #include <set> #include <string> -#include <QDateTime> +#include <QElapsedTimer> #include <QHeaderView> #include <QString> @@ -120,7 +120,7 @@ emit filterStart(); yuiMilestone() << "Collecting packages in selected services..." << endl; - QTime stopWatch; + QElapsedTimer stopWatch; stopWatch.start(); //
