File: contentHeightWithDelayRemove.qml

package info (click to toggle)
qtdeclarative-opensource-src 5.15.8%2Bdfsg-3
  • links: PTS, VCS
  • area: main
  • in suites: bookworm
  • size: 259,256 kB
  • sloc: javascript: 512,396; cpp: 495,775; xml: 8,892; python: 3,304; ansic: 2,764; sh: 206; makefile: 62; php: 27
file content (46 lines) | stat: -rw-r--r-- 1,120 bytes parent folder | download | duplicates (10)
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
import QtQuick 2.1

Item {
    width: 400
    height: 600
    function takeOne()
    {
        listView.model.remove(2)
    }
    function takeThree()
    {
        listView.model.remove(4)
        listView.model.remove(2)
        listView.model.remove(0)
    }
    function takeAll()
    {
        listView.model.clear()
    }

    ListView {
        id: listView

        property bool useDelayRemove

        height: parent.height
        width: 400
        model: ListModel {
            ListElement { name: "A" }
            ListElement { name: "B" }
            ListElement { name: "C" }
            ListElement { name: "D" }
            ListElement { name: "E" }
        }
        delegate: Text {
            id: wrapper
            height: 100
            text: index + listView.count
            ListView.delayRemove: listView.useDelayRemove
            ListView.onRemove: SequentialAnimation {
                PauseAnimation { duration: wrapper.ListView.delayRemove ? 100 : 0 }
                PropertyAction { target: wrapper; property: "ListView.delayRemove"; value: false }
            }
        }
    }
}