libyui-ncurses-pkg  2.48.5
NCPackageSelectorStart.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: NCPackageSelectorStart.h
37 
38  Author: Gabriele Strattner <gs@suse.de>
39 
40 /-*/
41 #ifndef NCPackageSelectorStart_h
42 #define NCPackageSelectorStart_h
43 
44 #include <iosfwd>
45 
46 #include "YNCursesUI.h"
47 #include "YPackageSelector.h"
48 #include "YLayoutBox.h"
49 #include "NCLayoutBox.h"
50 #include "NCPackageSelector.h"
51 #include "NCPopupTable.h"
52 
53 
54 class NCPkgTable;
55 class NCPackageSelector;
56 class NCPushButton;
57 
58 /**
59  * @short the package selector widget
60  */
61 class NCPackageSelectorStart : public NCLayoutBox
62 {
63 
64  friend std::ostream & operator<<( std::ostream & STREAM, const NCPackageSelectorStart & OBJ );
65 
66  NCPackageSelectorStart & operator=( const NCPackageSelectorStart & );
68 
69  private:
70 
71  NCPackageSelector *packager; // packager object contains the data and handles events
72 
73  protected:
74 
75  virtual const char * location() const {
76  return primary() == YD_HORIZ ? "NC(H)PackageSelectorStart" : "NC(V)PackageSelectorStart" ;
77  }
78 
79  public:
80 
81  /**
82  * Constructor
83  * creates the widget tree of the package selector
84  */
85  NCPackageSelectorStart( YWidget * parent,
86  long modeFlags,
87  YUIDimension dimension );
88 
89  /**
90  * Destructor
91  */
92  virtual ~NCPackageSelectorStart();
93 
94  virtual int preferredWidth() { return NCLayoutBox::preferredWidth(); }
95  virtual int preferredHeight() { return NCLayoutBox::preferredHeight(); }
96 
97  /**
98  * Set the new size of the widget.
99  *
100  * Reimplemented from YWidget.
101  **/
102  virtual void setSize( int newWidth, int newHeight );
103 
104  /**
105  * Fills the package table with packages belonging to the
106  * default filter (the filter which is selected when entering the
107  * package selection).
108  **/
109  void showDefaultList();
110 
111  /**
112  * Pass the event to the handleEvent method of the member variable
113  * NCPackageSelector packager.
114  * @param event The NCursesEvent
115  * @return bool
116  */
117  bool handleEvent( const NCursesEvent& event );
118 
119 };
120 
121 ///////////////////////////////////////////////////////////////////
122 
123 #endif // NCPackageSelectorStart_h
The package table class.
Definition: NCPkgTable.h:207
virtual void setSize(int newWidth, int newHeight)
Set the new size of the widget.
virtual ~NCPackageSelectorStart()
Destructor.
bool handleEvent(const NCursesEvent &event)
Pass the event to the handleEvent method of the member variable NCPackageSelector packager...
void showDefaultList()
Fills the package table with packages belonging to the default filter (the filter which is selected ...
the package selector widget