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


11
import QtQuick 2.3
12

13
import QGroundControl               1.0
14 15 16 17
import QGroundControl.Controls      1.0
import QGroundControl.ScreenTools   1.0
import QGroundControl.FactSystem    1.0
import QGroundControl.FlightMap     1.0
Don Gagne's avatar
Don Gagne committed
18
import QGroundControl.Palette       1.0
19 20

Rectangle {
Don Gagne's avatar
Don Gagne committed
21
    id:             root
22
    width:          getPreferredInstrumentWidth()
23
    height:         _outerRadius * 4 + _valuesWidget.height
Don Gagne's avatar
Don Gagne committed
24 25 26
    radius:         _outerRadius
    color:          qgcPal.window
    border.width:   1
27
    border.color:   _isSatellite ? qgcPal.mapWidgetBorderLight : qgcPal.mapWidgetBorderDark
28

29
    property real   _innerRadius:       (width - (_topBottomMargin * 2)) / 2
30 31 32 33 34 35 36 37
    property real   _outerRadius:       _innerRadius + _topBottomMargin
    property real   _defaultSize:       ScreenTools.defaultFontPixelHeight * (9)
    property real   _sizeRatio:         ScreenTools.isTinyScreen ? (width / _defaultSize) * 0.5 : width / _defaultSize
    property real   _bigFontSize:       ScreenTools.defaultFontPointSize * 2.5  * _sizeRatio
    property real   _normalFontSize:    ScreenTools.defaultFontPointSize * 1.5  * _sizeRatio
    property real   _labelFontSize:     ScreenTools.defaultFontPointSize * 0.75 * _sizeRatio
    property real   _spacing:           ScreenTools.defaultFontPixelHeight * 0.33
    property real   _topBottomMargin:   (width * 0.05) / 2
Don Gagne's avatar
Don Gagne committed
38 39
    property real   _availableValueHeight: maxHeight - (root.height + _valuesItem.anchors.topMargin)

40 41 42 43 44
    // Prevent all clicks from going through to lower layers
    DeadMouseArea {
        anchors.fill: parent
    }

Don Gagne's avatar
Don Gagne committed
45
    QGCPalette { id: qgcPal }
46 47

    QGCAttitudeWidget {
48 49 50 51 52 53 54
        id:                   attitude
        anchors.topMargin :   _topBottomMargin
        anchors.bottomMargin: _topBottomMargin
        anchors.top:          parent.top
        size:                 _innerRadius * 2
        vehicle:              activeVehicle
        anchors.horizontalCenter: parent.horizontalCenter
55 56
    }

Don Gagne's avatar
Don Gagne committed
57 58 59 60

    Item {
        id:                 _valuesItem
        anchors.topMargin:  ScreenTools.defaultFontPixelHeight / 4
61 62
        anchors.top:        attitude.bottom
        anchors.bottom:     compass.top
Don Gagne's avatar
Don Gagne committed
63 64
        width:              parent.width
        height:             _valuesWidget.height
Gus Grubba's avatar
Gus Grubba committed
65
        visible:            widgetRoot.showValues
Don Gagne's avatar
Don Gagne committed
66

67 68 69 70 71
        // Prevent all clicks from going through to lower layers
        DeadMouseArea {
            anchors.fill: parent
        }

Don Gagne's avatar
Don Gagne committed
72 73 74 75 76
        Rectangle {
            anchors.fill:   _valuesWidget
            color:          qgcPal.window
        }

77
        PageView {
Don Gagne's avatar
Don Gagne committed
78 79 80 81 82 83 84
            id:                 _valuesWidget
            anchors.margins:    1
            anchors.left:       parent.left
            anchors.right:      parent.right
            maxHeight:          _availableValueHeight
        }
    }
85 86 87 88 89 90 91 92 93 94

    QGCCompassWidget {
        id:                         compass
        anchors.bottom :            parent.bottom
        anchors.bottomMargin:       _topBottomMargin
        anchors.topMargin:          _topBottomMargin
        size:                       _innerRadius * 2
        vehicle:                    activeVehicle
        anchors.horizontalCenter:   parent.horizontalCenter
    }
95
}