From ebf0ee34e7a50b8dbe9ed766a9737a8f77805449 Mon Sep 17 00:00:00 2001 From: Stephen Kelly Date: Wed, 26 Sep 2012 16:57:38 +0200 Subject: Don't call parent() so often when processing a range. Task-number: QTBUG-17732 Change-Id: Iefe5801f5941136f77001c532870e22f7fdd2c69 Reviewed-by: Marc Mutz --- src/corelib/itemmodels/qitemselectionmodel.cpp | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) (limited to 'src/corelib/itemmodels') diff --git a/src/corelib/itemmodels/qitemselectionmodel.cpp b/src/corelib/itemmodels/qitemselectionmodel.cpp index 1308b07499..98afaa3b48 100644 --- a/src/corelib/itemmodels/qitemselectionmodel.cpp +++ b/src/corelib/itemmodels/qitemselectionmodel.cpp @@ -294,9 +294,10 @@ QItemSelectionRange QItemSelectionRange::intersected(const QItemSelectionRange & static void indexesFromRange(const QItemSelectionRange &range, QModelIndexList &result) { if (range.isValid() && range.model()) { + const QModelIndex parent = range.parent(); for (int column = range.left(); column <= range.right(); ++column) { for (int row = range.top(); row <= range.bottom(); ++row) { - QModelIndex index = range.model()->index(row, column, range.parent()); + QModelIndex index = range.model()->index(row, column, parent); Qt::ItemFlags flags = range.model()->flags(index); if ((flags & Qt::ItemIsSelectable) && (flags & Qt::ItemIsEnabled)) result.append(index); -- cgit v1.2.3