tests/auto/qtreeview/tst_qtreeview.cpp
changeset 7 f7bc934e204c
parent 3 41300fa6a67c
equal deleted inserted replaced
3:41300fa6a67c 7:f7bc934e204c
     1 /****************************************************************************
     1 /****************************************************************************
     2 **
     2 **
     3 ** Copyright (C) 2009 Nokia Corporation and/or its subsidiary(-ies).
     3 ** Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies).
     4 ** All rights reserved.
     4 ** All rights reserved.
     5 ** Contact: Nokia Corporation (qt-info@nokia.com)
     5 ** Contact: Nokia Corporation (qt-info@nokia.com)
     6 **
     6 **
     7 ** This file is part of the test suite of the Qt Toolkit.
     7 ** This file is part of the test suite of the Qt Toolkit.
     8 **
     8 **
   234     void task239271_addRowsWithFirstColumnHidden();
   234     void task239271_addRowsWithFirstColumnHidden();
   235     void task254234_proxySort();
   235     void task254234_proxySort();
   236     void task248022_changeSelection();
   236     void task248022_changeSelection();
   237     void task245654_changeModelAndExpandAll();
   237     void task245654_changeModelAndExpandAll();
   238     void doubleClickedWithSpans();
   238     void doubleClickedWithSpans();
       
   239     void taskQTBUG_6450_selectAllWith1stColumnHidden();
   239 };
   240 };
   240 
   241 
   241 class QtTestModel: public QAbstractItemModel
   242 class QtTestModel: public QAbstractItemModel
   242 {
   243 {
   243 public:
   244 public:
  3080         item00->setText("OnlyOne Last");
  3081         item00->setText("OnlyOne Last");
  3081         delegate.count = 0;
  3082         delegate.count = 0;
  3082         QApplication::processEvents();
  3083         QApplication::processEvents();
  3083         QTRY_VERIFY(delegate.count >= 3);
  3084         QTRY_VERIFY(delegate.count >= 3);
  3084         QApplication::processEvents();
  3085         QApplication::processEvents();
       
  3086 
       
  3087         item00->setText("OnlyOne");
       
  3088         item0->insertRow(2, new QStandardItem("OnlyOne Last"));
       
  3089         view.collapse(item0->index());
       
  3090         item0->removeRow(0);
       
  3091         delegate.count = 0;
       
  3092         QTRY_VERIFY(delegate.count >= 2);
       
  3093         QApplication::processEvents();
       
  3094 
       
  3095         item0->removeRow(1);
       
  3096         item0->setText("OnlyOne");
       
  3097         delegate.count = 0;
       
  3098         QTRY_VERIFY(delegate.count >= 2);
       
  3099         QApplication::processEvents();
  3085     }
  3100     }
  3086 }
  3101 }
  3087 
  3102 
  3088 class task174627_TreeView : public QTreeView
  3103 class task174627_TreeView : public QTreeView
  3089 {
  3104 {
  3676     QTest::mouseDClick(view.viewport(), Qt::LeftButton, 0, p);
  3691     QTest::mouseDClick(view.viewport(), Qt::LeftButton, 0, p);
  3677     QTest::mouseRelease(view.viewport(), Qt::LeftButton, 0, p);
  3692     QTest::mouseRelease(view.viewport(), Qt::LeftButton, 0, p);
  3678     QTRY_COMPARE(spy.count(), 2);
  3693     QTRY_COMPARE(spy.count(), 2);
  3679 }
  3694 }
  3680 
  3695 
       
  3696 void tst_QTreeView::taskQTBUG_6450_selectAllWith1stColumnHidden()
       
  3697 {
       
  3698     QTreeWidget tree;
       
  3699     tree.setSelectionMode(QAbstractItemView::MultiSelection);
       
  3700     tree.setColumnCount(2);
       
  3701     QList<QTreeWidgetItem *> items;
       
  3702     const int nrRows = 10;
       
  3703     for (int i = 0; i < nrRows; ++i) {
       
  3704         items.append(new QTreeWidgetItem((QTreeWidget*)0, QStringList(QString("item: %1").arg(i))));
       
  3705         items.last()->setText(1, QString("is an item"));
       
  3706     }
       
  3707     tree.insertTopLevelItems(0, items);
       
  3708 
       
  3709     tree.hideColumn(0);
       
  3710     tree.selectAll();
       
  3711 
       
  3712     QVERIFY(tree.selectionModel()->hasSelection());
       
  3713     for (int i = 0; i < nrRows; ++i)
       
  3714         QVERIFY(tree.selectionModel()->isRowSelected(i, QModelIndex()));
       
  3715 }
       
  3716 
  3681 QTEST_MAIN(tst_QTreeView)
  3717 QTEST_MAIN(tst_QTreeView)
  3682 #include "tst_qtreeview.moc"
  3718 #include "tst_qtreeview.moc"