Commit 33ba68fc authored by Don Gagne's avatar Don Gagne

Thumbtack alternate instrument panel

parent 146820c2
......@@ -103,6 +103,7 @@
<file alias="QGroundControl/FlightMap/QGCAttitudeWidget.qml">src/FlightMap/Widgets/QGCAttitudeWidget.qml</file>
<file alias="QGroundControl/FlightMap/QGCCompassWidget.qml">src/FlightMap/Widgets/QGCCompassWidget.qml</file>
<file alias="QGroundControl/FlightMap/QGCInstrumentWidget.qml">src/FlightMap/Widgets/QGCInstrumentWidget.qml</file>
<file alias="QGroundControl/FlightMap/QGCInstrumentWidgetAlternate.qml">src/FlightMap/Widgets/QGCInstrumentWidgetAlternate.qml</file>
<file alias="QGroundControl/FlightMap/QGCPitchIndicator.qml">src/FlightMap/Widgets/QGCPitchIndicator.qml</file>
<file alias="QGroundControl/FlightMap/QGCSlider.qml">src/FlightMap/Widgets/QGCSlider.qml</file>
<file alias="QGroundControl/FlightMap/QGCVideoBackground.qml">src/FlightMap/QGCVideoBackground.qml</file>
......
......@@ -39,6 +39,7 @@ Item {
id: _root
property var _activeVehicle: multiVehicleManager.activeVehicle
property bool _isSatellite: _mainIsMap ? _flightMap ? _flightMap.isSatelliteMap : true : true
QGCMapPalette { id: mapPal; lightColors: !isBackgroundDark }
......@@ -103,59 +104,42 @@ Item {
altitudeFact: _altitudeAMSLFact
groundSpeedFact: _groundSpeedFact
airSpeedFact: _airSpeedFact
isSatellite: _mainIsMap ? _flightMap ? _flightMap.isSatelliteMap : true : true
isSatellite: _isSatellite
z: QGroundControl.zOrderWidgets
qgcView: parent.parent.qgcView
maxHeight: parent.height - (ScreenTools.defaultFontPixelHeight * 2)
}
//-- Alternate Instrument Panel
Rectangle {
visible: QGroundControl.virtualTabletJoystick
QGCInstrumentWidgetAlternate {
id: instrumentGadgetAlternate
anchors.margins: ScreenTools.defaultFontPixelHeight
anchors.top: parent.top
anchors.right: parent.right
anchors.bottom: parent.bottom
width: pipSize
height: pipSize * (9/16)
color: Qt.rgba(0,0,0,0.75)
Column {
id: instruments
width: parent.width
spacing: ScreenTools.defaultFontPixelSize * 0.33
anchors.verticalCenter: parent.verticalCenter
QGCLabel {
text: _altitudeAMSLFact.shortDescription + "(" + _altitudeAMSLFact.units + ")"
font.pixelSize: ScreenTools.defaultFontPixelSize * 0.75
width: parent.width
height: ScreenTools.defaultFontPixelSize * 0.75
color: "white"
horizontalAlignment: TextEdit.AlignHCenter
}
QGCLabel {
text: _altitudeAMSLFact.valueString
font.pixelSize: ScreenTools.defaultFontPixelSize * 1.5
font.weight: Font.DemiBold
width: parent.width
color: "white"
horizontalAlignment: TextEdit.AlignHCenter
}
QGCLabel {
text: _groundSpeedFact.shortDescription + "(" + _groundSpeedFact.units + ")"
font.pixelSize: ScreenTools.defaultFontPixelSize * 0.75
width: parent.width
height: ScreenTools.defaultFontPixelSize * 0.75
color: "white"
horizontalAlignment: TextEdit.AlignHCenter
}
QGCLabel {
text: _groundSpeedFact.valueString
font.pixelSize: ScreenTools.defaultFontPixelSize
font.weight: Font.DemiBold
width: parent.width
color: "white"
horizontalAlignment: TextEdit.AlignHCenter
}
visible: QGroundControl.virtualTabletJoystick
width: getGadgetWidth()
active: _activeVehicle != null
heading: _heading
rollAngle: _roll
pitchAngle: _pitch
altitudeFact: _altitudeAMSLFact
groundSpeedFact: _groundSpeedFact
airSpeedFact: _airSpeedFact
isSatellite: _isSatellite
z: QGroundControl.zOrderWidgets
}
ValuesWidget {
anchors.topMargin: ScreenTools.defaultFontPixelHeight
anchors.top: instrumentGadgetAlternate.bottom
anchors.left: instrumentGadgetAlternate.left
width: getGadgetWidth()
qgcView: parent.parent.qgcView
textColor: _isSatellite ? "white" : "black"
visible: QGroundControl.virtualTabletJoystick
maxHeight: multiTouchItem.y - y
Component.onCompleted: console.log(y)
onHeightChanged: console.log(y, height, multiTouchItem.y)
}
//-- Vertical Tool Buttons
......
/*=====================================================================
QGroundControl Open Source Ground Control Station
(c) 2009, 2015 QGROUNDCONTROL PROJECT <http://www.qgroundcontrol.org>
This file is part of the QGROUNDCONTROL project
QGROUNDCONTROL is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.
QGROUNDCONTROL is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with QGROUNDCONTROL. If not, see <http://www.gnu.org/licenses/>.
======================================================================*/
import QtQuick 2.4
import QGroundControl.Controls 1.0
import QGroundControl.ScreenTools 1.0
import QGroundControl.FactSystem 1.0
import QGroundControl.FlightMap 1.0
/// Instrument panel shown when virtual thumbsticks are visible
Rectangle {
id: root
height: _outerRadius * 2
radius: _outerRadius
color: isSatellite ? Qt.rgba(1,1,1,0.75) : Qt.rgba(0,0,0,0.75)
property alias heading: compass.heading
property alias rollAngle: attitude.rollAngle
property alias pitchAngle: attitude.pitchAngle
property real size: _defaultSize
property bool isSatellite: false
property bool active: false
property Fact _emptyFact: Fact { }
property Fact groundSpeedFact: _emptyFact
property Fact airSpeedFact: _emptyFact
property Fact altitudeFact: _emptyFact
property real _innerRadius: (width - (_topBottomMargin * 3)) / 4
property real _outerRadius: _innerRadius + _topBottomMargin
property real _defaultSize: ScreenTools.defaultFontPixelSize * (9)
property real _sizeRatio: ScreenTools.isTinyScreen ? (size / _defaultSize) * 0.5 : size / _defaultSize
property real _bigFontSize: ScreenTools.defaultFontPixelSize * 2.5 * _sizeRatio
property real _normalFontSize:ScreenTools.defaultFontPixelSize * 1.5 * _sizeRatio
property real _labelFontSize: ScreenTools.defaultFontPixelSize * 0.75 * _sizeRatio
property real _spacing: ScreenTools.defaultFontPixelSize * 0.33
property real _topBottomMargin: (size * 0.05) / 2
QGCAttitudeWidget {
id: attitude
anchors.leftMargin: _topBottomMargin
anchors.left: parent.left
size: _innerRadius * 2
active: active
anchors.verticalCenter: parent.verticalCenter
}
QGCCompassWidget {
id: compass
anchors.leftMargin: _spacing
anchors.left: attitude.right
size: _innerRadius * 2
active: active
anchors.verticalCenter: parent.verticalCenter
}
}
......@@ -10,6 +10,7 @@ QGCAttitudeHUD 1.0 QGCAttitudeHUD.qml
QGCAttitudeWidget 1.0 QGCAttitudeWidget.qml
QGCCompassWidget 1.0 QGCCompassWidget.qml
QGCInstrumentWidget 1.0 QGCInstrumentWidget.qml
QGCInstrumentWidgetAlternate 1.0 QGCInstrumentWidgetAlternate.qml
QGCPitchIndicator 1.0 QGCPitchIndicator.qml
QGCSlider 1.0 QGCSlider.qml
ValuesWidget 1.0 ValuesWidget.qml
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment