QModelRoleData Class
The QModelRoleData class holds a role and the data associated to that role. More...
Header: | #include <QModelRoleData> |
CMake: | find_package(Qt6 REQUIRED COMPONENTS Core) 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
[explicit noexcept]
QModelRoleData::QModelRoleData(int role)
Constructs a QModelRoleData object for the given role.
See also Qt::ItemDataRole.
[noexcept]
void QModelRoleData::clearData()
Clears the data held by this object. Note that the role is unchanged; only the data is cleared.
See also data().
[constexpr noexcept]
QVariant &QModelRoleData::data()
Returns the data held by this object as a modifiable reference.
See also setData().
[constexpr noexcept]
const QVariant &QModelRoleData::data() const
Returns the data held by this object.
See also setData().
[constexpr noexcept]
int QModelRoleData::role() const
Returns the role held by this object.
See also Qt::ItemDataRole.
[constexpr noexcept(...)]
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.
Note: This function does not throw any exception when "noexcept(m_data.setValue(std::forward<T>(value)))" is true.
See also data(), clearData(), and Q_DECLARE_METATYPE.