From 0303f5e9c2961075629d5836c9ad9832a985bf6f Mon Sep 17 00:00:00 2001 From: Gus Grubba Date: Mon, 29 Jan 2018 21:49:07 -0500 Subject: [PATCH] Subdue Aispace widget if no vehicle is connected Added an "unavailable" icon for when no vehicle is connected Toggle restriction overlays (map) on/off based on the airspace widget being expanded/collapsed respectively --- src/Airmap/AirspaceControl.qml | 10 +++--- src/Airmap/README.md | 6 +++- src/Airmap/airmap.qrc | 1 + src/Airmap/images/unavailable.svg | 8 +++++ .../FlightDisplayViewWidgets.qml | 2 +- src/PlanView/PlanView.qml | 35 ++++++++++--------- 6 files changed, 39 insertions(+), 23 deletions(-) create mode 100644 src/Airmap/images/unavailable.svg diff --git a/src/Airmap/AirspaceControl.qml b/src/Airmap/AirspaceControl.qml index 0ebda974c..71d5af96f 100644 --- a/src/Airmap/AirspaceControl.qml +++ b/src/Airmap/AirspaceControl.qml @@ -33,6 +33,7 @@ Item { readonly property color _colorBrown: "#3c2b24" readonly property color _colorLightBrown: "#5a4e49" readonly property color _colorGray: "#615c61" + readonly property color _colorLightGray: "#a0a0a0" readonly property color _colorMidBrown: "#3a322f" readonly property color _colorYellow: "#d7c61d" readonly property color _colorWhite: "#ffffff" @@ -81,13 +82,13 @@ Item { width: height height: ScreenTools.defaultFontPixelWidth * 2.5 sourceSize.height: height - source: "qrc:/airmap/advisory-icon.svg" - color: _textColor + source: _activeVehicle ? "qrc:/airmap/advisory-icon.svg" : "qrc:/airmap/unavailable.svg" + color: _activeVehicle ? _textColor : _colorLightGray anchors.verticalCenter: parent.verticalCenter } QGCLabel { text: qsTr("Airspace") - color: _textColor + color: _activeVehicle ? _textColor : _colorLightGray anchors.verticalCenter: parent.verticalCenter } Item { @@ -97,7 +98,7 @@ Item { AirspaceWeather { iconHeight: ScreenTools.defaultFontPixelWidth * 2.5 visible: _activeVehicle && _activeVehicle.airspaceController.weatherInfo.valid - contentColor: _textColor + contentColor: _activeVehicle ? _textColor : _colorLightGray anchors.verticalCenter: parent.verticalCenter } } @@ -107,6 +108,7 @@ Item { sourceSize.height: height source: "qrc:/airmap/expand.svg" color: _textColor + visible: _activeVehicle anchors.right: parent.right anchors.rightMargin: ScreenTools.defaultFontPixelWidth anchors.verticalCenter: parent.verticalCenter diff --git a/src/Airmap/README.md b/src/Airmap/README.md index b05b646cb..a93d003c8 100644 --- a/src/Airmap/README.md +++ b/src/Airmap/README.md @@ -4,5 +4,9 @@ * Traffic monitor timeout is now set to 2 minutes following instructions from Thomas Voß. -* Add a "Wrong Way" icon to the airspace widget when not connected +* Check rules sorting order + +* Group rules jurisdictions + +* ~Add a "Wrong Way" icon to the airspace widget when not connected~ diff --git a/src/Airmap/airmap.qrc b/src/Airmap/airmap.qrc index 87b5720d6..19375252f 100644 --- a/src/Airmap/airmap.qrc +++ b/src/Airmap/airmap.qrc @@ -16,6 +16,7 @@ images/expand.svg images/pencil.svg images/right-arrow.svg + images/unavailable.svg images/weather-icons/clear.svg diff --git a/src/Airmap/images/unavailable.svg b/src/Airmap/images/unavailable.svg new file mode 100644 index 000000000..71a646b43 --- /dev/null +++ b/src/Airmap/images/unavailable.svg @@ -0,0 +1,8 @@ + + + + + diff --git a/src/FlightDisplay/FlightDisplayViewWidgets.qml b/src/FlightDisplay/FlightDisplayViewWidgets.qml index f28d0fcb6..f4330a97e 100644 --- a/src/FlightDisplay/FlightDisplayViewWidgets.qml +++ b/src/FlightDisplay/FlightDisplayViewWidgets.qml @@ -29,7 +29,7 @@ Item { property var qgcView property bool useLightColors property var missionController - property bool showValues: true + property bool showValues: _activeVehicle ? !_activeVehicle.airspaceController.airspaceVisible : true property var _activeVehicle: QGroundControl.multiVehicleManager.activeVehicle property bool _isSatellite: _mainIsMap ? (_flightMap ? _flightMap.isSatelliteMap : true) : true diff --git a/src/PlanView/PlanView.qml b/src/PlanView/PlanView.qml index 3e509aa7e..163c2884f 100644 --- a/src/PlanView/PlanView.qml +++ b/src/PlanView/PlanView.qml @@ -97,9 +97,10 @@ QGCView { on_EnableAirMapChanged: { if(QGroundControl.airmapSupported) { - if(_enableAirMap) { - planControlColapsed = true - _activeVehicle.airspaceController.airspaceVisible = true + if(!_activeVehicle) { + planControlColapsed = false + } else if(_enableAirMap) { + planControlColapsed = _activeVehicle.airspaceController.airspaceVisible } else { planControlColapsed = false } @@ -165,8 +166,8 @@ QGCView { } Connections { - target: _activeVehicle ? _activeVehicle.airspaceController : undefined - onColapsedChanged: { + target: _activeVehicle ? _activeVehicle.airspaceController : null + onAirspaceVisibleChanged: { planControlColapsed = _activeVehicle.airspaceController.airspaceVisible } } @@ -535,12 +536,11 @@ QGCView { id: airspaceControl width: parent.width visible: _enableAirMap - showColapse: false + showColapse: true } //------------------------------------------------------- // Mission Controls (Colapsed) Rectangle { - id: planColapsed width: parent.width height: planControlColapsed ? colapsedRow.height + ScreenTools.defaultFontPixelHeight : 0 color: qgcPal.missionItemEditor @@ -553,16 +553,16 @@ QGCView { anchors.leftMargin: ScreenTools.defaultFontPixelWidth anchors.verticalCenter: parent.verticalCenter QGCColoredImage { - width: height - height: ScreenTools.defaultFontPixelWidth * 2.5 - sourceSize.height: height - source: "qrc:/res/waypoint.svg" - color: qgcPal.text + width: height + height: ScreenTools.defaultFontPixelWidth * 2.5 + sourceSize.height: height + source: "qrc:/res/waypoint.svg" + color: qgcPal.text anchors.verticalCenter: parent.verticalCenter } QGCLabel { - text: qsTr("Plan") - color: qgcPal.text + text: qsTr("Plan") + color: qgcPal.text anchors.verticalCenter: parent.verticalCenter } } @@ -581,8 +581,9 @@ QGCView { anchors.fill: parent enabled: QGroundControl.airmapSupported onClicked: { - airspaceControl.colapsed = true - planControlColapsed = false + if(_activeVehicle) { + _activeVehicle.airspaceController.airspaceVisible = false + } } } } @@ -591,7 +592,7 @@ QGCView { Rectangle { id: planExpanded width: parent.width - height: !planControlColapsed ? expandedCol.height + ScreenTools.defaultFontPixelHeight : 0 + height: (!planControlColapsed || !_enableAirMap) ? expandedCol.height + ScreenTools.defaultFontPixelHeight : 0 color: qgcPal.missionItemEditor radius: _radius visible: !planControlColapsed || !_enableAirMap -- 2.22.0