5#ifndef QTREEWIDGETITEMITERATOR_P_H
6#define QTREEWIDGETITEMITERATOR_P_H
19#include <QtCore/qstack.h>
22#include "private/qglobal_p.h"
23#if QT_CONFIG(treewidget)
30class QTreeWidgetItemIteratorPrivate {
31 Q_DECLARE_PUBLIC(QTreeWidgetItemIterator)
33 QTreeWidgetItemIteratorPrivate(QTreeWidgetItemIterator *q, QTreeModel *model)
34 : m_currentIndex(0), m_model(model), q_ptr(q)
39 QTreeWidgetItemIteratorPrivate(
const QTreeWidgetItemIteratorPrivate& other)
40 : m_currentIndex(other.m_currentIndex), m_model(other.m_model),
41 m_parentIndex(other.m_parentIndex), q_ptr(other.q_ptr)
46 QTreeWidgetItemIteratorPrivate &operator=(
const QTreeWidgetItemIteratorPrivate& other)
48 m_currentIndex = other.m_currentIndex;
49 m_parentIndex = other.m_parentIndex;
50 m_model = other.m_model;
54 ~QTreeWidgetItemIteratorPrivate()
58 QTreeWidgetItem* nextSibling(
const QTreeWidgetItem* item)
const;
59 void ensureValidIterator(
const QTreeWidgetItem *itemToBeRemoved);
61 QTreeWidgetItem *next(
const QTreeWidgetItem *current);
62 QTreeWidgetItem *previous(
const QTreeWidgetItem *current);
66 QStack<
int> m_parentIndex;
67 QTreeWidgetItemIterator *q_ptr;