1 /*****************************************************************************
3 *****************************************************************************
4 * Copyright (C) 2003 the VideoLAN team
7 * Authors: Cyril Deguet <asmax@via.ecp.fr>
8 * Olivier Teulière <ipkiss@via.ecp.fr>
10 * This program is free software; you can redistribute it and/or modify
11 * it under the terms of the GNU General Public License as published by
12 * the Free Software Foundation; either version 2 of the License, or
13 * (at your option) any later version.
15 * This program is distributed in the hope that it will be useful,
16 * but WITHOUT ANY WARRANTY; without even the implied warranty of
17 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
18 * GNU General Public License for more details.
20 * You should have received a copy of the GNU General Public License
21 * along with this program; if not, write to the Free Software
22 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston MA 02110-1301, USA.
23 *****************************************************************************/
25 #include "var_list.hpp"
28 const string VarList::m_type = "list";
31 VarList::VarList( intf_thread_t *pIntf ): Variable( pIntf )
33 // Create the position variable
34 m_cPosition = VariablePtr( new VarPercent( pIntf ) );
35 getPositionVar().set( 1.0 );
44 void VarList::add( const UStringPtr &rcString )
46 m_list.push_back( Elem_t( rcString ) );
51 void VarList::delSelected()
53 Iterator it = begin();
56 if( (*it).m_selected )
60 m_list.erase( oldIt );
77 VarList::Iterator VarList::operator[]( int n )
79 Iterator it = begin();
80 for( int i = 0; i < n; i++ )
95 VarList::ConstIterator VarList::operator[]( int n ) const
97 ConstIterator it = begin();
98 for( int i = 0; i < n; i++ )