diff options
author | Stephen Kelly <stephen.kelly@kdab.com> | 2011-12-27 17:02:33 +0100 |
---|---|---|
committer | Qt by Nokia <qt-info@nokia.com> | 2012-01-10 11:37:28 +0100 |
commit | c3ad8c1c062a972b7fb75d8b51a1f80cb371d503 (patch) | |
tree | 47bd4f0b698a16a7a475c19e7c3c9acab60f0ba5 /src/corelib/itemmodels/qabstractitemmodel.cpp | |
parent | 1e10e4deb97885472c36f5b10a5888979f24cee0 (diff) |
Make the roleNames a virtual accessor.
This is consistent with the rest of the API of QAbstractItemModel
(which is virtual) and removes the need for code like this
in the constructor (where it doesn't belong):
QHash<int, QByteArray> myRoleNames = roleNames();
myRoleNames.insert(Qt::UserRole + 1, "myCustomRole");
setRoleNames(myRoleNames);
in favor of
MyModel::roleNames() const {
QHash<int, QByteArray> myRoleNames = QAbstractItemModel::roleNames();
myRoleNames.insert(Qt::UserRole + 1, "myCustomRole");
return myRoleNames;
}
which is consistent with all other QAIM API (eg, flags()).
This is a source compatible change.
Change-Id: I7e1ce17f8dab2292c4c7b6dbd3c09ec71b5c793b
Reviewed-by: David Faure <faure@kde.org>
Reviewed-by: Marius Bugge Monsen <marius@cutehacks.com>
Diffstat (limited to 'src/corelib/itemmodels/qabstractitemmodel.cpp')
-rw-r--r-- | src/corelib/itemmodels/qabstractitemmodel.cpp | 9 |
1 files changed, 7 insertions, 2 deletions
diff --git a/src/corelib/itemmodels/qabstractitemmodel.cpp b/src/corelib/itemmodels/qabstractitemmodel.cpp index f320d595e8..7e6c8baa1d 100644 --- a/src/corelib/itemmodels/qabstractitemmodel.cpp +++ b/src/corelib/itemmodels/qabstractitemmodel.cpp @@ -2132,6 +2132,7 @@ QSize QAbstractItemModel::span(const QModelIndex &) const /*! \since 4.6 + \obsolete Sets the model's role names to \a roleNames. @@ -2142,7 +2143,11 @@ QSize QAbstractItemModel::span(const QModelIndex &) const \sa roleNames() */ -void QAbstractItemModel::setRoleNames(const QHash<int,QByteArray> &roleNames) + +/*! + \internal + */ +void QAbstractItemModel::doSetRoleNames(const QHash<int,QByteArray> &roleNames) { Q_D(QAbstractItemModel); d->roleNames = roleNames; @@ -2155,7 +2160,7 @@ void QAbstractItemModel::setRoleNames(const QHash<int,QByteArray> &roleNames) \sa setRoleNames() */ -const QHash<int,QByteArray> &QAbstractItemModel::roleNames() const +QHash<int,QByteArray> QAbstractItemModel::roleNames() const { Q_D(const QAbstractItemModel); return d->roleNames; |