summaryrefslogtreecommitdiff
path: root/src/controls/TableViewColumn.qml
diff options
context:
space:
mode:
authorJens Bache-Wiig <jens.bache-wiig@digia.com>2013-12-09 14:16:39 +0100
committerThe Qt Project <gerrit-noreply@qt-project.org>2014-02-20 11:01:45 +0100
commit73ac28cba6d9344b866788443a5ff753d15f6606 (patch)
tree2ff2409cb7c44ee73a8321152e5555a1cc9b2496 /src/controls/TableViewColumn.qml
parent38bce6ada7f0660c39929fcab19d5c10b8550d3c (diff)
downloadqtquickcontrols-73ac28cba6d9344b866788443a5ff753d15f6606.tar.gz
Improve TableView performance by caching row-delegates
This gives a much better scrolling performance in TableView since we do not have to instantiate the rows or re-establish bindings to header columns for each created table row. [ChangeLog][QtQuickControls] Significantly optimized TableView scrolling by recycling rowDelegate instances. Change-Id: I301e5e476c78f241be1282332905b714fbc5b37d Reviewed-by: Gabriel de Dietrich <gabriel.dedietrich@digia.com> Reviewed-by: J-P Nurmi <jpnurmi@digia.com>
Diffstat (limited to 'src/controls/TableViewColumn.qml')
-rw-r--r--src/controls/TableViewColumn.qml2
1 files changed, 1 insertions, 1 deletions
diff --git a/src/controls/TableViewColumn.qml b/src/controls/TableViewColumn.qml
index a5ba2e75..3336470e 100644
--- a/src/controls/TableViewColumn.qml
+++ b/src/controls/TableViewColumn.qml
@@ -132,7 +132,7 @@ QtObject {
if (__view.__columns[i] === this)
__index = i
for (var row = 0 ; row < listdata.children.length ; ++row) {
- var item = listdata.children[row+1]
+ var item = listdata.children[row+1] ? listdata.children[row+1].rowItem : undefined
if (item && item.children[1] && item.children[1].children[__index] && item.children[1].children[__index].children[0] &&
item.children[1].children[__index].children[0].hasOwnProperty("implicitWidth"))
minWidth = Math.max(minWidth, item.children[1].children[__index].children[0].implicitWidth)