QModelRoleData Class
The QModelRoleData class holds a role and the data associated to that role. More...
Header: | #include <QModelRoleData> |
CMake: | find_package(Qt6 COMPONENTS Core REQUIRED) target_link_libraries(mytarget PRIVATE Qt6::Core) |
qmake: | QT += core |
Since: | Qt 6.0 |
Public Functions
QModelRoleData(int role) | |
void | clearData() |
QVariant & | data() |
const QVariant & | data() const |
int | role() const |
void | setData(T &&value) |
Detailed Description
QModelRoleData objects store an item role (which is a value from the Qt::ItemDataRole enumeration, or an arbitrary integer for a custom role) as well as the data associated with that role.
A QModelRoleData object is typically created by views or delegates, setting which role they want to fetch the data for. The object is then passed to models (see QAbstractItemModel::multiData()), which populate the data corresponding to the role stored. Finally, the view visualizes the data retrieved from the model.
See also Model/View Programming and QModelRoleDataSpan.
Member Function Documentation
QModelRoleData::QModelRoleData(int role)
Constructs a QModelRoleData object for the given role.
See also Qt::ItemDataRole.
void QModelRoleData::clearData()
Clears the data held by this object. Note that the role is unchanged; only the data is cleared.
See also data().
QVariant &QModelRoleData::data()
Returns the data held by this object as a modifiable reference.
See also setData().
const QVariant &QModelRoleData::data() const
Returns the data held by this object.
See also setData().
int QModelRoleData::role() const
Returns the role held by this object.
See also Qt::ItemDataRole.
template <typename T> void QModelRoleData::setData(T &&value)
Sets the data held by this object to value. value must be of a datatype which can be stored in a QVariant.
See also data(), clearData(), and Q_DECLARE_METATYPE.
© 2021 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.