aboutsummaryrefslogtreecommitdiffstats
path: root/tests/auto/quick/qquickpathview/data/delegateWithRequiredProperties.qml
blob: 5d721fd0c40c368d06d3bbf942df29977878bf57 (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
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
import QtQuick 2.14

Item {
    width: 400
    height: 200

    ListModel {
        id: myModel
        ListElement {
            name: "Bill Jones"
            place: "Berlin"
        }
        ListElement {
            name: "Jane Doe"
            place: "Oslo"
        }
        ListElement {
            name: "John Smith"
            place: "Oulo"
        }
    }

    Component {
        id: delegateComponent
        Rectangle {
            id: myDelegate
            required property int index
            required property string name
            required property string place
            height: 100
            width: 100
            Text {
                text: myDelegate.name + " lives in " + myDelegate.place + myDelegate.index
                font.pointSize: 16
                anchors.fill: myDelegate

                Component.onCompleted: () => {console.info(myDelegate.name+myDelegate.place+myDelegate.index)}
            }
        }
    }

    PathView {
        anchors.fill: parent
        model: myModel
        delegate: delegateComponent
        path: Path {
            startX: 120; startY: 100
            PathQuad { x: 120; y: 25; controlX: 260; controlY: 75 }
            PathQuad { x: 120; y: 100; controlX: -20; controlY: 75 }
        }
    }

}