diff options
author | Richard Moe Gustavsen <richard.gustavsen@qt.io> | 2022-10-28 13:36:30 +0200 |
---|---|---|
committer | Richard Moe Gustavsen <richard.gustavsen@qt.io> | 2022-12-05 10:27:51 +0100 |
commit | b12c7ca751403edd4b6512b45da56d030efb9ed3 (patch) | |
tree | 5968fda529c696fbc8e1d7dc720f0473906bb4f2 /src/quick/doc/snippets | |
parent | e592a2ad31695695f0dd2069b17c6ab90ed1a739 (diff) | |
download | qtdeclarative-b12c7ca751403edd4b6512b45da56d030efb9ed3.tar.gz |
QQuickTableView: add layoutChanged() signal
Add a new signal to TableView that tells when the
layout has changed. This signal can be used to
reposition any overlay on the content item, including
e.g SelectionHandles.
[ChangeLog][Quick][TableView] Added new signal 'layoutChanged()'
Change-Id: I5b89a064521c2831279accbc889deb768d9b1a1b
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
Diffstat (limited to 'src/quick/doc/snippets')
-rw-r--r-- | src/quick/doc/snippets/qml/tableview/overlay.qml | 46 |
1 files changed, 46 insertions, 0 deletions
diff --git a/src/quick/doc/snippets/qml/tableview/overlay.qml b/src/quick/doc/snippets/qml/tableview/overlay.qml new file mode 100644 index 0000000000..b79e457f81 --- /dev/null +++ b/src/quick/doc/snippets/qml/tableview/overlay.qml @@ -0,0 +1,46 @@ +// Copyright (C) 2022 The Qt Company Ltd. +// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR BSD-3-Clause + +import QtQuick +import QtQuick.Window + +Window { + width: 480 + height: 640 + visible: true + visibility: Window.AutomaticVisibility + + TableView { + id: tableView + anchors.fill: parent + clip: true + } + + //![0] + Rectangle { + id: overlay + width: 20 + height: 20 + radius: 10 + color: "blue" + + z: 10 + parent: tableView.contentItem + + Connections { + target: tableView + function onLayoutChanged() { + let item = tableView.itemAtCell(5, 5) + let insideViewport = item !== null + + overlay.visible = insideViewport + if (insideViewport) { + overlay.x = item.x + overlay.y = item.y + } + } + } + } + //![0] + +} |