QPersistentModelIndex Class

The QPersistentModelIndex class is used to locate data in a data model. More...

Header: #include <QPersistentModelIndex>
qmake: QT += core

Public Functions

QPersistentModelIndex(const QModelIndex &index)
QPersistentModelIndex &operator=(const QModelIndex &other)
QPersistentModelIndex &operator=(const QPersistentModelIndex &other)
QVariant data(int role = Qt::DisplayRole) const
Qt::ItemFlags flags() const
const QAbstractItemModel *model() const
QModelIndex parent() const
QModelIndex sibling(int row, int column) const
bool operator<(const QPersistentModelIndex &other) const
bool operator==(const QPersistentModelIndex &other) const
bool operator==(const QModelIndex &other) const

Detailed Description

A QPersistentModelIndex is a model index that can be stored by an application, and later used to access information in a model. Unlike the QModelIndex class, it is safe to store a QPersistentModelIndex since the model will ensure that references to items will continue to be valid as long as they can be accessed by the model.

It is good practice to check that persistent model indexes are valid before using them.

See also Model/View Programming, QModelIndex, and QAbstractItemModel.

Member Function Documentation

QPersistentModelIndex::QPersistentModelIndex(const QModelIndex &index)

Creates a new QPersistentModelIndex that is a copy of the model index.

QPersistentModelIndex &QPersistentModelIndex::operator=(const QModelIndex &other)

Sets the persistent model index to refer to the same item in a model as the other model index.

QPersistentModelIndex &QPersistentModelIndex::operator=(const QPersistentModelIndex &other)

Sets the persistent model index to refer to the same item in a model as the other persistent model index.

QVariant QPersistentModelIndex::data(int role = Qt::DisplayRole) const

Returns the data for the given role for the item referred to by the index.

See also Qt::ItemDataRole and QAbstractItemModel::setData().

Qt::ItemFlags QPersistentModelIndex::flags() const

Returns the flags for the item referred to by the index.

This function was introduced in Qt 4.2.

const QAbstractItemModel *QPersistentModelIndex::model() const

Returns the model that the index belongs to.

QModelIndex QPersistentModelIndex::parent() const

Returns the parent QModelIndex for this persistent index, or an invalid QModelIndex if it has no parent.

See also sibling() and model().

QModelIndex QPersistentModelIndex::sibling(int row, int column) const

Returns the sibling at row and column or an invalid QModelIndex if there is no sibling at this position.

See also parent().

bool QPersistentModelIndex::operator<(const QPersistentModelIndex &other) const

Returns true if this persistent model index is smaller than the other persistent model index; otherwise returns false.

The internal data pointer, row, column, and model values in the persistent model index are used when comparing with another persistent model index.

This function was introduced in Qt 4.1.

bool QPersistentModelIndex::operator==(const QPersistentModelIndex &other) const

Returns true if this persistent model index is equal to the other persistent model index; otherwise returns false.

The internal data pointer, row, column, and model values in the persistent model index are used when comparing with another persistent model index.

bool QPersistentModelIndex::operator==(const QModelIndex &other) const

Returns true if this persistent model index refers to the same location as the other model index; otherwise returns false.

The internal data pointer, row, column, and model values in the persistent model index are used when comparing with another model index.