summaryrefslogtreecommitdiffstats
path: root/examples/declarative/listview/content/ClickAutoRepeating.qml
blob: 796f9e36136ff6f2a86a2544c21790bc62422615 (plain)
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
import Qt 4.6

Item {
    id: page
    property int repeatdelay: 300
    property int repeatperiod: 75
    property bool isPressed: false

    signal pressed
    signal released
    signal clicked

    isPressed: SequentialAnimation {
        id: autoRepeat
        PropertyAction { target: page; property: "isPressed"; value: true }
        ScriptAction { script: page.pressed() }
        ScriptAction { script: page.clicked() }
        PauseAnimation { duration: repeatdelay }
        SequentialAnimation {
            repeat: true
            ScriptAction { script: page.clicked() }
            PauseAnimation { duration: repeatperiod }
        }
    }
    MouseRegion {
        anchors.fill: parent
        onPressed: autoRepeat.start()
        onReleased: { autoRepeat.stop(); parent.isPressed = false; page.released() }
    }
}