QListViewItemIterator - Iterator for collections of
QListViewItems
#include <qlistview.h>
Public Members
QListViewItemIterator ()
QListViewItemIterator ( QListViewItem * item )
QListViewItemIterator ( const QListViewItemIterator & it )
QListViewItemIterator ( QListView * lv )
QListViewItemIterator& operator= ( const
QListViewItemIterator & it )
~QListViewItemIterator ()
QListViewItemIterator& operator++ ()
const QListViewItemIterator operator++ ( int )
QListViewItemIterator& operator+= ( int j )
QListViewItemIterator& operator-- ()
const QListViewItemIterator operator-- ( int )
QListViewItemIterator& operator-= ( int j )
QListViewItem* current () const
DESCRIPTION
The QListViewItemIterator class provides an iterator for
collections of QListViewItems
Construct an instance of a QListViewItemIterator with
either a QListView* or a QListViewItem* as argument, to
operate on the tree of QListViewItems.
A QListViewItemIterator iterates over all items of a
listview. This means ++it makes always the first child of
the current item the new current one. If there is no
child, the next sibling gets the new current item, and if
there is no next sibling, the next sibling of the parent
is set to current.
Example:
Often you want to get all items, which were selected by a
user. Here is an example which does this and stores the
pointers to all selected items in a QList.
// Somewhere a listview is generated like this
QListView *lv = new QListView(this);
// Enable multiselection
lv->setMultiSelection( TRUE );
// Insert the items here
// ...
// This function is called to get a list of the selected items of a listview
QList<QListViewItem> * getSelectedItems( QListView *lv ) {
if ( !lv )
return 0;
QList<QListViewItem> *lst = new QList<QListViewItem>;
lst->setAutoDelete( FALSE );
// Create an iterator and give the listview as argument
QListViewItemIterator it( lv );
// iterate through all items of the listview
for ( ; it.current(); ++it ) {
if ( it.current()->isSelected() )
lst->append( it.current() );
}
return lst;
}
Using a QListViewItemIterator is a convenient way to
traverse the tree of QListViewItems of a QListView. It
makes especially operating on a hierarchical QListView
easy.
Also, multiple QListViewItemIterators can operate on the
tree of QListViewItems. A QListView knows about all
iterators which are operating on its QListViewItems. So
when a QListViewItem gets removed, all iterators that
point to this item get updated and point to the new
current item after that.
See also QListView and QListViewItem.
MEMBER FUNCTION DOCUMENTATION
QListViewItemIterator::QListViewItemIterator ()
Constructs an empty iterator.
QListViewItemIterator::QListViewItemIterator ( QListView * lv )
Constructs an iterator for the QListView lv. The current
iterator item is set to point on the first child (
QListViewItem ) of lv.
QListViewItemIterator::QListViewItemIterator ( QListViewItem *
item )
Constructs an iterator for the QListView of the item. The
current iterator item is set to point on the item.
QListViewItemIterator::QListViewItemIterator ( const
QListViewItemIterator & it )
Constructs an iterator for the same QListView as it. The
current iterator item is set to point on the current item
of it.
QListViewItemIterator::~QListViewItemIterator ()
Destroys the iterator.
QListViewItem * QListViewItemIterator::current () const
Returns a pointer to the current item of the iterator.
Prefix ++ makes the next item in the QListViewItem tree of
the QListView of the iterator the current item and returns
it. If the current item was the last item in the QListView
or null, null is returned.
const QListViewItemIterator QListViewItemIterator::operator++ (
int )
Postfix ++ makes the next item in the QListViewItem tree
of the QListView of the iterator the current item and
returns the item, which was the current one before.
QListViewItemIterator & QListViewItemIterator::operator+= ( int j
)
Sets the current item to the item j positions after the
current item in the QListViewItem hierarchy. If this item
is beyond the last item, the current item is set to null.
The new current item (or null, if the new current item is
null) is returned.
QListViewItemIterator & QListViewItemIterator::operator-- ()
Prefix -- makes the previous item in the QListViewItem
tree of the QListView of the iterator the current item and
returns it. If the current item was the last first in the
QListView or null, null is returned.
const QListViewItemIterator QListViewItemIterator::operator-- (
int )
Postfix -- makes the previous item in the QListViewItem
tree of the QListView of the iterator the current item and
returns the item, which was the current one before.
QListViewItemIterator & QListViewItemIterator::operator-= ( int j
)
Sets the current item to the item j positions before the
current item in the QListViewItem hierarchy. If this item
is above the first item, the current item is set to null.
The new current item (or null, if the new current item is
null) is returned.
QListViewItemIterator & QListViewItemIterator::operator= ( const
QListViewItemIterator & it )
Assignment. Makes a copy of it and returns a reference to
its iterator.
SEE ALSO
http://doc.trolltech.com/qlistviewitemiterator.html
http://www.trolltech.com/faq/tech.html
COPYRIGHT
Copyright 1992-2001 Trolltech AS,
http://www.trolltech.com. See the license file included
in the distribution for a complete license statement.
Generated automatically from the source code.
BUGS
If you find a bug in Qt, please report it as described in
http://doc.trolltech.com/bughowto.html. Good bug reports
make our job much simpler. Thank you.
In case of content or formattting problems with this
manual page, please report them to qt-bugs@trolltech.com.
Please include the name of the manual page
(qlistviewitemiterator.3qt) and the Qt version (2.3.1).
Man(1) output converted with
man2html