GeoAreaVisualLoader.qml 1.49 KB
Newer Older
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
/****************************************************************************
 *
 *   (c) 2009-2016 QGROUNDCONTROL PROJECT <http://www.qgroundcontrol.org>
 *
 * QGroundControl is licensed according to the terms in the file
 * COPYING.md in the root of the source code directory.
 *
 ****************************************************************************/

import QtQuick          2.3
import QtQuick.Controls 1.2
import QtLocation       5.3
import QtPositioning    5.3

import QGroundControl.ScreenTools   1.0
import QGroundControl.Palette       1.0
import QGroundControl.Controls      1.0
18
import QGroundControl               1.0
19 20 21 22 23 24 25


Item {
    id: _root

    property var map        ///< Map control to place item in
    property var qgcView    ///< QGCView to use for popping dialogs
26
    property var geoArea    ///< GeoArea derived class
27 28 29 30 31 32

    signal clicked(int sequenceNumber)

    property var _visualItem

    Component.onCompleted: {
33 34
        if (geoArea.mapVisualQML) {
            var component = Qt.createComponent(geoArea.mapVisualQML)
35
            if (component.status === Component.Error) {
36
                console.log("Error loading Qml: ", geoArea.mapVisualQML, component.errorString())
37
            }
38
            _visualItem = component.createObject(map, { "map": _root.map, "qgcView": _root.qgcView, "geoArea": _root.geoArea})
39 40 41 42 43 44 45 46 47 48
            _visualItem.clicked.connect(_root.clicked)
        }
    }

    Component.onDestruction: {
        if (_visualItem) {
            _visualItem.destroy()
        }
    }
}