libyui-qt-pkg
Loading...
Searching...
No Matches
YQPackageSelector.h
1/*
2 Copyright (c) 2000 - 2010 Novell, Inc.
3 Copyright (c) 2021 SUSE LLC
4
5 This library is free software; you can redistribute it and/or modify
6 it under the terms of the GNU Lesser General Public License as
7 published by the Free Software Foundation; either version 2.1 of the
8 License, or (at your option) version 3.0 of the License. This library
9 is distributed in the hope that it will be useful, but WITHOUT ANY
10 WARRANTY; without even the implied warranty of MERCHANTABILITY or
11 FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public
12 License for more details. You should have received a copy of the GNU
13 Lesser General Public License along with this library; if not, write
14 to the Free Software Foundation, Inc., 51 Franklin Street, Fifth
15 Floor, Boston, MA 02110-1301 USA
16*/
17
18
19/*
20 File: YQPackageSelector.h
21 Author: Stefan Hundhammer <shundhammer.de>
22*/
23
24
25#ifndef YQPackageSelector_h
26#define YQPackageSelector_h
27
28#include <QColor>
29#include <QLabel>
30#include <QMenu>
31
32#include "YQPackageSelectorBase.h"
33#include "YQPkgObjList.h"
34
35class QCheckBox;
36class QComboBox;
37class QLabel;
38class QListWidget;
39class QProgressBar;
40class QPushButton;
41class QSplitter;
42class QTabWidget;
43class QMenu;
44class QMenuBar;
45
46class QY2ComboTabWidget;
47
52class YQPkgFilterTab;
53class YQPkgLangList;
54class YQPkgList;
57class YQPkgPatchList;
61class YQPkgSelList;
67
69{
70 Q_OBJECT
71
72public:
73
74 YQPackageSelector( YWidget * parent, long modeFlags = 0 );
76
77
78public slots:
79
86
92
96 void pkgExport();
97
101 void pkgImport();
102
107 void installDevelPkgs();
108
114
120
125
130 void installSubPkgs( const QString & suffix );
131
137 void pkgExcludeDebugChanged( bool on );
138 void pkgExcludeDevelChanged( bool on );
139
140
141 /*
142 * Enable or disable verify system mode of the solver
143 */
144 void pkgVerifySytemModeChanged( bool on );
145
146 /*
147 * Install recommended packages
148 */
149 void pkgInstallRecommendedChanged( bool on );
150
151 /*
152 * Enable or disable CleandepsOnRemove of the solver
153 * (= Cleanup when deleting packages)
154 */
155 void pkgCleanDepsOnRemoveChanged( bool on );
156
157 /*
158 * Enable or disable vendor change allowed of the solver
159 */
160 void pkgAllowVendorChangeChanged( bool on );
161
162
163
167 void help();
168
172 void symbolHelp();
173
177 void keyboardHelp();
178
183
187 void loadSettings();
188
192 void saveSettings();
193
194
195signals:
196
202 void loadData();
203
209 void refresh();
210
211
212protected slots:
213
217 void addPatchFilterView();
218
223
229 void globalUpdatePkg() { globalUpdatePkg( false ); }
230
237
241 void showProducts();
242
246 void showHistory();
247
251 void slotRepoUpgradeLabelLinkClicked(const QString &link);
252
256 void busyCursor();
257
261 void normalCursor();
262
263
264protected:
265
266 // Layout methods - create and layout widgets
267
268 void basicLayout();
269
270 QWidget * layoutRightPane ( QWidget *parent );
271 void layoutFilters ( QWidget *parent );
272 void layoutPkgList ( QWidget *parent );
273 void layoutDetailsViews ( QWidget *parent );
274 void layoutButtons ( QWidget *parent );
275 void layoutMenuBar ( QWidget *parent );
276
283 void makeConnections();
284
291 void addMenus();
292
301 void connectFilter( QWidget * filter,
302 QWidget * pkgList,
303 bool hasUpdateSignal = true );
304
308 void connectPatchList();
309
318 void globalUpdatePkg( bool force );
319
325 void importSelectable( ZyppSel selectable,
326 bool isWanted,
327 const char * kind );
328
334
338 QString symHelp( const QString & imgFileName,
339 const QString & summary,
340 const QString & explanation );
341
342
346 QString keyHelp( const QString & key,
347 const QString & summary,
348 const QString & explanation );
349
353 void loadCommonSettings();
354
358 void saveCommonSettings();
359
363 static QString para( const QString & text );
364
368 static QString listItem( const QString & text );
369
370
371 // Data members
372
373 QAction * _autoDependenciesAction;
374 QPushButton * _checkDependenciesButton;
375 QTabWidget * _detailsViews;
376 YQPkgFilterTab * _filters;
377 YQPkgChangeLogView * _pkgChangeLogView;
378 YQPkgDependenciesView * _pkgDependenciesView;
379 YQPkgDescriptionView * _pkgDescriptionView;
380 YQPkgFileListView * _pkgFileListView;
381 QLabel * _repoUpgradeLabel;
382 QLabel * _repoUpgradingLabel;
383 QWidget * _notificationsContainer;
384 YQPkgRepoFilterView * _repoFilterView;
385 YQPkgServiceFilterView * _serviceFilterView;
386 YQPkgLangList * _langList;
387 YQPkgList * _pkgList;
388 YQPkgPatternList * _patternList;
389 YQPkgClassFilterView * _pkgClassFilterView;
390 YQPkgSearchFilterView * _searchFilterView;
391 YQPkgStatusFilterView * _statusFilterView;
392 YQPkgTechnicalDetailsView * _pkgTechnicalDetailsView;
393 YQPkgUpdateProblemFilterView * _updateProblemFilterView;
394 YQPkgVersionsView * _pkgVersionsView;
395 YQPkgPatchFilterView * _patchFilterView;
396 YQPkgPatchList * _patchList;
397
398 QMenuBar * _menuBar;
399 QMenu * _fileMenu;
400 QMenu * _pkgMenu;
401 QMenu * _patchMenu;
402 QMenu * _configMenu;
403 QMenu * _dependencyMenu;
404 QMenu * _optionsMenu;
405 QMenu * _extrasMenu;
406 QMenu * _helpMenu;
407
408 QAction * _showDevelAction;
409 QAction * _showDebugAction;
410 QAction * _verifySystemModeAction;
411 QAction * _installRecommendedAction;
412 QAction * _cleanDepsOnRemoveAction;
413 QAction * _allowVendorChangeAction;
414
415 YQPkgObjList::ExcludeRule * _excludeDevelPkgs;
416 YQPkgObjList::ExcludeRule * _excludeDebugInfoPkgs;
417
418 QColor _normalButtonBackground;
419};
420
421
422
423#endif // YQPackageSelector_h
Definition YQPackageSelectorBase.h:49
Definition YQPackageSelector.h:69
void pkgExcludeDebugChanged(bool on)
Definition YQPackageSelector.cc:1603
void installDebugInfoPkgs()
Definition YQPackageSelector.cc:1568
void connectPatchList()
Definition YQPackageSelector.cc:1170
QString keyHelp(const QString &key, const QString &summary, const QString &explanation)
Definition YQPackageSelectorHelp.cc:332
static QString listItem(const QString &text)
Definition YQPackageSelectorHelp.cc:357
void addPatchFilterView()
Definition YQPackageSelector.cc:1132
void pkgExport()
Definition YQPackageSelector.cc:1196
void loadSettings()
Definition YQPackageSelector.cc:1778
void pkgImport()
Definition YQPackageSelector.cc:1252
void autoResolveDependencies()
Definition YQPackageSelector.cc:1095
void updateRepositoryUpgradeLabel()
Definition YQPackageSelector.cc:1462
void keyboardHelp()
Definition YQPackageSelectorHelp.cc:254
void normalCursor()
Definition YQPackageSelector.cc:1889
void installDevelPkgs()
Definition YQPackageSelector.cc:1561
void showProducts()
Definition YQPackageSelector.cc:1547
void showHistory()
Definition YQPackageSelector.cc:1554
void installRecommendedPkgs()
Definition YQPackageSelector.cc:1582
bool anyRetractedPkgInstalled()
Definition YQPackageSelector.cc:1761
void busyCursor()
Definition YQPackageSelector.cc:1884
void installSubPkgs(const QString &suffix)
Definition YQPackageSelector.cc:1661
void installDebugSourcePkgs()
Definition YQPackageSelector.cc:1575
static QString para(const QString &text)
Definition YQPackageSelectorHelp.cc:350
void hotkeyInsertPatchFilterView()
Definition YQPackageSelector.cc:1149
void loadCommonSettings()
Definition YQPackageSelector.cc:1801
void saveSettings()
Definition YQPackageSelector.cc:1842
void makeConnections()
Definition YQPackageSelector.cc:988
void symbolHelp()
Definition YQPackageSelectorHelp.cc:142
void addMenus()
Definition YQPackageSelector.cc:672
void globalUpdatePkg()
Definition YQPackageSelector.h:229
int manualResolvePackageDependencies()
Definition YQPackageSelector.cc:1105
void globalUpdatePkgForce()
Definition YQPackageSelector.h:236
void connectFilter(QWidget *filter, QWidget *pkgList, bool hasUpdateSignal=true)
Definition YQPackageSelector.cc:932
void help()
Definition YQPackageSelectorHelp.cc:47
QString symHelp(const QString &imgFileName, const QString &summary, const QString &explanation)
Definition YQPackageSelectorHelp.cc:234
void saveCommonSettings()
Definition YQPackageSelector.cc:1861
void slotRepoUpgradeLabelLinkClicked(const QString &link)
Definition YQPackageSelector.cc:1511
void importSelectable(ZyppSel selectable, bool isWanted, const char *kind)
Definition YQPackageSelector.cc:1346
Display a pkg's file list.
Definition YQPkgChangeLogView.h:40
Definition YQPkgClassFilterView.h:56
Display technical details ( very much like 'rpm -qi' ) for a zypp::Package object - the installed ins...
Definition YQPkgDependenciesView.h:40
Display the description of a ZyppObj derived object along with its name and summary.
Definition YQPkgDescriptionView.h:40
Display a pkg's file list.
Definition YQPkgFileListView.h:39
Definition YQPkgFilterTab.h:73
Display a list of zypp::Selection objects.
Definition YQPkgLangList.h:37
Display a list of zypp::Package objects.
Definition YQPkgList.h:39
Definition YQPkgObjList.h:689
Display a list of zypp::Patch objects and ( below ) details about the currently selected patch.
Definition YQPkgPatchFilterView.h:46
Display a list of zypp::Patch objects.
Definition YQPkgPatchList.h:59
Display a list of zypp::Pattern objects.
Definition YQPkgPatternList.h:40
Definition YQPkgRepoFilterView.h:34
Filter view for searching within packages.
Definition YQPkgSearchFilterView.h:47
Definition YQPkgServiceFilterView.h:31
Filter view for packages that made problems during update.
Definition YQPkgStatusFilterView.h:44
Display technical details (very much like 'rpm -qi') for a ZYPP object - the installed instance,...
Definition YQPkgTechnicalDetailsView.h:37
Filter view for packages that made problems during update.
Definition YQPkgUpdateProblemFilterView.h:38
Package version selector: Display a list of available versions from all the different installation so...
Definition YQPkgVersionsView.h:50