diff options
author | Jan Arve Saether <jan-arve.saether@digia.com> | 2013-03-05 11:47:05 +0100 |
---|---|---|
committer | The Qt Project <gerrit-noreply@qt-project.org> | 2013-03-06 19:13:28 +0100 |
commit | aa2d10750ad8cdb6a86d519063664c2924b2a635 (patch) | |
tree | 29bb8c3a66e12bb47ccc0324c788cbaa43450779 /tests/auto/widgets/itemviews/qtreewidgetitemiterator | |
parent | 5f948eb62ddb9f429f46ade08f32072212cda493 (diff) |
Fixed QTreeWidgetIterator to work with sorted QTreeWidget
We cannot access children directly, since that won't ensure that
the pending sort is executed. However, the functions we need are
there already and actually makes the code nicer.
Task-number: QTBUG-29903
Change-Id: I6899284275dd79b991896a5f08486b58d95f819d
Reviewed-by: Gabriel de Dietrich <gabriel.dedietrich@digia.com>
Diffstat (limited to 'tests/auto/widgets/itemviews/qtreewidgetitemiterator')
-rw-r--r-- | tests/auto/widgets/itemviews/qtreewidgetitemiterator/tst_qtreewidgetitemiterator.cpp | 27 |
1 files changed, 27 insertions, 0 deletions
diff --git a/tests/auto/widgets/itemviews/qtreewidgetitemiterator/tst_qtreewidgetitemiterator.cpp b/tests/auto/widgets/itemviews/qtreewidgetitemiterator/tst_qtreewidgetitemiterator.cpp index 7ab68345fa..f1f9f1c01a 100644 --- a/tests/auto/widgets/itemviews/qtreewidgetitemiterator/tst_qtreewidgetitemiterator.cpp +++ b/tests/auto/widgets/itemviews/qtreewidgetitemiterator/tst_qtreewidgetitemiterator.cpp @@ -80,6 +80,7 @@ private slots: void updateIteratorAfterDeletedItem_and_ContinueIteration_data(); void updateIteratorAfterDeletedItem_and_ContinueIteration(); void initializeIterator(); + void sortingEnabled(); private: QTreeWidget *testWidget; }; @@ -1236,5 +1237,31 @@ void tst_QTreeWidgetItemIterator::initializeIterator() QCOMPARE((*it), static_cast<QTreeWidgetItem*>(0)); } +void tst_QTreeWidgetItemIterator::sortingEnabled() +{ + QTreeWidget *tree = new QTreeWidget; + tree->setColumnCount(2); + tree->headerItem()->setText(0, "Id"); + tree->headerItem()->setText(1, "Color"); + + tree->setSortingEnabled(true); + tree->sortByColumn(0, Qt::AscendingOrder); + + QTreeWidgetItem *second = new QTreeWidgetItem; + second->setText(0, "2"); + second->setText(1, "second"); + QTreeWidgetItem *first = new QTreeWidgetItem; + first->setText(0, "1"); + first->setText(1, "first"); + + tree->addTopLevelItem(second); + tree->addTopLevelItem(first); + + QTreeWidgetItemIterator it(tree); + QCOMPARE(*it, first); + ++it; + QCOMPARE(*it, second); +} + QTEST_MAIN(tst_QTreeWidgetItemIterator) #include "tst_qtreewidgetitemiterator.moc" |