libyui-ncurses  2.44.1
 All Classes Functions Variables
NCPopupList.cc
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: NCPopupList.cc
20 
21  Author: Michael Andres <ma@suse.de>
22 
23 /-*/
24 
25 #define YUILogComponent "ncurses"
26 #include <yui/YUILog.h>
27 #include "NCPopupList.h"
28 #include <yui/YTableItem.h>
29 
30 
31 NCPopupList::NCPopupList( const wpos at,
32  const std::string & label,
33  const std::list<std::string> & deflist,
34  int index )
35  : NCPopupTable( at )
36 {
37  createEntries( deflist, index );
38 }
39 
40 
41 NCPopupList::~NCPopupList()
42 {
43 
44 }
45 
46 
47 void NCPopupList::createEntries( const std::list<std::string> & deflist, int index )
48 {
49  std::vector<std::string> row( 1 );
50  createList( row );
51 
52  for ( std::list<std::string>::const_iterator entry = deflist.begin();
53  entry != deflist.end(); ++entry )
54  {
55  YItem *item = new YTableItem(( *entry ) );
56  addItem( item );
57  }
58 
59  setCurrentItem( index );
60 }
61 
62 
63 bool NCPopupList::postAgain()
64 {
65  return NCPopupTable::postAgain();
66 }
Definition: position.h:109