libyui-ncurses-pkg  2.50.7
NCPkgMenuDeps.h
1 /****************************************************************************
2 |
3 | Copyright (c) [2002-2011] Novell, Inc.
4 | All Rights Reserved.
5 |
6 | This program is free software; you can redistribute it and/or
7 | modify it under the terms of version 2 of the GNU General Public License as
8 | published by the Free Software Foundation.
9 |
10 | This program is distributed in the hope that it will be useful,
11 | but WITHOUT ANY WARRANTY; without even the implied warranty of
12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 | GNU General Public License for more details.
14 |
15 | You should have received a copy of the GNU General Public License
16 | along with this program; if not, contact Novell, Inc.
17 |
18 | To contact Novell about this file by physical or electronic mail,
19 | you may find current contact information at www.novell.com
20 |
21 |***************************************************************************/
22 
23 
24 /*---------------------------------------------------------------------\
25 | |
26 | __ __ ____ _____ ____ |
27 | \ \ / /_ _/ ___|_ _|___ \ |
28 | \ V / _` \___ \ | | __) | |
29 | | | (_| |___) || | / __/ |
30 | |_|\__,_|____/ |_| |_____| |
31 | |
32 | core system |
33 | (C) SuSE GmbH |
34 \----------------------------------------------------------------------/
35 
36  File: NCPkgMenuDeps.cc
37 
38  Author: Hedgehog Painter <kmachalkova@suse.cz>
39 
40 /-*/
41 #ifndef NCPkgMenuDeps_h
42 #define NCPkgMenuDeps_h
43 
44 #include <string>
45 
46 #include "NCurses.h"
47 #include "NCi18n.h"
48 #include "NCMenuButton.h"
49 #include "NCPopupInfo.h"
50 #include "NCPkgPopupTable.h"
51 #include "NCZypp.h"
52 
53 class NCPackageSelector;
54 
55 class NCPkgMenuDeps : public NCMenuButton
56 {
57  NCPkgMenuDeps & operator=( const NCPkgMenuDeps & );
58  NCPkgMenuDeps ( const NCPkgMenuDeps & );
59 
60 public:
61 
62  NCPackageSelector *pkg;
63 
64  YItemCollection items;
65 
66  YMenuItem *autoCheckDeps;
67  YMenuItem *checkNow;
68  YMenuItem *verifySystem;
69  YMenuItem *verifySystemOpt;
70  YMenuItem *installRecommendedOpt;
71  YMenuItem *installRecommendedNow;
72  YMenuItem *cleanDepsOnRemove;
73  YMenuItem *allowVendorChange;
74  YMenuItem *testCase;
75 
76  NCPkgMenuDeps (YWidget *parent, std::string label, NCPackageSelector *pkger);
77  virtual ~NCPkgMenuDeps();
78 
79  void createLayout();
80 
81  bool handleEvent (const NCursesEvent & event);
82 
83  bool checkDependencies();
84 
85  bool generateTestcase();
86 
87  bool setAutoCheck();
88 
89  bool setCleanDepsOnRemove();
90 
91  bool setInstallRecommended();
92 
93  bool doInstallRecommended();
94 
95  bool setAllowVendorChange();
96 
97  bool setVerifySystem();
98 
99  bool verify();
100 
101  void setSelected( YMenuItem *item, bool selected);
102 };
103 
104 #endif