From 9f821f384bdb3a64a824cd78ecd5c5e4aa5c0a87 Mon Sep 17 00:00:00 2001 From: Stephen Kelly Date: Wed, 22 Aug 2012 16:11:20 +0200 Subject: [PATCH] Optimize QAbstractItemModel::sibling a bit. QModelIndex::sibling has a simliar optimization. Change-Id: Ic0717d480ba0d46a4c0c88064bc9eda4c4ffe6f6 Reviewed-by: Marc Mutz Reviewed-by: Stephen Kelly --- src/corelib/itemmodels/qabstractitemmodel.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/corelib/itemmodels/qabstractitemmodel.h b/src/corelib/itemmodels/qabstractitemmodel.h index 37d8ee6bab..eab489438c 100644 --- a/src/corelib/itemmodels/qabstractitemmodel.h +++ b/src/corelib/itemmodels/qabstractitemmodel.h @@ -172,7 +172,7 @@ public: virtual QModelIndex parent(const QModelIndex &child) const = 0; inline QModelIndex sibling(int row, int column, const QModelIndex &idx) const - { return index(row, column, parent(idx)); } + { return (row == idx.row() && column == idx.column()) ? idx : index(row, column, parent(idx)); } virtual int rowCount(const QModelIndex &parent = QModelIndex()) const = 0; virtual int columnCount(const QModelIndex &parent = QModelIndex()) const = 0;