|  | Home · All Classes · Main Classes · Grouped Classes · Modules · Functions |

# QTreeWidgetItemIterator Class Reference
[QtGui module]

The QTreeWidgetItemIterator class provides a way to iterate over the items in a QTreeWidget instance. More...

    #include <QTreeWidgetItemIterator>

- List of all members, including inherited members

### Public Types

- enum IteratorFlag { All, Hidden, NotHidden, Selected, ..., UserFlag }
- flags IteratorFlags

### Public Functions

- QTreeWidgetItemIterator ( const QTreeWidgetItemIterator & it )
- QTreeWidgetItemIterator ( QTreeWidget * widget, IteratorFlags flags = All )
- QTreeWidgetItemIterator ( QTreeWidgetItem * item, IteratorFlags flags = All )
- ~QTreeWidgetItemIterator ()
- QTreeWidgetItem * operator* () const
- QTreeWidgetItemIterator & operator++ ()
- const QTreeWidgetItemIterator operator++ ( int )
- QTreeWidgetItemIterator & operator+= ( int n )
- QTreeWidgetItemIterator & operator-- ()
- const QTreeWidgetItemIterator operator-- ( int )
- QTreeWidgetItemIterator & operator-= ( int n )
- QTreeWidgetItemIterator & operator= ( const QTreeWidgetItemIterator & it )

## Detailed Description

The QTreeWidgetItemIterator class provides a way to iterate over the items in a QTreeWidget instance.

The iterator will walk the items in a pre-order traversal order, thus visiting the parent node before it continues to the child nodes.

It is possible to filter out certain types of node by passing certain flags to the constructor of QTreeWidgetItemIterator.

See also QTreeWidget, Model/View Programming, and QTreeWidgetItem.

## Member Type Documentation

### enum QTreeWidgetItemIterator::IteratorFlag
flags QTreeWidgetItemIterator::IteratorFlags

These flags can be passed to a QTreeWidgetItemIterator constructor (OR-ed together if more than one is used), so that the iterator will only iterate over items that match the given flags.

Constant | Value
--- | ---
`QTreeWidgetItemIterator::All` | `0x00000000`
`QTreeWidgetItemIterator::Hidden` | `0x00000001`
`QTreeWidgetItemIterator::NotHidden` | `0x00000002`
`QTreeWidgetItemIterator::Selected` | `0x00000004`
`QTreeWidgetItemIterator::Unselected` | `0x00000008`
`QTreeWidgetItemIterator::Selectable` | `0x00000010`
`QTreeWidgetItemIterator::NotSelectable` | `0x00000020`
`QTreeWidgetItemIterator::DragEnabled` | `0x00000040`
`QTreeWidgetItemIterator::DragDisabled` | `0x00000080`
`QTreeWidgetItemIterator::DropEnabled` | `0x00000100`
`QTreeWidgetItemIterator::DropDisabled` | `0x00000200`
`QTreeWidgetItemIterator::HasChildren` | `0x00000400`
`QTreeWidgetItemIterator::NoChildren` | `0x00000800`
`QTreeWidgetItemIterator::Checked` | `0x00001000`
`QTreeWidgetItemIterator::NotChecked` | `0x00002000`
`QTreeWidgetItemIterator::Enabled` | `0x00004000`
`QTreeWidgetItemIterator::Disabled` | `0x00008000`
`QTreeWidgetItemIterator::Editable` | `0x00010000`
`QTreeWidgetItemIterator::NotEditable` | `0x00020000`
`QTreeWidgetItemIterator::UserFlag` | `0x01000000`

The IteratorFlags type is a typedef for QFlags<IteratorFlag>. It stores an OR combination of IteratorFlag values.

## Member Function Documentation

### QTreeWidgetItemIterator::QTreeWidgetItemIterator ( const QTreeWidgetItemIterator & it )

Constructs an iterator for the same QTreeWidget as it. The current iterator item is set to point on the current item of it.

### QTreeWidgetItemIterator::QTreeWidgetItemIterator ( QTreeWidget * widget, IteratorFlags flags = All )

Constructs an iterator for the QTreeWidget widget. The iterator is set to point to the first toplevel item (QTreeWidgetItem) of widget or the next matching item if the toplevel item doesn't match the flags.

See also QTreeWidgetItemIterator::IteratorFlag.

### QTreeWidgetItemIterator::QTreeWidgetItemIterator ( QTreeWidgetItem * item, IteratorFlags flags = All )

Constructs an iterator for the QTreeWidget that contains the item using the flags flags. The iterator is set to point to item or the next matching item if item doesn't match the flags.

See also QTreeWidgetItemIterator::IteratorFlag.

### QTreeWidgetItemIterator::~QTreeWidgetItemIterator ()

Destroys the iterator.

### QTreeWidgetItem * QTreeWidgetItemIterator::operator* () const

Dereference operator. Returns a pointer to the current item.

### QTreeWidgetItemIterator & QTreeWidgetItemIterator::operator++ ()

The prefix ++ operator (++it) advances the iterator to the next matching item and returns a reference to the resulting iterator. Sets the current pointer to 0 if the current item is the last matching item.

### const QTreeWidgetItemIterator QTreeWidgetItemIterator::operator++ ( int )

This is an overloaded member function, provided for convenience.

The postfix ++ operator (it++) advances the iterator to the next matching item and returns an iterator to the previously current item.

### QTreeWidgetItemIterator & QTreeWidgetItemIterator::operator+= ( int n )

Makes the iterator go forward by n matching items. (If n is negative, the iterator goes backward.)

If the current item is beyond the last item, the current item pointer is set to 0. Returns the resulting iterator.

### QTreeWidgetItemIterator & QTreeWidgetItemIterator::operator-- ()

The prefix -- operator (--it) advances the iterator to the previous matching item and returns a reference to the resulting iterator. Sets the current pointer to 0 if the current item is the first matching item.

### const QTreeWidgetItemIterator QTreeWidgetItemIterator::operator-- ( int )

This is an overloaded member function, provided for convenience.

The postfix -- operator (it--) makes the preceding matching item current and returns an iterator to the previously current item.

### QTreeWidgetItemIterator & QTreeWidgetItemIterator::operator-= ( int n )

Makes the iterator go back by n matching items. (If n is negative, the iterator goes forward.)

If the current item is ahead of the last item, the current item pointer is set to 0. Returns the resulting iterator.

### QTreeWidgetItemIterator & QTreeWidgetItemIterator::operator= ( const QTreeWidgetItemIterator & it )

Assignment. Makes a copy of it and returns a reference to its iterator.