25#ifndef YChildrenManager_h
26#define YChildrenManager_h
30#include "YUIException.h"
47 : _container( containerParent )
56 typedef std::list<T *> ChildrenList;
66 bool empty()
const {
return _children.empty(); }
71 int count()
const {
return _children.size(); }
76 typename ChildrenList::iterator
begin()
77 {
return _children.begin(); }
82 typename ChildrenList::iterator
end()
83 {
return _children.end(); }
88 typename ChildrenList::const_iterator
begin()
const
89 {
return _children.begin(); }
94 typename ChildrenList::const_iterator
end()
const
95 {
return _children.end(); }
100 typename ChildrenList::const_reverse_iterator
rbegin()
const
101 {
return _children.rbegin(); }
106 typename ChildrenList::const_reverse_iterator
rend()
const
107 {
return _children.rend(); }
114 {
return _children.empty() ? (T *) 0 : _children.front(); }
120 {
return _children.empty() ? (T *) 0 : _children.back(); }
128 virtual void add( T * child )
129 { _children.push_back( child ); }
136 { _children.remove( child ); }
143 { _children.clear(); }
152 return ( find( _children.begin(), _children.end(), child )
153 != _children.end() );
165 ChildrenList _children;
177 YSingleChildManager( T * containerParent )
189 virtual void add( T * child )
192 this->_children.push_back( child );
202 this->_children.clear();
203 this->_children.push_back( newChild );
232 virtual void add( T * child )
virtual void clear()
Definition YChildrenManager.h:142
T * lastChild()
Definition YChildrenManager.h:119
ChildrenList::const_reverse_iterator rend() const
Definition YChildrenManager.h:106
virtual void add(T *child)
Definition YChildrenManager.h:128
bool hasChildren() const
Definition YChildrenManager.h:61
T * container() const
Definition YChildrenManager.h:160
ChildrenList::const_iterator end() const
Definition YChildrenManager.h:94
ChildrenList::iterator end()
Definition YChildrenManager.h:82
ChildrenList::const_iterator begin() const
Definition YChildrenManager.h:88
int count() const
Definition YChildrenManager.h:71
ChildrenList::const_reverse_iterator rbegin() const
Definition YChildrenManager.h:100
virtual void remove(T *child)
Definition YChildrenManager.h:135
T * firstChild()
Definition YChildrenManager.h:113
bool empty() const
Definition YChildrenManager.h:66
bool contains(T *child) const
Definition YChildrenManager.h:150
ChildrenList::iterator begin()
Definition YChildrenManager.h:76
virtual ~YChildrenManager()
Definition YChildrenManager.h:53
YChildrenManager(T *containerParent)
Definition YChildrenManager.h:46
YChildrenRejector(T *containerParent)
Definition YChildrenManager.h:220
virtual void add(T *child)
Definition YChildrenManager.h:232
virtual void add(T *child)
Definition YChildrenManager.h:189
void replace(T *newChild)
Definition YChildrenManager.h:200
Definition YUIException.h:664