summaryrefslogtreecommitdiffstats
path: root/doc/src/snippets/declarative/componentCreation.js
blob: cf597773f12116bafbd1efa901604fb4bac8882f (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
//![vars]
var component;
var sprite;
//![vars]

//![func]
function createSpriteObjects() {
//![func]

//![remote]
    component = Qt.createComponent("Sprite.qml");
    if (component.status == Component.Ready)
        finishCreation();
    else
        component.statusChanged.connect(finishCreation);
//![remote]

//![local]
    component = Qt.createComponent("Sprite.qml");
    sprite = component.createObject(appWindow, {"x": 100, "y": 100});

    if (sprite == null) {
        // Error Handling
        console.log("Error creating object");
    }
//![local]

//![func-end]
}
//![func-end]

//![finishCreation]
function finishCreation() {
    if (component.status == Component.Ready) {
        sprite = component.createObject(appWindow);
        if (sprite == null) {
            // Error Handling
        } else {
            sprite.x = 100;
            sprite.y = 100;
            // ...
        }
    } else if (component.status == Component.Error) {
        // Error Handling
        console.log("Error loading component:", component.errorString());
    }
}
//![finishCreation]