Hello community, here is the log from the commit of package libyui-qt-pkg for openSUSE:Factory checked in at 2019-11-11 12:58:04 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/libyui-qt-pkg (Old) and /work/SRC/openSUSE:Factory/.libyui-qt-pkg.new.2990 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "libyui-qt-pkg" Mon Nov 11 12:58:04 2019 rev:48 rq:745999 version:2.46.9 Changes: -------- --- /work/SRC/openSUSE:Factory/libyui-qt-pkg/libyui-qt-pkg-doc.changes 2012-08-16 21:58:15.000000000 +0200 +++ /work/SRC/openSUSE:Factory/.libyui-qt-pkg.new.2990/libyui-qt-pkg-doc.changes 2019-11-11 12:58:06.085544878 +0100 @@ -1,0 +2,6 @@ +Tue Oct 8 13:02:39 UTC 2019 - Tomáš Chvátal <tchva...@suse.com> + +- Format with the new packaging format and guidelines of SUSE +- Add missing dependency for epstopdf and dot + +------------------------------------------------------------------- --- /work/SRC/openSUSE:Factory/libyui-qt-pkg/libyui-qt-pkg.changes 2019-09-23 13:15:19.705127455 +0200 +++ /work/SRC/openSUSE:Factory/.libyui-qt-pkg.new.2990/libyui-qt-pkg.changes 2019-11-11 12:58:06.117544912 +0100 @@ -1,0 +2,27 @@ +Wed Nov 6 12:11:19 UTC 2019 - Josef Reidinger <jreidin...@suse.com> + +- do not complain about vendor change when switching repo + (bsc#1149391,bsc#1065584) +- 2.46.9 + +------------------------------------------------------------------- +Thu Oct 17 11:58:58 UTC 2019 - Ladislav Slezák <lsle...@suse.cz> + +- 2.46.8 + +------------------------------------------------------------------- +Tue Oct 8 11:17:29 UTC 2019 - Tomáš Chvátal <tchva...@suse.com> + +- Try to sort out a bit the package using spec-cleaner +- Use the distribution %cmake macros that define all the various + compilation flags/etc. +- Use %cmake_build that will allow us later to switch from make + to ninja on distribution level + +------------------------------------------------------------------- +Tue Oct 8 11:10:02 UTC 2019 - Tomáš Chvátal <tchva...@suse.com> + +- Remove Group view pane as it is based on the rpm group tag + indirectly via packagekit (fate#326485). + +------------------------------------------------------------------- Old: ---- libyui-qt-pkg-2.46.7.tar.bz2 New: ---- libyui-qt-pkg-2.46.9.tar.bz2 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ libyui-qt-pkg-doc.spec ++++++ --- /var/tmp/diff_new_pack.uvHwu5/_old 2019-11-11 12:58:06.637545463 +0100 +++ /var/tmp/diff_new_pack.uvHwu5/_new 2019-11-11 12:58:06.641545467 +0100 @@ -18,65 +18,49 @@ %define parent libyui-qt-pkg %define so_version 10 - Name: %{parent}-doc -Version: 2.46.7 +Version: 2.46.9 Release: 0 +Summary: Libyui-qt-pkg documentation +License: LGPL-2.1-only OR LGPL-3.0-only +URL: https://github.com/libyui/ Source: %{parent}-%{version}.tar.bz2 - -BuildArch: noarch - BuildRequires: cmake >= 2.8 BuildRequires: doxygen BuildRequires: fdupes BuildRequires: gcc-c++ +BuildRequires: graphviz BuildRequires: graphviz-gnome BuildRequires: libyui-devel >= 3.0.4 +BuildRequires: texlive-epstopdf-bin BuildRequires: texlive-latex - -Url: http://github.com/libyui/ -Summary: Libyui-qt-pkg documentation -License: LGPL-2.1-only OR LGPL-3.0-only -Group: Documentation/HTML +BuildArch: noarch %description This package contains the Qt package selector component for libYUI. - This package provides the documentation. (HTML & PDF) - %prep - -%setup -n %{parent}-%{version} +%setup -q -n %{parent}-%{version} %build - -export CFLAGS="$RPM_OPT_FLAGS -DNDEBUG" -export CXXFLAGS="$RPM_OPT_FLAGS -DNDEBUG" +export CFLAGS="%{optflags} -DNDEBUG" +export CXXFLAGS="%{optflags} -DNDEBUG" ./bootstrap.sh %{_prefix} -mkdir build -cd build -cmake .. \ +%cmake \ -DDOC_DIR=%{_docdir} \ -DDOCS_ONLY=ON - -make %{?jobs:-j%jobs} docs +%cmake_build docs %install -cd build -make install DESTDIR="$RPM_BUILD_ROOT" - -%fdupes -s $RPM_BUILD_ROOT/%_docdir/%{parent}%{so_version} - -%clean -rm -rf "$RPM_BUILD_ROOT" +%cmake_install +%fdupes -s %{buildroot}/%{_docdir}/%{parent}%{so_version} %files -%defattr(-,root,root) %doc %{_docdir}/%{parent}%{so_version} %changelog ++++++ libyui-qt-pkg.spec ++++++ --- /var/tmp/diff_new_pack.uvHwu5/_old 2019-11-11 12:58:06.653545480 +0100 +++ /var/tmp/diff_new_pack.uvHwu5/_new 2019-11-11 12:58:06.657545484 +0100 @@ -16,150 +16,101 @@ # +%define so_version 10 +%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.7 +Version: 2.46.9 Release: 0 +Summary: Libyui - Qt Package Selector +License: LGPL-2.1-only OR LGPL-3.0-only +URL: https://github.com/libyui/ Source: %{name}-%{version}.tar.bz2 - -%define so_version 10 -%define bin_name %{name}%{so_version} - -%if 0%{?suse_version} > 1325 -BuildRequires: libboost_headers-devel -%else -BuildRequires: boost-devel -%endif +BuildRequires: %{libyui_qt_devel_version} +BuildRequires: %{libzypp_devel_version} BuildRequires: cmake >= 2.8 BuildRequires: gcc-c++ BuildRequires: libqt5-qtbase-devel BuildRequires: libqt5-qtsvg-devel BuildRequires: libqt5-qtx11extras-devel BuildRequires: libyui-devel >= 3.0.4 -BuildRequires: pkg-config - -%define libyui_qt_devel_version libyui-qt-devel >= 2.50.1 -BuildRequires: %{libyui_qt_devel_version} -%define libzypp_devel_version libzypp-devel >= 15.14.0 -BuildRequires: %{libzypp_devel_version} - -Url: http://github.com/libyui/ -Summary: Libyui - Qt Package Selector -License: LGPL-2.1-only OR LGPL-3.0-only -Group: System/Libraries +BuildRequires: pkgconfig +%if 0%{?suse_version} > 1325 +BuildRequires: libboost_headers-devel +%else +BuildRequires: boost-devel +%endif %description This package contains the Qt package selector component for libYUI. - %package -n %{bin_name} - +Summary: Libyui - Qt Package Selector # bsc#1114654: Need Qt SVG support for icons (built-in and from theme) Requires: libQt5Svg5 - Requires: libyui%{so_version} +Supplements: packageand(libyui-qt:yast2-packager) +# control center gnome requires graphical pkg and gtk is dropped (bnc#999031) +Supplements: packageand(yast2-control-center-gnome:yast2-packager) +Conflicts: libqdialogsolver1 < 1.4.0 Provides: %{name} = %{version} - Provides: yast2-qt-pkg = 2.42.0 Obsoletes: yast2-qt-pkg < 2.42.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)`) - Provides: libyui_pkg -Supplements: packageand(libyui-qt:yast2-packager) -# control center gnome requires graphical pkg and gtk is dropped (bnc#999031) -Supplements: packageand(yast2-control-center-gnome:yast2-packager) - # new packager is in qt5 and crashes if qt3 diagsolver is used (bnc#870683) Obsoletes: libqdialogsolver1 < 1.4.0 -Conflicts: libqdialogsolver1 < 1.4.0 - -Url: http://github.com/libyui/ -Summary: Libyui - Qt Package Selector -Group: System/Libraries %description -n %{bin_name} This package contains the Qt package selector component for libYUI. - - %package devel - +Summary: Libyui-qt-pkg header files Requires: %{bin_name} = %{version} Requires: %{libyui_qt_devel_version} Requires: %{libzypp_devel_version} -Url: http://github.com/libyui/ -Summary: Libyui-qt-pkg header files -Group: Development/Languages/C and C++ - %description devel This package contains the Qt package selector component for libYUI. - This can be used independently of YaST for generic (C++) applications. This package has very few dependencies. - %prep -%setup -q -n %{name}-%{version} +%setup -q %build - -export CFLAGS="$RPM_OPT_FLAGS -DNDEBUG" -export CXXFLAGS="$RPM_OPT_FLAGS -DNDEBUG" +export CFLAGS="%{optflags} -DNDEBUG" +export CXXFLAGS="%{optflags} -DNDEBUG" ./bootstrap.sh %{_prefix} -mkdir build -cd build - -%if %{?_with_debug:1}%{!?_with_debug:0} -cmake .. \ - -DYPREFIX=%{_prefix} \ - -DDOC_DIR=%{_docdir} \ - -DLIB_DIR=%{_lib} \ - -DCMAKE_BUILD_TYPE=RELWITHDEBINFO -%else -cmake .. \ +%cmake \ -DYPREFIX=%{_prefix} \ -DDOC_DIR=%{_docdir} \ - -DLIB_DIR=%{_lib} \ - -DCMAKE_BUILD_TYPE=RELEASE -%endif - -make VERBOSE=1 %{?jobs:-j%jobs} + -DLIB_DIR=%{_lib} +%cmake_build %install -cd build -make install DESTDIR="$RPM_BUILD_ROOT" -install -m0755 -d $RPM_BUILD_ROOT/%{_docdir}/%{bin_name}/ -install -m0755 -d $RPM_BUILD_ROOT/%{_libdir}/yui -install -m0644 ../COPYING* $RPM_BUILD_ROOT/%{_docdir}/%{bin_name}/ - -%clean -rm -rf "$RPM_BUILD_ROOT" +%cmake_install %post -n %{bin_name} -p /sbin/ldconfig - %postun -n %{bin_name} -p /sbin/ldconfig %files -n %{bin_name} -%defattr(-,root,root) +%license COPYING* %dir %{_libdir}/yui %{_libdir}/yui/lib*.so.* -%doc %dir %{_docdir}/%{bin_name} -%license %{_docdir}/%{bin_name}/COPYING* %files devel -%defattr(-,root,root) -%dir %{_docdir}/%{bin_name} %{_libdir}/yui/lib*.so -%{_prefix}/include/yui +%{_includedir}/yui %{_libdir}/pkgconfig/%{name}.pc %{_libdir}/cmake/%{name} ++++++ libyui-qt-pkg-2.46.7.tar.bz2 -> libyui-qt-pkg-2.46.9.tar.bz2 ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libyui-qt-pkg-2.46.7/.travis.yml new/libyui-qt-pkg-2.46.9/.travis.yml --- old/libyui-qt-pkg-2.46.7/.travis.yml 2019-09-06 15:55:34.000000000 +0200 +++ new/libyui-qt-pkg-2.46.9/.travis.yml 2019-11-06 14:09:12.000000000 +0100 @@ -1,4 +1,8 @@ sudo: required +# use the Ubuntu 16.04 image with kernel 4.15.0, the default is 14.04 which +# contains too old kernel (4.4.0), libQt5Core requires 4.11.0 or newer +# (find with "ldconfig -p | grep Qt5Core") +dist: xenial language: bash services: - docker @@ -8,4 +12,6 @@ script: # the "libyui-travis" script is included in the base libyui/devel image # see https://github.com/libyui/docker-devel/blob/master/libyui-travis - - docker run -it libyui-qt-pkg-image libyui-travis + # For some strage reason building the Qt resource pack requires + # extra system privileges (ugh??) + - docker run -it --privileged libyui-qt-pkg-image libyui-travis diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libyui-qt-pkg-2.46.7/Rakefile new/libyui-qt-pkg-2.46.9/Rakefile --- old/libyui-qt-pkg-2.46.7/Rakefile 2019-09-06 15:55:34.000000000 +0200 +++ new/libyui-qt-pkg-2.46.9/Rakefile 2019-11-06 14:09:12.000000000 +0100 @@ -6,3 +6,8 @@ # MIT license #++ require "libyui/rake" + +Libyui::Tasks.configuration do |conf| + # do not check license in qt metadata + conf.skip_license_check << /.*\.qrc/ +end diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libyui-qt-pkg-2.46.7/SOURCECONF.cmake new/libyui-qt-pkg-2.46.9/SOURCECONF.cmake --- old/libyui-qt-pkg-2.46.7/SOURCECONF.cmake 2019-09-06 15:55:34.000000000 +0200 +++ new/libyui-qt-pkg-2.46.9/SOURCECONF.cmake 2019-11-06 14:09:12.000000000 +0100 @@ -26,7 +26,6 @@ YQPkgLangList.cc YQPkgList.cc YQPkgObjList.cc - YQPkgPackageKitGroupsFilterView.cc YQPkgPatchFilterView.cc YQPkgPatchList.cc YQPkgPatternList.cc @@ -75,7 +74,6 @@ YQPkgLangList.h YQPkgList.h YQPkgObjList.h - YQPkgPackageKitGroupsFilterView.h YQPkgPatchFilterView.h YQPkgPatchList.h YQPkgPatternList.h diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libyui-qt-pkg-2.46.7/VERSION.cmake new/libyui-qt-pkg-2.46.9/VERSION.cmake --- old/libyui-qt-pkg-2.46.7/VERSION.cmake 2019-09-06 15:55:34.000000000 +0200 +++ new/libyui-qt-pkg-2.46.9/VERSION.cmake 2019-11-06 14:09:12.000000000 +0100 @@ -1,6 +1,6 @@ SET( VERSION_MAJOR "2" ) SET( VERSION_MINOR "46" ) -SET( VERSION_PATCH "7" ) +SET( VERSION_PATCH "9" ) 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.7/package/libyui-qt-pkg-doc.changes new/libyui-qt-pkg-2.46.9/package/libyui-qt-pkg-doc.changes --- old/libyui-qt-pkg-2.46.7/package/libyui-qt-pkg-doc.changes 2019-09-06 15:55:34.000000000 +0200 +++ new/libyui-qt-pkg-2.46.9/package/libyui-qt-pkg-doc.changes 2019-11-06 14:09:12.000000000 +0100 @@ -1,4 +1,10 @@ ------------------------------------------------------------------- +Tue Oct 8 13:02:39 UTC 2019 - Tomáš Chvátal <tchva...@suse.com> + +- Format with the new packaging format and guidelines of SUSE +- Add missing dependency for epstopdf and dot + +------------------------------------------------------------------- Thu Jun 14 16:12:19 CEST 2012 - m...@suse.de - initial package diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libyui-qt-pkg-2.46.7/package/libyui-qt-pkg-doc.spec new/libyui-qt-pkg-2.46.9/package/libyui-qt-pkg-doc.spec --- old/libyui-qt-pkg-2.46.7/package/libyui-qt-pkg-doc.spec 2019-09-06 15:55:34.000000000 +0200 +++ new/libyui-qt-pkg-2.46.9/package/libyui-qt-pkg-doc.spec 2019-11-06 14:09:12.000000000 +0100 @@ -12,71 +12,55 @@ # license that conforms to the Open Source Definition (Version 1.9) # published by the Open Source Initiative. -# Please submit bugfixes or comments via http://bugs.opensuse.org/ +# Please submit bugfixes or comments via https://bugs.opensuse.org/ # %define parent libyui-qt-pkg %define so_version 10 - Name: %{parent}-doc -Version: 2.46.7 +Version: 2.46.9 Release: 0 +Summary: Libyui-qt-pkg documentation +License: LGPL-2.1-only OR LGPL-3.0-only +URL: https://github.com/libyui/ Source: %{parent}-%{version}.tar.bz2 - -BuildArch: noarch - BuildRequires: cmake >= 2.8 BuildRequires: doxygen BuildRequires: fdupes BuildRequires: gcc-c++ +BuildRequires: graphviz BuildRequires: graphviz-gnome BuildRequires: libyui-devel >= 3.0.4 +BuildRequires: texlive-epstopdf-bin BuildRequires: texlive-latex - -Url: http://github.com/libyui/ -Summary: Libyui-qt-pkg documentation -License: LGPL-2.1-only OR LGPL-3.0-only -Group: Documentation/HTML +BuildArch: noarch %description This package contains the Qt package selector component for libYUI. - This package provides the documentation. (HTML & PDF) - %prep - -%setup -n %{parent}-%{version} +%setup -q -n %{parent}-%{version} %build - -export CFLAGS="$RPM_OPT_FLAGS -DNDEBUG" -export CXXFLAGS="$RPM_OPT_FLAGS -DNDEBUG" +export CFLAGS="%{optflags} -DNDEBUG" +export CXXFLAGS="%{optflags} -DNDEBUG" ./bootstrap.sh %{_prefix} -mkdir build -cd build -cmake .. \ - -DDOC_DIR=%{_docdir} \ - -DDOCS_ONLY=ON - -make %{?jobs:-j%jobs} docs +%cmake \ + -DDOC_DIR=%{_docdir} \ + -DDOCS_ONLY=ON +%cmake_build docs %install -cd build -make install DESTDIR="$RPM_BUILD_ROOT" - -%fdupes -s $RPM_BUILD_ROOT/%_docdir/%{parent}%{so_version} - -%clean -rm -rf "$RPM_BUILD_ROOT" +%cmake_install +%fdupes -s %{buildroot}/%{_docdir}/%{parent}%{so_version} %files -%defattr(-,root,root) %doc %{_docdir}/%{parent}%{so_version} %changelog diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libyui-qt-pkg-2.46.7/package/libyui-qt-pkg.changes new/libyui-qt-pkg-2.46.9/package/libyui-qt-pkg.changes --- old/libyui-qt-pkg-2.46.7/package/libyui-qt-pkg.changes 2019-09-06 15:55:34.000000000 +0200 +++ new/libyui-qt-pkg-2.46.9/package/libyui-qt-pkg.changes 2019-11-06 14:09:12.000000000 +0100 @@ -1,4 +1,31 @@ ------------------------------------------------------------------- +Wed Nov 6 12:11:19 UTC 2019 - Josef Reidinger <jreidin...@suse.com> + +- do not complain about vendor change when switching repo + (bsc#1149391,bsc#1065584) +- 2.46.9 + +------------------------------------------------------------------- +Thu Oct 17 11:58:58 UTC 2019 - Ladislav Slezák <lsle...@suse.cz> + +- 2.46.8 + +------------------------------------------------------------------- +Tue Oct 8 11:17:29 UTC 2019 - Tomáš Chvátal <tchva...@suse.com> + +- Try to sort out a bit the package using spec-cleaner +- Use the distribution %cmake macros that define all the various + compilation flags/etc. +- Use %cmake_build that will allow us later to switch from make + to ninja on distribution level + +------------------------------------------------------------------- +Tue Oct 8 11:10:02 UTC 2019 - Tomáš Chvátal <tchva...@suse.com> + +- Remove Group view pane as it is based on the rpm group tag + indirectly via packagekit (fate#326485). + +------------------------------------------------------------------- Fri Sep 6 07:36:04 UTC 2019 - Ladislav Slezák <lsle...@suse.cz> - Added a new generic dependency to force upgrade from all previous diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libyui-qt-pkg-2.46.7/package/libyui-qt-pkg.spec new/libyui-qt-pkg-2.46.9/package/libyui-qt-pkg.spec --- old/libyui-qt-pkg-2.46.7/package/libyui-qt-pkg.spec 2019-09-06 15:55:34.000000000 +0200 +++ new/libyui-qt-pkg-2.46.9/package/libyui-qt-pkg.spec 2019-11-06 14:09:12.000000000 +0100 @@ -12,154 +12,105 @@ # license that conforms to the Open Source Definition (Version 1.9) # published by the Open Source Initiative. -# Please submit bugfixes or comments via http://bugs.opensuse.org/ +# Please submit bugfixes or comments via https://bugs.opensuse.org/ # +%define so_version 10 +%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.7 +Version: 2.46.9 Release: 0 +Summary: Libyui - Qt Package Selector +License: LGPL-2.1-only OR LGPL-3.0-only +URL: https://github.com/libyui/ Source: %{name}-%{version}.tar.bz2 - -%define so_version 10 -%define bin_name %{name}%{so_version} - -%if 0%{?suse_version} > 1325 -BuildRequires: libboost_headers-devel -%else -BuildRequires: boost-devel -%endif +BuildRequires: %{libyui_qt_devel_version} +BuildRequires: %{libzypp_devel_version} BuildRequires: cmake >= 2.8 BuildRequires: gcc-c++ BuildRequires: libqt5-qtbase-devel BuildRequires: libqt5-qtsvg-devel BuildRequires: libqt5-qtx11extras-devel BuildRequires: libyui-devel >= 3.0.4 -BuildRequires: pkg-config - -%define libyui_qt_devel_version libyui-qt-devel >= 2.50.1 -BuildRequires: %{libyui_qt_devel_version} -%define libzypp_devel_version libzypp-devel >= 15.14.0 -BuildRequires: %{libzypp_devel_version} - -Url: http://github.com/libyui/ -Summary: Libyui - Qt Package Selector -License: LGPL-2.1-only OR LGPL-3.0-only -Group: System/Libraries +BuildRequires: pkgconfig +%if 0%{?suse_version} > 1325 +BuildRequires: libboost_headers-devel +%else +BuildRequires: boost-devel +%endif %description This package contains the Qt package selector component for libYUI. - %package -n %{bin_name} - +Summary: Libyui - Qt Package Selector # bsc#1114654: Need Qt SVG support for icons (built-in and from theme) Requires: libQt5Svg5 - Requires: libyui%{so_version} +Supplements: packageand(libyui-qt:yast2-packager) +# control center gnome requires graphical pkg and gtk is dropped (bnc#999031) +Supplements: packageand(yast2-control-center-gnome:yast2-packager) +Conflicts: libqdialogsolver1 < 1.4.0 Provides: %{name} = %{version} - Provides: yast2-qt-pkg = 2.42.0 Obsoletes: yast2-qt-pkg < 2.42.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)`) - Provides: libyui_pkg -Supplements: packageand(libyui-qt:yast2-packager) -# control center gnome requires graphical pkg and gtk is dropped (bnc#999031) -Supplements: packageand(yast2-control-center-gnome:yast2-packager) - # new packager is in qt5 and crashes if qt3 diagsolver is used (bnc#870683) Obsoletes: libqdialogsolver1 < 1.4.0 -Conflicts: libqdialogsolver1 < 1.4.0 - -Url: http://github.com/libyui/ -Summary: Libyui - Qt Package Selector -Group: System/Libraries %description -n %{bin_name} This package contains the Qt package selector component for libYUI. - - %package devel - +Summary: Libyui-qt-pkg header files Requires: %{bin_name} = %{version} Requires: %{libyui_qt_devel_version} Requires: %{libzypp_devel_version} -Url: http://github.com/libyui/ -Summary: Libyui-qt-pkg header files -Group: Development/Languages/C and C++ - %description devel This package contains the Qt package selector component for libYUI. - This can be used independently of YaST for generic (C++) applications. This package has very few dependencies. - %prep -%setup -q -n %{name}-%{version} +%setup -q %build - -export CFLAGS="$RPM_OPT_FLAGS -DNDEBUG" -export CXXFLAGS="$RPM_OPT_FLAGS -DNDEBUG" +export CFLAGS="%{optflags} -DNDEBUG" +export CXXFLAGS="%{optflags} -DNDEBUG" ./bootstrap.sh %{_prefix} -mkdir build -cd build - -%if %{?_with_debug:1}%{!?_with_debug:0} -cmake .. \ - -DYPREFIX=%{_prefix} \ - -DDOC_DIR=%{_docdir} \ - -DLIB_DIR=%{_lib} \ - -DCMAKE_BUILD_TYPE=RELWITHDEBINFO -%else -cmake .. \ - -DYPREFIX=%{_prefix} \ - -DDOC_DIR=%{_docdir} \ - -DLIB_DIR=%{_lib} \ - -DCMAKE_BUILD_TYPE=RELEASE -%endif - -make VERBOSE=1 %{?jobs:-j%jobs} +%cmake \ + -DYPREFIX=%{_prefix} \ + -DDOC_DIR=%{_docdir} \ + -DLIB_DIR=%{_lib} +%cmake_build %install -cd build -make install DESTDIR="$RPM_BUILD_ROOT" -install -m0755 -d $RPM_BUILD_ROOT/%{_docdir}/%{bin_name}/ -install -m0755 -d $RPM_BUILD_ROOT/%{_libdir}/yui -install -m0644 ../COPYING* $RPM_BUILD_ROOT/%{_docdir}/%{bin_name}/ - -%clean -rm -rf "$RPM_BUILD_ROOT" +%cmake_install %post -n %{bin_name} -p /sbin/ldconfig - %postun -n %{bin_name} -p /sbin/ldconfig %files -n %{bin_name} -%defattr(-,root,root) +%license COPYING* %dir %{_libdir}/yui %{_libdir}/yui/lib*.so.* -%doc %dir %{_docdir}/%{bin_name} -%license %{_docdir}/%{bin_name}/COPYING* %files devel -%defattr(-,root,root) -%dir %{_docdir}/%{bin_name} %{_libdir}/yui/lib*.so -%{_prefix}/include/yui +%{_includedir}/yui %{_libdir}/pkgconfig/%{name}.pc %{_libdir}/cmake/%{name} diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libyui-qt-pkg-2.46.7/src/YQPackageSelector.cc new/libyui-qt-pkg-2.46.9/src/YQPackageSelector.cc --- old/libyui-qt-pkg-2.46.7/src/YQPackageSelector.cc 2019-09-06 15:55:34.000000000 +0200 +++ new/libyui-qt-pkg-2.46.9/src/YQPackageSelector.cc 2019-11-06 14:09:12.000000000 +0100 @@ -95,7 +95,6 @@ #include "YQPkgHistoryDialog.h" #include "YQPkgLangList.h" #include "YQPkgList.h" -#include "YQPkgPackageKitGroupsFilterView.h" #include "YQPkgPatchFilterView.h" #include "YQPkgPatchList.h" #include "YQPkgPatternList.h" @@ -147,7 +146,6 @@ _detailsViews = 0; _filters = 0; _langList = 0; - _packageKitGroupsFilterView = 0; _patchFilterView = 0; _patchList = 0; _patternList = 0; @@ -347,18 +345,6 @@ // - // PackageKit group view - // - - _packageKitGroupsFilterView = new YQPkgPackageKitGroupsFilterView( parent ); - YUI_CHECK_NEW( _packageKitGroupsFilterView ); - _filters->addPage( _( "Package &Groups" ), _packageKitGroupsFilterView, "package_groups" ); - - connect( this, SIGNAL( loadData() ), - _packageKitGroupsFilterView, SLOT ( filter() ) ); - - - // // Languages view // @@ -976,7 +962,6 @@ connectFilter( _langList, _pkgList ); connectFilter( _repoFilterView, _pkgList, false ); connectFilter( _serviceFilterView, _pkgList, false ); - connectFilter( _packageKitGroupsFilterView, _pkgList, false ); connectFilter( _statusFilterView, _pkgList, false ); connectFilter( _searchFilterView, _pkgList, false ); @@ -1504,7 +1489,11 @@ yuiDebug() << repo << std::endl; if ( repo != zypp::Repository::noRepository ) + { zypp::getZYpp()->resolver()->addUpgradeRepo(repo); + // Do not complain about vendor change when switching repos (bsc##1149391) + zypp::getZYpp()->resolver()->dupSetAllowVendorChange(true); + } } else if (url.scheme() == "repoupgraderemove") { diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libyui-qt-pkg-2.46.7/src/YQPackageSelector.h new/libyui-qt-pkg-2.46.9/src/YQPackageSelector.h --- old/libyui-qt-pkg-2.46.7/src/YQPackageSelector.h 2019-09-06 15:55:34.000000000 +0200 +++ new/libyui-qt-pkg-2.46.9/src/YQPackageSelector.h 2019-11-06 14:09:12.000000000 +0100 @@ -69,7 +69,6 @@ class YQPkgFilterTab; class YQPkgLangList; class YQPkgList; -class YQPkgPackageKitGroupsFilterView; class YQPkgPatchFilterView; class YQPkgPatchList; class YQPkgPatternList; @@ -398,7 +397,6 @@ YQPkgLangList * _langList; YQPkgList * _pkgList; YQPkgPatternList * _patternList; - YQPkgPackageKitGroupsFilterView * _packageKitGroupsFilterView; YQPkgSearchFilterView * _searchFilterView; YQPkgStatusFilterView * _statusFilterView; YQPkgTechnicalDetailsView * _pkgTechnicalDetailsView; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libyui-qt-pkg-2.46.7/src/YQPkgPackageKitGroupsFilterView.cc new/libyui-qt-pkg-2.46.9/src/YQPkgPackageKitGroupsFilterView.cc --- old/libyui-qt-pkg-2.46.7/src/YQPkgPackageKitGroupsFilterView.cc 2019-09-06 15:55:34.000000000 +0200 +++ new/libyui-qt-pkg-2.46.9/src/YQPkgPackageKitGroupsFilterView.cc 1970-01-01 01:00:00.000000000 +0100 @@ -1,455 +0,0 @@ -/************************************************************************** -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: YQPkgPackageKitGroupsFilterView.cc - - Authors: Duncan Mac-Vicar Prett <dun...@suse.de> - Stefan Hundhammer <s...@suse.de> - - Textdomain "qt-pkg" - -/-*/ - - -#define YUILogComponent "qt-pkg" -#include "YUILog.h" - -#include <QApplication> - -#include "YQPackageSelector.h" -#include "zypp/sat/LookupAttr.h" - -#include "YQPkgPackageKitGroupsFilterView.h" -#include "YQi18n.h" -#include "YQUI.h" -#include "utf8.h" - - -QString -translatedText( YPkgGroupEnum group ) -{ - switch ( group ) - { - case PK_GROUP_ENUM_ACCESSIBILITY: return _( "Accessibility" ); - case PK_GROUP_ENUM_ACCESSORIES: return _( "Accessories" ); - case PK_GROUP_ENUM_EDUCATION: return _( "Education" ); - case PK_GROUP_ENUM_GAMES: return _( "Games" ); - case PK_GROUP_ENUM_GRAPHICS: return _( "Graphics" ); - case PK_GROUP_ENUM_INTERNET: return _( "Internet" ); - case PK_GROUP_ENUM_OFFICE: return _( "Office" ); - case PK_GROUP_ENUM_OTHER: return _( "Other" ); - case PK_GROUP_ENUM_PROGRAMMING: return _( "Programming" ); - case PK_GROUP_ENUM_MULTIMEDIA: return _( "Multimedia" ); - case PK_GROUP_ENUM_SYSTEM: return _( "System" ); - case PK_GROUP_ENUM_DESKTOP_GNOME: return _( "GNOME Desktop" ); - case PK_GROUP_ENUM_DESKTOP_KDE: return _( "KDE Desktop" ); - case PK_GROUP_ENUM_DESKTOP_XFCE: return _( "XFCE Desktop" ); - case PK_GROUP_ENUM_DESKTOP_OTHER: return _( "Other Desktops" ); - case PK_GROUP_ENUM_PUBLISHING: return _( "Publishing" ); - case PK_GROUP_ENUM_SERVERS: return _( "Servers" ); - case PK_GROUP_ENUM_FONTS: return _( "Fonts" ); - case PK_GROUP_ENUM_ADMIN_TOOLS: return _( "Admin Tools" ); - case PK_GROUP_ENUM_LEGACY: return _( "Legacy" ); - case PK_GROUP_ENUM_LOCALIZATION: return _( "Localization" ); - case PK_GROUP_ENUM_VIRTUALIZATION: return _( "Virtualization" ); - case PK_GROUP_ENUM_SECURITY: return _( "Security" ); - case PK_GROUP_ENUM_POWER_MANAGEMENT: return _( "Power Management" ); - case PK_GROUP_ENUM_COMMUNICATION: return _( "Communication" ); - case PK_GROUP_ENUM_NETWORK: return _( "Network" ); - case PK_GROUP_ENUM_MAPS: return _( "Maps" ); - case PK_GROUP_ENUM_REPOS: return _( "Software Sources" ); - case PK_GROUP_ENUM_UNKNOWN: return _( "Unknown 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 - } - - return _("Unknown Group"); -} - - -string -groupIcon( YPkgGroupEnum group ) -{ - switch ( group ) - { - case PK_GROUP_ENUM_ACCESSIBILITY: return( "preferences-other" ); - case PK_GROUP_ENUM_ACCESSORIES: return( "applications-accessories" ); - case PK_GROUP_ENUM_EDUCATION: return( "applications-science" ); - case PK_GROUP_ENUM_GAMES: return( "applications-games" ); - case PK_GROUP_ENUM_GRAPHICS: return( "applications-graphics" ); - case PK_GROUP_ENUM_INTERNET: return( "applications-internet" ); - case PK_GROUP_ENUM_OFFICE: return( "applications-office" ); - case PK_GROUP_ENUM_OTHER: return( "applications-other" ); - case PK_GROUP_ENUM_PROGRAMMING: return( "applications-development" ); - case PK_GROUP_ENUM_MULTIMEDIA: return( "applications-multimedia" ); - case PK_GROUP_ENUM_SYSTEM: return( "applications-system" ); - case PK_GROUP_ENUM_DESKTOP_GNOME: return( "preferences-desktop" ); - case PK_GROUP_ENUM_DESKTOP_KDE: return( "preferences-desktop" ); - case PK_GROUP_ENUM_DESKTOP_XFCE: return( "preferences-desktop" ); - case PK_GROUP_ENUM_DESKTOP_OTHER: return( "preferences-desktop" ); - case PK_GROUP_ENUM_PUBLISHING: return( "applications-office" ); - case PK_GROUP_ENUM_SERVERS: return( "applications-system" ); - case PK_GROUP_ENUM_FONTS: return( "applications-graphics" ); - case PK_GROUP_ENUM_ADMIN_TOOLS: return( "applications-utilities" ); - case PK_GROUP_ENUM_LEGACY: return( "applications-other" ); - case PK_GROUP_ENUM_LOCALIZATION: return( "preferences-desktop-locale" ); - case PK_GROUP_ENUM_VIRTUALIZATION: return( "applications-system" ); - case PK_GROUP_ENUM_SECURITY: return( "preferences-other" ); - case PK_GROUP_ENUM_POWER_MANAGEMENT: return( "utilities-system-monitor" ); - case PK_GROUP_ENUM_COMMUNICATION: return( "applications-internet" ); - case PK_GROUP_ENUM_NETWORK: return( "applications-internet" ); - case PK_GROUP_ENUM_MAPS: return( "preferences-desktop-locale" ); - case PK_GROUP_ENUM_REPOS: return( "preferences-system-network" ); - case PK_GROUP_ENUM_UNKNOWN: return( "preferences-other" ); - - 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( "" ); -} - - -YPkgGroupEnum -rpmGroupToPackageKitGroup( const string & rpmGroup ) -{ - string group = zypp::str::toLower( rpmGroup ); - - if ( group.find( "amusements/teaching" ) != string::npos ) return PK_GROUP_ENUM_EDUCATION; - if ( group.find( "amusements" ) != string::npos ) return PK_GROUP_ENUM_GAMES; - if ( group.find( "development" ) != string::npos ) return PK_GROUP_ENUM_PROGRAMMING; - if ( group.find( "hardware" ) != string::npos ) return PK_GROUP_ENUM_SYSTEM; - if ( group.find( "archiving" ) != string::npos ) return PK_GROUP_ENUM_ADMIN_TOOLS; - if ( group.find( "clustering" ) != string::npos ) return PK_GROUP_ENUM_ADMIN_TOOLS; - if ( group.find( "system/monitoring" ) != string::npos ) return PK_GROUP_ENUM_ADMIN_TOOLS; - if ( group.find( "databases" ) != string::npos ) return PK_GROUP_ENUM_ADMIN_TOOLS; - if ( group.find( "system/management" ) != string::npos ) return PK_GROUP_ENUM_ADMIN_TOOLS; - if ( group.find( "graphics" ) != string::npos ) return PK_GROUP_ENUM_GRAPHICS; - if ( group.find( "multimedia" ) != string::npos ) return PK_GROUP_ENUM_MULTIMEDIA; - if ( group.find( "network" ) != string::npos ) return PK_GROUP_ENUM_NETWORK; - if ( group.find( "office" ) != string::npos ) return PK_GROUP_ENUM_OFFICE; - if ( group.find( "text" ) != string::npos ) return PK_GROUP_ENUM_OFFICE; - if ( group.find( "editors" ) != string::npos ) return PK_GROUP_ENUM_OFFICE; - if ( group.find( "publishing" ) != string::npos ) return PK_GROUP_ENUM_PUBLISHING; - if ( group.find( "security" ) != string::npos ) return PK_GROUP_ENUM_SECURITY; - if ( group.find( "telephony" ) != string::npos ) return PK_GROUP_ENUM_COMMUNICATION; - if ( group.find( "gnome" ) != string::npos ) return PK_GROUP_ENUM_DESKTOP_GNOME; - if ( group.find( "kde" ) != string::npos ) return PK_GROUP_ENUM_DESKTOP_KDE; - if ( group.find( "xfce" ) != string::npos ) return PK_GROUP_ENUM_DESKTOP_XFCE; - if ( group.find( "gui/other" ) != string::npos ) return PK_GROUP_ENUM_DESKTOP_OTHER; - if ( group.find( "localization" ) != string::npos ) return PK_GROUP_ENUM_LOCALIZATION; - if ( group.find( "system" ) != string::npos ) return PK_GROUP_ENUM_SYSTEM; - if ( group.find( "scientific" ) != string::npos ) return PK_GROUP_ENUM_EDUCATION; - - return PK_GROUP_ENUM_UNKNOWN; -} - - - - -YQPkgPackageKitGroupsFilterView::YQPkgPackageKitGroupsFilterView( QWidget * parent ) - : QTreeWidget( parent ) - , _selectedGroup(YPKG_GROUP_ALL) -{ - setIconSize(QSize(32,32)); - setHeaderLabels( QStringList(_( "Package Groups" )) ); - setRootIsDecorated( false ); - setSortingEnabled( true ); - connect( this, SIGNAL( currentItemChanged ( QTreeWidgetItem *, QTreeWidgetItem * ) ), - this, SLOT ( slotSelectionChanged ( QTreeWidgetItem * ) ) ); - fillGroups(); - - selectSomething(); -} - - -YQPkgPackageKitGroupsFilterView::~YQPkgPackageKitGroupsFilterView() -{ -} - - -void -YQPkgPackageKitGroupsFilterView::fillGroups() -{ - if ( _groupsMap.empty() ) - { - zypp::sat::LookupAttr rpmgroups( zypp::sat::SolvAttr::group ); - for ( zypp::sat::LookupAttr::iterator it = rpmgroups.begin(); - it != rpmgroups.end(); - ++it ) - { - YPkgGroupEnum group; - std::map<std::string, YPkgGroupEnum>::const_iterator itg = _groupsCache.find(it.asString()); - if ( itg == _groupsCache.end() ) - { - group = rpmGroupToPackageKitGroup( it.asString() ); - _groupsCache[it.asString()] = group; - } - else - { - group = itg->second; - } - - if ( _groupsMap.find(group) == _groupsMap.end() ) - { - _groupsMap[group] = new YQPkgPackageKitGroup( this, group ); - } - } - - _groupsMap[ YPKG_GROUP_ALL ] = new YQPkgPackageKitGroup( this, YPKG_GROUP_ALL ); - _groupsMap[ YPKG_GROUP_RECOMMENDED ] = new YQPkgPackageKitGroup( this, YPKG_GROUP_RECOMMENDED ); - _groupsMap[ YPKG_GROUP_SUGGESTED ] = new YQPkgPackageKitGroup( this, YPKG_GROUP_SUGGESTED ); - _groupsMap[ YPKG_GROUP_ORPHANED ] = new YQPkgPackageKitGroup( this, YPKG_GROUP_ORPHANED ); - _groupsMap[ YPKG_GROUP_UNNEEDED ] = new YQPkgPackageKitGroup( this, YPKG_GROUP_UNNEEDED ); - if ( ! zypp::sat::Pool::instance().multiversion().empty() ) - _groupsMap[ YPKG_GROUP_MULTIVERSION] = new YQPkgPackageKitGroup( this, YPKG_GROUP_MULTIVERSION ); - - } -} - - -void -YQPkgPackageKitGroupsFilterView::selectSomething() -{ -// FIXME -// QTreeWidgetItem * item = children().first(); -// -// if ( item ) -// setCurrentItem(item); -} - - -void -YQPkgPackageKitGroupsFilterView::filterIfVisible() -{ - if ( isVisible() ) - filter(); -} - - -void -YQPkgPackageKitGroupsFilterView::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 -YQPkgPackageKitGroupsFilterView::slotSelectionChanged( QTreeWidgetItem * newSelection ) -{ - YQPkgPackageKitGroup * sel = dynamic_cast<YQPkgPackageKitGroup *>( 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 -YQPkgPackageKitGroupsFilterView::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; - } - - YPkgGroupEnum pk_group = rpmGroupToPackageKitGroup( pkg->group() ); - - if ( pk_group == selectedGroup() ) - { - 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; -} - - -YQPkgPackageKitGroup * -YQPkgPackageKitGroupsFilterView::selection() const -{ - QTreeWidgetItem * item = currentItem(); - - if ( ! item ) - return 0; - - return dynamic_cast<YQPkgPackageKitGroup *> ( item ); -} - - - - -YQPkgPackageKitGroup::YQPkgPackageKitGroup( YQPkgPackageKitGroupsFilterView * parentFilterView, - YPkgGroupEnum group ) - : QTreeWidgetItem( parentFilterView ) - , _filterView( parentFilterView ) - , _group( group ) -{ - QFont f = font(0); - QFontMetrics fm(f); - f.setPixelSize( (int) ( fm.height() * 1.1 ) ); - setFont(0,f); - - string iconName = groupIcon( group ); - setIcon( 0, YQUI::ui()->loadIcon( iconName ) ); - setText( 0, translatedText( group ) ); -} - - -YQPkgPackageKitGroup::~YQPkgPackageKitGroup() -{ - // NOP -} - - -bool -YQPkgPackageKitGroup::operator< ( const QTreeWidgetItem & otherListViewItem ) const -{ - const YQPkgPackageKitGroup * otherCategoryItem = - dynamic_cast<const YQPkgPackageKitGroup *>(&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.7/src/YQPkgPackageKitGroupsFilterView.h new/libyui-qt-pkg-2.46.9/src/YQPkgPackageKitGroupsFilterView.h --- old/libyui-qt-pkg-2.46.7/src/YQPkgPackageKitGroupsFilterView.h 2019-09-06 15:55:34.000000000 +0200 +++ new/libyui-qt-pkg-2.46.9/src/YQPkgPackageKitGroupsFilterView.h 1970-01-01 01:00:00.000000000 +0100 @@ -1,227 +0,0 @@ -/************************************************************************** -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: YQPkgPackageKitGroupsFilterView.h - - Authors: Duncan Mac-Vicar Prett <dun...@suse.de> - Stefan Hundhammer <s...@suse.de> - -/-*/ - - -#ifndef YQPkgPackageKitGroupsFilterView_h -#define YQPkgPackageKitGroupsFilterView_h - -#include <map> -#include "YQZypp.h" -#include "YRpmGroupsTree.h" -#include <QTreeWidget> - -using std::string; - -typedef enum -{ - // - // PackageKit values - // - - PK_GROUP_ENUM_ACCESSIBILITY, - PK_GROUP_ENUM_ACCESSORIES, - PK_GROUP_ENUM_EDUCATION, - PK_GROUP_ENUM_GAMES, - PK_GROUP_ENUM_GRAPHICS, - PK_GROUP_ENUM_INTERNET, - PK_GROUP_ENUM_OFFICE, - PK_GROUP_ENUM_OTHER, - PK_GROUP_ENUM_PROGRAMMING, - PK_GROUP_ENUM_MULTIMEDIA, - PK_GROUP_ENUM_SYSTEM, - PK_GROUP_ENUM_DESKTOP_GNOME, - PK_GROUP_ENUM_DESKTOP_KDE, - PK_GROUP_ENUM_DESKTOP_XFCE, - PK_GROUP_ENUM_DESKTOP_OTHER, - PK_GROUP_ENUM_PUBLISHING, - PK_GROUP_ENUM_SERVERS, - PK_GROUP_ENUM_FONTS, - PK_GROUP_ENUM_ADMIN_TOOLS, - PK_GROUP_ENUM_LEGACY, - PK_GROUP_ENUM_LOCALIZATION, - PK_GROUP_ENUM_VIRTUALIZATION, - PK_GROUP_ENUM_SECURITY, - PK_GROUP_ENUM_POWER_MANAGEMENT, - PK_GROUP_ENUM_COMMUNICATION, - PK_GROUP_ENUM_NETWORK, - PK_GROUP_ENUM_MAPS, - PK_GROUP_ENUM_REPOS, - PK_GROUP_ENUM_UNKNOWN, - - // - // Other values - // - - YPKG_GROUP_SUGGESTED, - YPKG_GROUP_RECOMMENDED, - YPKG_GROUP_ORPHANED, - YPKG_GROUP_UNNEEDED, - YPKG_GROUP_MULTIVERSION, - YPKG_GROUP_ALL, -} YPkgGroupEnum; - - -class YQPkgPackageKitGroup; - - -/** - * Filter view for PackageKit groups. Uses the packages' RPM group tags and - * maps them to the corresponding PackageKit group. - **/ -class YQPkgPackageKitGroupsFilterView : public QTreeWidget -{ - Q_OBJECT - -public: - - /** - * Constructor - **/ - YQPkgPackageKitGroupsFilterView( QWidget * parent ); - - /** - * Destructor - **/ - virtual ~YQPkgPackageKitGroupsFilterView(); - - /** - * Returns the currently selected item or 0 if there is none. - **/ - YQPkgPackageKitGroup * 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, YQPkgPackageKitGroup *> _groupsMap; - - // map to cache converted groups - std::map<std::string, YPkgGroupEnum> _groupsCache; -}; - - -class YQPkgPackageKitGroup: public QTreeWidgetItem -{ -public: - - YQPkgPackageKitGroup( YQPkgPackageKitGroupsFilterView * parentFilterView, - YPkgGroupEnum group ); - virtual ~YQPkgPackageKitGroup(); - - YQPkgPackageKitGroupsFilterView * filterView() const { return _filterView; } - YPkgGroupEnum group() const { return _group; } - virtual bool operator< ( const QTreeWidgetItem & otherListViewItem ) const; - - -private: - - // Data members - - YQPkgPackageKitGroupsFilterView * _filterView; - YPkgGroupEnum _group; -}; - - -#endif // ifndef YQPkgPackageKitGroupsFilterView_h