diff options
author | Joni Poikelin <joni.poikelin@qt.io> | 2019-12-27 11:12:23 +0200 |
---|---|---|
committer | Shawn Rutledge <shawn.rutledge@qt.io> | 2020-01-24 05:15:40 +0000 |
commit | 6dce8c470ca9711fc874b32519cefdcca40f149f (patch) | |
tree | 9d8174b320f00511bdf8d31e466c0fe786a01aba /tests/auto/qmltest/listview/tst_listview.qml | |
parent | 04e855d5e2639be8acd91f4a581f1500a2908282 (diff) |
Add support to match against QObject properties in DelegateChooser
Views could use an array of QObject instances as a model, as an alterative to a
QAIM subclass; but DelegateChooser only supported querying the value based on the
model role name. Now a QObject property name can also be used as roleValue.
[ChangeLog][QtQuick][Item Views] DelegateChooser now supports using a property name
as roleValue when an array of QObject instances is used as the model for a view.
Fixes: QTBUG-81580
Change-Id: I3e5b57ce0456520667e342741efbe46417f0843c
Reviewed-by: Shawn Rutledge <shawn.rutledge@qt.io>
Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
Diffstat (limited to 'tests/auto/qmltest/listview/tst_listview.qml')
-rw-r--r-- | tests/auto/qmltest/listview/tst_listview.qml | 17 |
1 files changed, 17 insertions, 0 deletions
diff --git a/tests/auto/qmltest/listview/tst_listview.qml b/tests/auto/qmltest/listview/tst_listview.qml index 5e9bb22e8e..bea6b45c3a 100644 --- a/tests/auto/qmltest/listview/tst_listview.qml +++ b/tests/auto/qmltest/listview/tst_listview.qml @@ -213,6 +213,10 @@ Item { id: multiDelegate2 } + MultiDelegate3 { + id: multiDelegate3 + } + TestCase { name: "ListView" when: windowShown @@ -414,5 +418,18 @@ Item { var delegate = multiDelegate2.itemAt(10, row.y) compare(delegate.choiceType, row.type) } + + function test_multipleDelegates3_data() { + return [ + { y: 25, type: "Rectangle", property: "color", value: "#ff0000" }, + { y: 75, type: "Text", property: "text", value: "Hello world" } + ] + } + + function test_multipleDelegates3(row) { + var delegate = multiDelegate3.itemAt(10, row.y) + verify(delegate.toString().includes(row.type)) + compare(delegate[row.property], row.value) + } } } |