diff options
author | Stephen Kelly <stephen.kelly@kdab.com> | 2013-02-21 00:01:30 +0100 |
---|---|---|
committer | The Qt Project <gerrit-noreply@qt-project.org> | 2013-02-26 00:03:26 +0100 |
commit | f136701bc50b63b90281856c2ab5953a40f4b868 (patch) | |
tree | 5a6d1605bb6f589471a6c4d895d735bbe651ec49 | |
parent | 97e755945c0a95d4c82ef4b1897226b340bd9e82 (diff) |
Use the base implementation of QAbstractItemModel::sibling in QSIM.
QStandardItemModel doesn't really benefit from a reimplementation of
sibling, and the current implementation is buggy.
Task-number: 29540
Change-Id: Icf8dca29b6e1394a378db5bf6abd884f2d7fd9b9
Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
-rw-r--r-- | src/gui/itemmodels/qstandarditemmodel.cpp | 2 | ||||
-rw-r--r-- | src/gui/itemmodels/qstandarditemmodel.h | 1 | ||||
-rw-r--r-- | tests/auto/gui/itemmodels/qstandarditemmodel/tst_qstandarditemmodel.cpp | 2 |
3 files changed, 4 insertions, 1 deletions
diff --git a/src/gui/itemmodels/qstandarditemmodel.cpp b/src/gui/itemmodels/qstandarditemmodel.cpp index d6161671b1..d5d742c9b3 100644 --- a/src/gui/itemmodels/qstandarditemmodel.cpp +++ b/src/gui/itemmodels/qstandarditemmodel.cpp @@ -2714,7 +2714,7 @@ bool QStandardItemModel::hasChildren(const QModelIndex &parent) const */ QModelIndex QStandardItemModel::sibling(int row, int column, const QModelIndex &idx) const { - return createIndex(row, column, idx.internalPointer()); + return QAbstractItemModel::sibling(row, column, idx); } /*! diff --git a/src/gui/itemmodels/qstandarditemmodel.h b/src/gui/itemmodels/qstandarditemmodel.h index b4f03008fd..0d6649039c 100644 --- a/src/gui/itemmodels/qstandarditemmodel.h +++ b/src/gui/itemmodels/qstandarditemmodel.h @@ -332,6 +332,7 @@ public: int rowCount(const QModelIndex &parent = QModelIndex()) const; int columnCount(const QModelIndex &parent = QModelIndex()) const; bool hasChildren(const QModelIndex &parent = QModelIndex()) const; + // Qt 6: Remove QModelIndex sibling(int row, int column, const QModelIndex &idx) const; QVariant data(const QModelIndex &index, int role = Qt::DisplayRole) const; diff --git a/tests/auto/gui/itemmodels/qstandarditemmodel/tst_qstandarditemmodel.cpp b/tests/auto/gui/itemmodels/qstandarditemmodel/tst_qstandarditemmodel.cpp index 5fb8df3f59..085dfd0461 100644 --- a/tests/auto/gui/itemmodels/qstandarditemmodel/tst_qstandarditemmodel.cpp +++ b/tests/auto/gui/itemmodels/qstandarditemmodel/tst_qstandarditemmodel.cpp @@ -718,6 +718,8 @@ void tst_QStandardItemModel::checkChildren() QVERIFY(!model.hasChildren()); QCOMPARE(model.rowCount(), 0); QCOMPARE(model.columnCount(), 1); + + QVERIFY(!model.index(0,0).sibling(100,100).isValid()); } void tst_QStandardItemModel::data() |