qt6-bb10/qtdeclarative/tests/auto/quick/pointerhandlers/qquickdraghandler/data/snapMode.qml

82 lines
1.8 KiB
QML

// Copyright (C) 2019 The Qt Company Ltd.
// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
import QtQuick 2.12
Item {
id: root
objectName: "snapMode"
width: 640
height: 480
Instantiator {
model: 3
// non-interfering, just for visual monitoring of points
delegate: PointHandler {
id: ph
required property int index
objectName: "ph" + index
parent: root
target: Rectangle {
parent: root
visible: ph.active
x: ph.point.position.x - width / 2
y: ph.point.position.y - height / 2
width: 10; height: width; radius: width / 2
color: Qt.rgba(1, 0.33 * ph.index, 1 - 0.3 * ph.index)
}
}
}
Rectangle {
id: rect1
objectName: "rect1"
width: 90
height: 100
x: 100
y: 100
color: "teal"
Rectangle {
width: parent.width/2
height: parent.width/2
x: width/2
y: -x
color: dragHandler1.active ? "red" : "salmon"
DragHandler {
id: dragHandler1
objectName: "dragHandler1"
target: rect1
}
}
}
Rectangle {
id: rect2
objectName: "rect2"
width: 90
height: 100
x: 200
y: 100
color: "teal"
DragHandler {
id: dragHandler2
objectName: "dragHandler2"
target: rect2b
}
Rectangle {
id: rect2b
width: parent.width/2
height: parent.width/2
anchors.horizontalCenter: parent.horizontalCenter
y: -width/2
color: dragHandler2.active ? "red" : "salmon"
}
}
}