QPersistentModelIndex Class
The QPersistentModelIndex class is used to locate data in a data model. More...
Header: | #include <QPersistentModelIndex> |
CMake: | find_package(Qt6 REQUIRED COMPONENTS Core) target_link_libraries(mytarget PRIVATE Qt6::Core) |
qmake: | QT += core |
- List of all members, including inherited members
- QPersistentModelIndex is part of Implicitly Shared Classes.
This class is strongly comparable.
This class is strongly comparable with QModelIndex.
Public Functions
QPersistentModelIndex(const QModelIndex &index) | |
QPersistentModelIndex(const QPersistentModelIndex &other) | |
QPersistentModelIndex(QPersistentModelIndex &&other) | |
int | column() const |
QVariant | data(int role = Qt::DisplayRole) const |
Qt::ItemFlags | flags() const |
bool | isValid() const |
const QAbstractItemModel * | model() const |
(since 6.0) void | multiData(QModelRoleDataSpan roleDataSpan) const |
QModelIndex | parent() const |
int | row() const |
QModelIndex | sibling(int row, int column) const |
void | swap(QPersistentModelIndex &other) |
QModelIndex | operator QModelIndex() const |
QPersistentModelIndex & | operator=(QPersistentModelIndex &&other) |
QPersistentModelIndex & | operator=(const QModelIndex &other) |
QPersistentModelIndex & | operator=(const QPersistentModelIndex &other) |
Related Non-Members
size_t | qHash(const QPersistentModelIndex &index, size_t seed = 0) |
bool | operator!=(const QPersistentModelIndex &lhs, const QModelIndex &rhs) |
bool | operator!=(const QPersistentModelIndex &lhs, const QPersistentModelIndex &rhs) |
bool | operator<(const QPersistentModelIndex &lhs, const QPersistentModelIndex &rhs) |
bool | operator==(const QPersistentModelIndex &lhs, const QModelIndex &rhs) |
bool | operator==(const QPersistentModelIndex &lhs, const QPersistentModelIndex &rhs) |
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.
Note: You cannot store a QStandardItemModel's QPersistentModelIndex in one of the model's items.
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(const QPersistentModelIndex &other)
Creates a new QPersistentModelIndex that is a copy of the other persistent model index.
[noexcept]
QPersistentModelIndex::QPersistentModelIndex(QPersistentModelIndex &&other)
Move-constructs a QPersistentModelIndex instance, making it point at the same object that other was pointing to.
int QPersistentModelIndex::column() const
Returns the column this persistent model index refers to.
QVariant QPersistentModelIndex::data(int role = Qt::DisplayRole) const
Returns the data for the given role for the item referred to by the index, or a default-constructed QVariant if this persistent model index is invalid.
See also Qt::ItemDataRole and QAbstractItemModel::setData().
Qt::ItemFlags QPersistentModelIndex::flags() const
Returns the flags for the item referred to by the index.
bool QPersistentModelIndex::isValid() const
Returns true
if this persistent model index is valid; otherwise returns false
.
A valid index belongs to a model, and has non-negative row and column numbers.
See also model(), row(), and column().
const QAbstractItemModel *QPersistentModelIndex::model() const
Returns the model that the index belongs to.
[since 6.0]
void QPersistentModelIndex::multiData(QModelRoleDataSpan roleDataSpan) const
Populates the given roleDataSpan for the item referred to by the index.
This function was introduced in Qt 6.0.
See also Qt::ItemDataRole and QAbstractItemModel::setData().
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().
int QPersistentModelIndex::row() const
Returns the row this persistent model index refers to.
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().
[noexcept]
void QPersistentModelIndex::swap(QPersistentModelIndex &other)
Swaps this persistent modelindex with other. This function is very fast and never fails.
QModelIndex QPersistentModelIndex::operator QModelIndex() const
Cast operator that returns a QModelIndex.
[noexcept]
QPersistentModelIndex &QPersistentModelIndex::operator=(QPersistentModelIndex &&other)
Move-assigns other to this QPersistentModelIndex instance.
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.
Related Non-Members
[noexcept]
size_t qHash(const QPersistentModelIndex &index, size_t seed = 0)
Returns a hash of the QPersistentModelIndex index, using seed to seed the calculation.
[noexcept]
bool operator!=(const QPersistentModelIndex &lhs, const QModelIndex &rhs)
Returns true
if lhs persistent model index does not refer to the same location as the rhs model index; otherwise returns false
.
[noexcept]
bool operator!=(const QPersistentModelIndex &lhs, const QPersistentModelIndex &rhs)
Returns true
if lhs persistent model index is not equal to the rhs persistent model index; otherwise returns false
.
[noexcept]
bool operator<(const QPersistentModelIndex &lhs, const QPersistentModelIndex &rhs)
Returns true
if lhs persistent model index is smaller than the rhs 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.
[noexcept]
bool operator==(const QPersistentModelIndex &lhs, const QModelIndex &rhs)
Returns true
if lhs persistent model index refers to the same location as the rhs 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.
[noexcept]
bool operator==(const QPersistentModelIndex &lhs, const QPersistentModelIndex &rhs)
Returns true
if lhs persistent model index is equal to the rhs 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.