From d4e7332f1769bfdbdda934ca547080e9fe3a799c Mon Sep 17 00:00:00 2001 From: Jens Bache-Wiig <jens.bache-wiig@digia.com> Date: Fri, 26 Apr 2013 10:39:04 +0200 Subject: [PATCH] Don't select a TableView index by default Change-Id: I436849ce43b11dd3b61ef59280e3b8fa39b7da0f Reviewed-by: Jens Bache-Wiig <jens.bache-wiig@digia.com> --- src/controls/TableView.qml | 5 +++- .../data/tableview/table1_qobjectmodel.qml | 1 + .../tableview/table2_qabstractitemmodel.qml | 1 + .../data/tableview/table3_qobjectlist.qml | 1 + .../data/tableview/table4_qstringlist.qml | 1 + .../data/tableview/table5_listmodel.qml | 1 + .../data/tableview/table6_countmodel.qml | 1 + .../data/tableview/table7_arraymodel.qml | 1 + .../data/tableview/table8_itemmodel.qml | 1 + tests/auto/controls/data/tst_tableview.qml | 23 +++++++++++++++++++ 10 files changed, 35 insertions(+), 1 deletion(-) diff --git a/src/controls/TableView.qml b/src/controls/TableView.qml index cf12ed01b..56c27fdeb 100644 --- a/src/controls/TableView.qml +++ b/src/controls/TableView.qml @@ -216,7 +216,9 @@ ScrollView { property alias section: listView.section /*! \qmlproperty int TableView::currentRow - The current row index of the view. */ + The current row index of the view. + The default value is \c -1 to indicate that no row is selected. + */ property alias currentRow: listView.currentIndex /*! \qmlsignal TableView::activated() @@ -255,6 +257,7 @@ ScrollView { activeFocusOnTab: true anchors.topMargin: tableHeader.height anchors.fill: parent + currentIndex: -1 flickableDirection: Flickable.HorizontalFlick SystemPalette { diff --git a/tests/auto/controls/data/tableview/table1_qobjectmodel.qml b/tests/auto/controls/data/tableview/table1_qobjectmodel.qml index 4b26f66dd..f058de00c 100644 --- a/tests/auto/controls/data/tableview/table1_qobjectmodel.qml +++ b/tests/auto/controls/data/tableview/table1_qobjectmodel.qml @@ -45,6 +45,7 @@ import QtQuickControlsTests 1.0 TableView { model: TestObject {} height: 70 + currentRow: 0 TableViewColumn { role: "value" width: 100 diff --git a/tests/auto/controls/data/tableview/table2_qabstractitemmodel.qml b/tests/auto/controls/data/tableview/table2_qabstractitemmodel.qml index bc3da2328..514a57c82 100644 --- a/tests/auto/controls/data/tableview/table2_qabstractitemmodel.qml +++ b/tests/auto/controls/data/tableview/table2_qabstractitemmodel.qml @@ -45,6 +45,7 @@ import QtQuickControlsTests 1.0 TableView { model: TestItemModel {} height: 70 + currentRow: 0 TableViewColumn { role: "test" width: 100 diff --git a/tests/auto/controls/data/tableview/table3_qobjectlist.qml b/tests/auto/controls/data/tableview/table3_qobjectlist.qml index f3f64327e..76008e8f1 100644 --- a/tests/auto/controls/data/tableview/table3_qobjectlist.qml +++ b/tests/auto/controls/data/tableview/table3_qobjectlist.qml @@ -44,6 +44,7 @@ import QtQuickControlsTests 1.0 TableView { model: model_qobjectlist + currentRow: 0 height: 70 TableViewColumn { role: "value" diff --git a/tests/auto/controls/data/tableview/table4_qstringlist.qml b/tests/auto/controls/data/tableview/table4_qstringlist.qml index 75840499a..94f86156a 100644 --- a/tests/auto/controls/data/tableview/table4_qstringlist.qml +++ b/tests/auto/controls/data/tableview/table4_qstringlist.qml @@ -45,6 +45,7 @@ import QtQuickControlsTests 1.0 TableView { model: model_qstringlist height: 70 + currentRow: 0 TableViewColumn { width: 100 } diff --git a/tests/auto/controls/data/tableview/table5_listmodel.qml b/tests/auto/controls/data/tableview/table5_listmodel.qml index c0e46abcb..e8074201e 100644 --- a/tests/auto/controls/data/tableview/table5_listmodel.qml +++ b/tests/auto/controls/data/tableview/table5_listmodel.qml @@ -42,6 +42,7 @@ import QtQuick 2.1 import QtQuick.Controls 1.0 TableView { + currentRow: 0 model: ListModel { ListElement { value: "A" } diff --git a/tests/auto/controls/data/tableview/table6_countmodel.qml b/tests/auto/controls/data/tableview/table6_countmodel.qml index 995de4852..4a7073d4b 100644 --- a/tests/auto/controls/data/tableview/table6_countmodel.qml +++ b/tests/auto/controls/data/tableview/table6_countmodel.qml @@ -44,6 +44,7 @@ import QtQuick.Controls 1.0 TableView { model: 3 // qml height: 70 + currentRow: 0 TableViewColumn { width: 100 } diff --git a/tests/auto/controls/data/tableview/table7_arraymodel.qml b/tests/auto/controls/data/tableview/table7_arraymodel.qml index d3483ddcb..d794e170c 100644 --- a/tests/auto/controls/data/tableview/table7_arraymodel.qml +++ b/tests/auto/controls/data/tableview/table7_arraymodel.qml @@ -44,6 +44,7 @@ import QtQuick.Controls 1.0 TableView { model: ["A", "B", "C"] // qml height: 70 + currentRow: 0 TableViewColumn { width: 100 } diff --git a/tests/auto/controls/data/tableview/table8_itemmodel.qml b/tests/auto/controls/data/tableview/table8_itemmodel.qml index 081f1d61b..c39ae5335 100644 --- a/tests/auto/controls/data/tableview/table8_itemmodel.qml +++ b/tests/auto/controls/data/tableview/table8_itemmodel.qml @@ -44,6 +44,7 @@ import QtQuick.Controls 1.0 TableView { model: Item { x: 10 }// qml height: 70 + currentRow: 0 TableViewColumn { role: "x" width: 100 diff --git a/tests/auto/controls/data/tst_tableview.qml b/tests/auto/controls/data/tst_tableview.qml index 4bdf15dbc..b03d58fe0 100644 --- a/tests/auto/controls/data/tst_tableview.qml +++ b/tests/auto/controls/data/tst_tableview.qml @@ -64,6 +64,29 @@ TestCase { ] } + function test_basic_setup() { + var test_instanceStr = + 'import QtQuick 2.1; \ + import QtQuick.Controls 1.0; \ + TableView { \ + TableViewColumn { \ + } \ + model: 10 \ + }' + + var table = Qt.createQmlObject(test_instanceStr, testCase, '') + compare(table.currentRow, -1) + verify(table.rowCount === 10) + verify (table.currentRowItem === null) + table.currentRow = 0 + verify(table.currentRowItem !== null) + verify (table.currentRow === 0) + table.currentRow = 3 + verify(table.currentRowItem !== null) + verify (table.currentRow === 3) + table.destroy() + } + function test_usingqmlmodel(data) { var component = Qt.createComponent(data.a) -- GitLab