Commit 98d8c478 authored by dogmaphobic's avatar dogmaphobic

Added GPS extended info.

And other toolbar fixes...
parent 951a46c1
...@@ -61,12 +61,18 @@ Item { ...@@ -61,12 +61,18 @@ Item {
target: controller target: controller
onShowFlyView: { onShowFlyView: {
if(currentPopUp) {
currentPopUp.close()
}
flightView.visible = true flightView.visible = true
setupViewLoader.visible = false setupViewLoader.visible = false
planViewLoader.visible = false planViewLoader.visible = false
} }
onShowPlanView: { onShowPlanView: {
if(currentPopUp) {
currentPopUp.close()
}
if (planViewLoader.source != _planViewSource) { if (planViewLoader.source != _planViewSource) {
planViewLoader.source = _planViewSource planViewLoader.source = _planViewSource
} }
...@@ -76,6 +82,9 @@ Item { ...@@ -76,6 +82,9 @@ Item {
} }
onShowSetupView: { onShowSetupView: {
if(currentPopUp) {
currentPopUp.close()
}
if (setupViewLoader.source != _setupViewSource) { if (setupViewLoader.source != _setupViewSource) {
setupViewLoader.source = _setupViewSource setupViewLoader.source = _setupViewSource
} }
......
...@@ -41,7 +41,7 @@ import QGroundControl.Controllers 1.0 ...@@ -41,7 +41,7 @@ import QGroundControl.Controllers 1.0
Rectangle { Rectangle {
id: toolBar id: toolBar
color: opaqueBackground ? "#404040" : (isBackgroundDark ? Qt.rgba(0,0,0,0.75) : Qt.rgba(0,0,0,0.5)) color: opaqueBackground ? "#404040" : Qt.rgba(0,0,0,0.75)
QGCPalette { id: qgcPal; colorGroupEnabled: true } QGCPalette { id: qgcPal; colorGroupEnabled: true }
...@@ -181,6 +181,22 @@ Rectangle { ...@@ -181,6 +181,22 @@ Rectangle {
return colorRed; return colorRed;
} }
function getGpsLockStatus() {
if(activeVehicle) {
if(activeVehicle.satelliteLock == 0) {
return "No Satellite Link"
}
if(activeVehicle.satelliteLock == 1) {
return "No GPS Lock"
}
if(activeVehicle.satelliteLock == 2) {
return "2D Lock"
}
return "3D Lock"
}
return "N/A"
}
Component.onCompleted: { Component.onCompleted: {
//-- TODO: Get this from the actual state //-- TODO: Get this from the actual state
flyButton.checked = true flyButton.checked = true
...@@ -193,6 +209,56 @@ Rectangle { ...@@ -193,6 +209,56 @@ Rectangle {
onShowSetupView:{ setupButton.checked = true } onShowSetupView:{ setupButton.checked = true }
} }
//---------------------------------------------
// GPS Info
Component {
id: gpsInfo
Rectangle {
color: Qt.rgba(0,0,0,0.75)
width: gpsCol.width + ScreenTools.defaultFontPixelWidth * 3
height: gpsCol.height + ScreenTools.defaultFontPixelHeight * 2
radius: ScreenTools.defaultFontPixelHeight * 0.5
Column {
id: gpsCol
spacing: ScreenTools.defaultFontPixelHeight * 0.5
width: Math.max(gpsGrid.width, gpsLabel.width)
anchors.margins: ScreenTools.defaultFontPixelHeight
anchors.centerIn: parent
QGCLabel {
id: gpsLabel
text: (activeVehicle && (activeVehicle.satelliteCount > 0)) ? "GPS Status" : "GPS Data Unavailable"
font.weight:Font.DemiBold
anchors.horizontalCenter: parent.horizontalCenter
}
GridLayout {
id: gpsGrid
visible: (activeVehicle && (activeVehicle.satelliteCount > 0))
anchors.margins: ScreenTools.defaultFontPixelHeight
columnSpacing: ScreenTools.defaultFontPixelWidth
anchors.horizontalCenter: parent.horizontalCenter
columns: 2
QGCLabel {
text: "GPS Count:"
}
QGCLabel {
text: activeVehicle ? (activeVehicle.satelliteCount) : "N/A"
}
QGCLabel {
text: "GPS Lock:"
}
QGCLabel {
text: getGpsLockStatus()
}
}
}
Component.onCompleted: {
var pos = mapFromItem(toolBar, centerX - (width / 2), toolBar.height)
x = pos.x
y = pos.y + ScreenTools.defaultFontPixelHeight
}
}
}
//--------------------------------------------- //---------------------------------------------
// Battery Info // Battery Info
Component { Component {
...@@ -261,23 +327,24 @@ Rectangle { ...@@ -261,23 +327,24 @@ Rectangle {
id: rcRSSIInfo id: rcRSSIInfo
Rectangle { Rectangle {
color: Qt.rgba(0,0,0,0.75) color: Qt.rgba(0,0,0,0.75)
width: battCol.width + ScreenTools.defaultFontPixelWidth * 3 width: rcrssiCol.width + ScreenTools.defaultFontPixelWidth * 3
height: battCol.height + ScreenTools.defaultFontPixelHeight * 2 height: rcrssiCol.height + ScreenTools.defaultFontPixelHeight * 2
radius: ScreenTools.defaultFontPixelHeight * 0.5 radius: ScreenTools.defaultFontPixelHeight * 0.5
Column { Column {
id: battCol id: rcrssiCol
spacing: ScreenTools.defaultFontPixelHeight * 0.5 spacing: ScreenTools.defaultFontPixelHeight * 0.5
width: Math.max(battGrid.width, rssiLabel.width) width: Math.max(rcrssiGrid.width, rssiLabel.width)
anchors.margins: ScreenTools.defaultFontPixelHeight anchors.margins: ScreenTools.defaultFontPixelHeight
anchors.centerIn: parent anchors.centerIn: parent
QGCLabel { QGCLabel {
id: rssiLabel id: rssiLabel
text: "RC RSSI Status" text: activeVehicle ? (activeVehicle.rcRSSI > 0 ? "RC RSSI Status" : "RC RSSI Data Unavailable") : "N/A"
font.weight:Font.DemiBold font.weight:Font.DemiBold
anchors.horizontalCenter: parent.horizontalCenter anchors.horizontalCenter: parent.horizontalCenter
} }
GridLayout { GridLayout {
id: battGrid id: rcrssiGrid
visible: activeVehicle && activeVehicle.rcRSSI > 0
anchors.margins: ScreenTools.defaultFontPixelHeight anchors.margins: ScreenTools.defaultFontPixelHeight
columnSpacing: ScreenTools.defaultFontPixelWidth columnSpacing: ScreenTools.defaultFontPixelWidth
anchors.horizontalCenter: parent.horizontalCenter anchors.horizontalCenter: parent.horizontalCenter
......
...@@ -191,6 +191,13 @@ Row { ...@@ -191,6 +191,13 @@ Row {
anchors.leftMargin: gpsIcon.width anchors.leftMargin: gpsIcon.width
anchors.left: parent.left anchors.left: parent.left
} }
MouseArea {
anchors.fill: parent
onClicked: {
var centerX = mapToItem(toolBar, x, y).x + (width / 2)
mainWindow.showPopUp(gpsInfo, centerX)
}
}
} }
//------------------------------------------------------------------------- //-------------------------------------------------------------------------
......
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