CenterMapDropPanel.qml 2.46 KB
Newer Older
1 2 3 4 5 6 7 8 9
/****************************************************************************
 *
 *   (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.
 *
 ****************************************************************************/

10 11 12 13
import QtQuick          2.3
import QtQuick.Controls 1.2
import QtQuick.Layouts  1.2
import QtPositioning    5.3
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 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64

import QGroundControl               1.0
import QGroundControl.ScreenTools   1.0
import QGroundControl.Controls      1.0
import QGroundControl.Palette       1.0

ColumnLayout {
    id:         root
    spacing:    ScreenTools.defaultFontPixelWidth * 0.5

    property var    map
    property var    fitFunctions
    property bool   showMission:          true
    property bool   showAllItems:         true

    property var _activeVehicle: QGroundControl.multiVehicleManager.activeVehicle

    QGCLabel { text: qsTr("Center map on:") }

    QGCButton {
        text:               qsTr("Mission")
        Layout.fillWidth:   true
        visible:            showMission

        onClicked: {
            dropPanel.hide()
            fitFunctions.fitMapViewportToMissionItems()
        }
    }

    QGCButton {
        text:               qsTr("All items")
        Layout.fillWidth:   true
        visible:            showAllItems

        onClicked: {
            dropPanel.hide()
            fitFunctions.fitMapViewportToAllItems()
        }
    }

    QGCButton {
        text:               qsTr("Home")
        Layout.fillWidth:   true

        onClicked: {
            dropPanel.hide()
            map.center = fitFunctions.fitHomePosition()
        }
    }

65 66 67 68 69 70 71 72 73 74 75
    QGCButton {
        text:               qsTr("Vehicle")
        Layout.fillWidth:   true
        enabled:            _activeVehicle && _activeVehicle.coordinate.isValid

        onClicked: {
            dropPanel.hide()
            map.center = activeVehicle.coordinate
        }
    }

76 77 78
    QGCButton {
        text:               qsTr("Current Location")
        Layout.fillWidth:   true
79
        enabled:            map.gcsPosition.isValid
80 81 82

        onClicked: {
            dropPanel.hide()
83
            map.center = map.gcsPosition
84 85 86 87
        }
    }

    QGCButton {
88
        text:               qsTr("Specified Location")
89 90 91 92
        Layout.fillWidth:   true

        onClicked: {
            dropPanel.hide()
93
            map.centerToSpecifiedLocation()
94 95 96
        }
    }
} // Column