MissionItemMapVisual.qml 1.62 KB
Newer Older
1 2
/****************************************************************************
 *
3
 * (c) 2009-2020 QGROUNDCONTROL PROJECT <http://www.qgroundcontrol.org>
4 5 6 7 8 9
 *
 * QGroundControl is licensed according to the terms in the file
 * COPYING.md in the root of the source code directory.
 *
 ****************************************************************************/

10 11 12 13
import QtQuick          2.3
import QtQuick.Controls 1.2
import QtLocation       5.3
import QtPositioning    5.3
14 15 16 17

import QGroundControl.ScreenTools   1.0
import QGroundControl.Palette       1.0
import QGroundControl.Controls      1.0
18
import Wima 					    1.0
19

20
/// Mission item map visual
21 22 23
Item {
    id: _root

DonLakeFlyer's avatar
DonLakeFlyer committed
24
    property var map        ///< Map control to place item in
25 26
    property var vehicle    ///< Vehicle associated with this item
    property var interactive: true    ///< Vehicle associated with this item
27

28 29
    signal clicked(int sequenceNumber)

30
    property var _visualItem
31 32 33 34 35 36 37

    Component.onCompleted: {
        if (object.mapVisualQML) {
            var component = Qt.createComponent(object.mapVisualQML)
            if (component.status === Component.Error) {
                console.log("Error loading Qml: ", object.mapVisualQML, component.errorString())
            }
38
            _visualItem = component.createObject(map, { "map": _root.map, vehicle: _root.vehicle, 'opacity': Qt.binding(function() { return _root.opacity }), 'interactive': Qt.binding(function() { return _root.interactive }) })
39
            _visualItem.clicked.connect(_root.clicked)
40 41 42 43
        }
    }

    Component.onDestruction: {
44 45
        if (_visualItem) {
            _visualItem.destroy()
46 47 48
        }
    }
}