File: grabberSceneChange.qml

package info (click to toggle)
qtdeclarative-opensource-src-gles 5.15.15%2Bdfsg-2
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid, trixie
  • size: 258,796 kB
  • sloc: javascript: 512,412; cpp: 497,152; xml: 8,892; python: 3,304; ansic: 2,764; sh: 206; makefile: 46; php: 27
file content (80 lines) | stat: -rw-r--r-- 1,819 bytes parent folder | download | duplicates (4)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
import QtQuick 2.12
import QtQuick.Window 2.12
import Qt.test 1.0

Window {
    id: root
    visible: true
    objectName: "root"
    width: 320
    height: 480

    property bool useTimer : false
    property int grabChangedCounter : 0

    Item {
        id: back
        anchors.fill: parent

        Rectangle {
            id: background
            anchors.fill: parent
            color: "blue"
        }

        Rectangle {
            id: container
            objectName: "container"
            anchors.fill: parent
            anchors.margins: 50
            z: 2

            Rectangle {
                id: likeButton
                color: "gray"
                anchors.centerIn: parent
                width: 200
                height: 200

                DragHandler {
                    id: handler
                    objectName: "dragHandler"
                    grabPermissions: PointerHandler.CanTakeOverFromItems
                    onGrabChanged: {
                        ++grabChangedCounter
                    }
                }
            }
        }

        Timer {
            id: reparentTimer
            running: false
            interval: 100
            repeat: false
            onTriggered: {
                container.parent = null
            }
        }

        Rectangle {
            id: likeButton2
            color: "yellow"
            anchors.centerIn: parent
            width: 100
            height: 100
            z: 3

            MultiPointTouchArea {
                id: press
                anchors.fill: parent
                onPressed: {
                    if (useTimer)
                        reparentTimer.running = true
                    else
                        container.parent = null
                }
            }
        }
    }
}