blob: efbbc9fedc95ba9cde2eb40f5ddcddce586e103d (
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
|
import Qt.test
import QtQml
QtObject {
id: root
property int a: 0
property int b: 0
signal someSignal
function destroyObj() {
obj.destroy()
}
function test() {
++a
}
component DestructionReceiver: QtObject {
// Has its own context and therefore can receive Component.onDestruction
}
property QtObject obj: QtObject {
property QtObject inner: DestructionReceiver {
Component.onDestruction: {
// The outer obj is already queued for deletion.
// We don't want to see this signal delivered.
root.someSignal();
++root.b
}
}
}
Component.onCompleted: someSignal.connect(obj, test)
}
|