qmlFrontend/qml/qmlFrontend/main.qml
author unc0rr
Thu, 16 Apr 2015 23:31:13 +0300
branchqmlfrontend
changeset 10896 5a74923120d5
parent 10422 4cf23d4c7624
child 11415 05cf35103206
permissions -rw-r--r--
Start network support: only setting up a connection for now
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
10402
3313336c1ee0 Let's get it started
unc0rr
parents:
diff changeset
     1
import QtQuick 2.0
3313336c1ee0 Let's get it started
unc0rr
parents:
diff changeset
     2
3313336c1ee0 Let's get it started
unc0rr
parents:
diff changeset
     3
Rectangle {
10422
4cf23d4c7624 - Pages
unc0rr
parents: 10420
diff changeset
     4
    id: pages
4cf23d4c7624 - Pages
unc0rr
parents: 10420
diff changeset
     5
    width: 800
4cf23d4c7624 - Pages
unc0rr
parents: 10420
diff changeset
     6
    height: 600
4cf23d4c7624 - Pages
unc0rr
parents: 10420
diff changeset
     7
4cf23d4c7624 - Pages
unc0rr
parents: 10420
diff changeset
     8
    property variant pagesList  : [
4cf23d4c7624 - Pages
unc0rr
parents: 10420
diff changeset
     9
        "First"
4cf23d4c7624 - Pages
unc0rr
parents: 10420
diff changeset
    10
        , "LocalGame"
4cf23d4c7624 - Pages
unc0rr
parents: 10420
diff changeset
    11
        , "GameConfig"
10896
5a74923120d5 Start network support: only setting up a connection for now
unc0rr
parents: 10422
diff changeset
    12
        , "Connect"
10422
4cf23d4c7624 - Pages
unc0rr
parents: 10420
diff changeset
    13
    ];
4cf23d4c7624 - Pages
unc0rr
parents: 10420
diff changeset
    14
4cf23d4c7624 - Pages
unc0rr
parents: 10420
diff changeset
    15
    property string  currentPage : "First";
4cf23d4c7624 - Pages
unc0rr
parents: 10420
diff changeset
    16
4cf23d4c7624 - Pages
unc0rr
parents: 10420
diff changeset
    17
    Repeater {
4cf23d4c7624 - Pages
unc0rr
parents: 10420
diff changeset
    18
        model: pagesList;
10402
3313336c1ee0 Let's get it started
unc0rr
parents:
diff changeset
    19
10422
4cf23d4c7624 - Pages
unc0rr
parents: 10420
diff changeset
    20
        delegate: Loader {
4cf23d4c7624 - Pages
unc0rr
parents: 10420
diff changeset
    21
            active: false
4cf23d4c7624 - Pages
unc0rr
parents: 10420
diff changeset
    22
            asynchronous: true
4cf23d4c7624 - Pages
unc0rr
parents: 10420
diff changeset
    23
            anchors.fill: parent
4cf23d4c7624 - Pages
unc0rr
parents: 10420
diff changeset
    24
            visible: (currentPage === modelData)
4cf23d4c7624 - Pages
unc0rr
parents: 10420
diff changeset
    25
            source: "%1.qml".arg(modelData)
4cf23d4c7624 - Pages
unc0rr
parents: 10420
diff changeset
    26
            onVisibleChanged:      loadIfNotLoaded();
4cf23d4c7624 - Pages
unc0rr
parents: 10420
diff changeset
    27
            Component.onCompleted: loadIfNotLoaded();
10402
3313336c1ee0 Let's get it started
unc0rr
parents:
diff changeset
    28
10422
4cf23d4c7624 - Pages
unc0rr
parents: 10420
diff changeset
    29
            function loadIfNotLoaded ()
4cf23d4c7624 - Pages
unc0rr
parents: 10420
diff changeset
    30
            {
4cf23d4c7624 - Pages
unc0rr
parents: 10420
diff changeset
    31
                if (visible && !active)
4cf23d4c7624 - Pages
unc0rr
parents: 10420
diff changeset
    32
                    active = true;
4cf23d4c7624 - Pages
unc0rr
parents: 10420
diff changeset
    33
            }
10420
unc0rr
parents: 10402
diff changeset
    34
        }
10402
3313336c1ee0 Let's get it started
unc0rr
parents:
diff changeset
    35
    }
3313336c1ee0 Let's get it started
unc0rr
parents:
diff changeset
    36
}