From 99a620d2e2d5225f2b5e29d52617a8a5328081fd Mon Sep 17 00:00:00 2001 From: Stephen Kelly Date: Tue, 17 Apr 2012 19:45:20 +0200 Subject: Take account of spanned items in QTreeView when dragging. Also remove some code which has been unused since it was introduced in 32182d107fa75e5619ecc91a81f50626f429ebe1 Task-number: QTBUG-25140 Change-Id: Ic7053d68d8200f845c1ae330342d27af7275e057 Reviewed-by: Tarja Sundqvist Reviewed-by: David Faure --- .../widgets/itemviews/qtreeview/tst_qtreeview.cpp | 33 ++++++++++++++++++++++ 1 file changed, 33 insertions(+) (limited to 'tests/auto') diff --git a/tests/auto/widgets/itemviews/qtreeview/tst_qtreeview.cpp b/tests/auto/widgets/itemviews/qtreeview/tst_qtreeview.cpp index 6936d5acfc..4155000262 100644 --- a/tests/auto/widgets/itemviews/qtreeview/tst_qtreeview.cpp +++ b/tests/auto/widgets/itemviews/qtreeview/tst_qtreeview.cpp @@ -210,6 +210,8 @@ private slots: void indexRowSizeHint(); void addRowsWhileSectionsAreHidden(); void filterProxyModelCrash(); + void renderToPixmap_data(); + void renderToPixmap(); void styleOptionViewItem(); void keyboardNavigationWithDisabled(); @@ -2890,6 +2892,37 @@ void tst_QTreeView::filterProxyModelCrash() view.repaint(); //used to crash } +void tst_QTreeView::renderToPixmap_data() +{ + QTest::addColumn("row"); + QTest::newRow("row-0") << 0; + QTest::newRow("row-1") << 1; +} + +void tst_QTreeView::renderToPixmap() +{ + QFETCH(int, row); + PublicView view; + QStandardItemModel model; + + model.appendRow(new QStandardItem("Spanning")); + model.appendRow(QList() << new QStandardItem("Not") << new QStandardItem("Spanning")); + + view.setModel(&model); + view.setFirstColumnSpanned(0, QModelIndex(), true); + +#ifdef QT_BUILD_INTERNAL + { + // We select the index at row=0 because it spans the + // column (regression test for an assert) + // We select the index at row=1 for coverage. + QItemSelection sel(model.index(row,0), model.index(row,1)); + QRect rect; + view.aiv_priv()->renderToPixmap(sel.indexes(), &rect); + } +#endif +} + void tst_QTreeView::styleOptionViewItem() { class MyDelegate : public QStyledItemDelegate -- cgit v1.2.3