libyui-ncurses  2.57.2
NCPopupTable.h
1 /*
2  Copyright (C) 2000-2012 Novell, Inc
3  This library is free software; you can redistribute it and/or modify
4  it under the terms of the GNU Lesser General Public License as
5  published by the Free Software Foundation; either version 2.1 of the
6  License, or (at your option) version 3.0 of the License. This library
7  is distributed in the hope that it will be useful, but WITHOUT ANY
8  WARRANTY; without even the implied warranty of MERCHANTABILITY or
9  FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public
10  License for more details. You should have received a copy of the GNU
11  Lesser General Public License along with this library; if not, write
12  to the Free Software Foundation, Inc., 51 Franklin Street, Fifth
13  Floor, Boston, MA 02110-1301 USA
14 */
15 
16 
17 /*-/
18 
19  File: NCPopupTable.h
20 
21  Author: Michael Andres <ma@suse.de>
22 
23 /-*/
24 
25 #ifndef NCPopupTable_h
26 #define NCPopupTable_h
27 
28 #include <iosfwd>
29 
30 #include <vector>
31 #include <string>
32 
33 #include "NCPopup.h"
34 #include "NCTableItem.h"
35 #include <yui/YTableItem.h>
36 
37 class NCTable;
38 
39 
40 class NCPopupTable : public NCPopup
41 {
42 private:
43 
44  NCPopupTable & operator=( const NCPopupTable & );
45  NCPopupTable( const NCPopupTable & );
46 
47  NCTable * sellist;
48 
49 protected:
50 
51  void createList( std::vector<std::string> & row );
52 
53  void addItem( YItem *yitem, NCTableLine::STATE state = NCTableLine::S_NORMAL );
54 
55  void setCurrentItem( int index );
56  int getCurrentItem() const;
57  YItem * getCurrentItemPointer() const;
58 
59  virtual NCursesEvent wHandleHotkey( wint_t ch );
60 
61  NCPopupTable( const wpos & at );
62  virtual ~NCPopupTable();
63 
64  virtual bool postAgain();
65 
66 public:
67  void stripHotkeys();
68 };
69 
70 
71 
72 #endif // NCPopupTable_h
NCTable
A table with rows and columns.
Definition: NCTable.h:43
NCPopup
Definition: NCPopup.h:34
wpos
Screen position pair in the order line, column: (L, C)
Definition: position.h:110
NCursesEvent
Definition: NCurses.h:73
NCPopupTable
Definition: NCPopupTable.h:41