diff --git a/src/ui/toolbar/ArmedIndicator.qml b/src/ui/toolbar/ArmedIndicator.qml index 41e8a4fd10d69d8aa5f0c3a89212c5e02ce85143..2a970eedae4653f840bc7c73a39b532114462502 100644 --- a/src/ui/toolbar/ArmedIndicator.qml +++ b/src/ui/toolbar/ArmedIndicator.qml @@ -28,6 +28,8 @@ QGCComboBox { currentIndex: -1 sizeToContents: true + property bool showIndicator: true + property var _activeVehicle: QGroundControl.multiVehicleManager.activeVehicle property bool _armed: _activeVehicle ? _activeVehicle.armed : false diff --git a/src/ui/toolbar/BatteryIndicator.qml b/src/ui/toolbar/BatteryIndicator.qml index 497e10096ca8d2be770798db834775ac34f4c214..dc480820fc795d3d11fce2ac618930f63271dcbc 100644 --- a/src/ui/toolbar/BatteryIndicator.qml +++ b/src/ui/toolbar/BatteryIndicator.qml @@ -24,6 +24,8 @@ Item { anchors.bottom: parent.bottom width: batteryIndicatorRow.width + property bool showIndicator: true + function getBatteryColor() { if(activeVehicle) { if(activeVehicle.battery.percentRemaining.value > 75) { diff --git a/src/ui/toolbar/GPSIndicator.qml b/src/ui/toolbar/GPSIndicator.qml index 020ea8c4b1137a0610f75b060c4d31cdd339ecfa..d1dfc9ff646247d8266e451fe1505c0e2a7f8c97 100644 --- a/src/ui/toolbar/GPSIndicator.qml +++ b/src/ui/toolbar/GPSIndicator.qml @@ -24,6 +24,8 @@ Item { anchors.top: parent.top anchors.bottom: parent.bottom + property bool showIndicator: true + Component { id: gpsInfo diff --git a/src/ui/toolbar/GPSRTKIndicator.qml b/src/ui/toolbar/GPSRTKIndicator.qml index d67ae5d2726ad7c8216dc1a7e285e41fafef366b..4f970a29980a15a0f0ce1877d2a0d3e7e0011e15 100644 --- a/src/ui/toolbar/GPSRTKIndicator.qml +++ b/src/ui/toolbar/GPSRTKIndicator.qml @@ -19,10 +19,11 @@ import QGroundControl.Palette 1.0 //-- GPS Indicator Item { id: _root - width: visible ? (gpsValuesColumn.x + gpsValuesColumn.width) * 1.1 : 0 + width: (gpsValuesColumn.x + gpsValuesColumn.width) * 1.1 anchors.top: parent.top anchors.bottom: parent.bottom - visible: QGroundControl.gpsRtk.connected.value + + property bool showIndicator: QGroundControl.gpsRtk.connected.value Component { id: gpsInfo diff --git a/src/ui/toolbar/LinkIndicator.qml b/src/ui/toolbar/LinkIndicator.qml index 01144f56641e7ba725aa889348ccb6b2f8038e44..1dc64179e21c132d3fb77326ca5bf6d5f6a6d37e 100644 --- a/src/ui/toolbar/LinkIndicator.qml +++ b/src/ui/toolbar/LinkIndicator.qml @@ -23,10 +23,9 @@ import QGroundControl.Vehicle 1.0 Item { anchors.top: parent.top anchors.bottom: parent.bottom - width: visible ? priorityLinkSelector.width : 0 - visible: _visible + width: priorityLinkSelector.width - property bool _visible: false + property bool showIndicator: false QGCLabel { id: priorityLinkSelector @@ -66,7 +65,7 @@ Item { } } - _visible = links.length > 1 && has_hl + showIndicator = links.length > 1 && has_hl } } diff --git a/src/ui/toolbar/MainToolBarIndicators.qml b/src/ui/toolbar/MainToolBarIndicators.qml index 1e6845a626c9bc212fa3b7834400a0e1f2b992a5..cf1a12145c36213a62ba605c140306ee7b673e94 100644 --- a/src/ui/toolbar/MainToolBarIndicators.qml +++ b/src/ui/toolbar/MainToolBarIndicators.qml @@ -84,10 +84,12 @@ Item { Repeater { model: activeVehicle ? activeVehicle.toolBarIndicators : [] Loader { + id: indicatorLoader anchors.top: parent.top anchors.bottom: parent.bottom anchors.margins: ScreenTools.defaultFontPixelHeight * 0.66 - source: modelData; + source: modelData + visible: item.showIndicator } } } diff --git a/src/ui/toolbar/MessageIndicator.qml b/src/ui/toolbar/MessageIndicator.qml index eecf5087ceaadc87ab81318ff9273f3e9c401f91..d9aaa2f12e6ca10816189fd218d79722fb39d4cc 100644 --- a/src/ui/toolbar/MessageIndicator.qml +++ b/src/ui/toolbar/MessageIndicator.qml @@ -25,7 +25,9 @@ Item { anchors.top: parent.top anchors.bottom: parent.bottom - property bool _isMessageImportant: activeVehicle ? !activeVehicle.messageTypeNormal && !activeVehicle.messageTypeNone : false + property bool showIndicator: true + + property bool _isMessageImportant: activeVehicle ? !activeVehicle.messageTypeNormal && !activeVehicle.messageTypeNone : false function getMessageColor() { if (activeVehicle) { diff --git a/src/ui/toolbar/ModeIndicator.qml b/src/ui/toolbar/ModeIndicator.qml index aaec9bb71588e5d2a7cd0e61355c19a0e7f30b15..7371c94e6c0a75a57d2c02a0a7a0b267124985e4 100644 --- a/src/ui/toolbar/ModeIndicator.qml +++ b/src/ui/toolbar/ModeIndicator.qml @@ -28,6 +28,8 @@ QGCComboBox { currentIndex: -1 sizeToContents: true + property bool showIndicator: true + property var _activeVehicle: QGroundControl.multiVehicleManager.activeVehicle property var _flightModes: _activeVehicle ? _activeVehicle.flightModes : [ ] diff --git a/src/ui/toolbar/MultiVehicleSelector.qml b/src/ui/toolbar/MultiVehicleSelector.qml index 36b8e52bcae80373cb5cb27926ecd25929a77dd8..26eb6264f130e637ccd75e9a120929ea94c6a140 100644 --- a/src/ui/toolbar/MultiVehicleSelector.qml +++ b/src/ui/toolbar/MultiVehicleSelector.qml @@ -26,7 +26,8 @@ QGCComboBox { currentIndex: -1 sizeToContents: true model: _vehicleModel - visible: _multipleVehicles + + property bool showIndicator: _multipleVehicles property var _activeVehicle: QGroundControl.multiVehicleManager.activeVehicle property bool _multipleVehicles: _activeVehicle ? QGroundControl.multiVehicleManager.vehicles.count > 1 : false diff --git a/src/ui/toolbar/RCRSSIIndicator.qml b/src/ui/toolbar/RCRSSIIndicator.qml index 7c80246a0598563104dc3dc2162d9ec2a28d58bb..5b30db1872ed5db1dc13a437bc495c3d26f2c509 100644 --- a/src/ui/toolbar/RCRSSIIndicator.qml +++ b/src/ui/toolbar/RCRSSIIndicator.qml @@ -23,8 +23,10 @@ Item { width: rssiRow.width * 1.1 anchors.top: parent.top anchors.bottom: parent.bottom - visible: activeVehicle ? activeVehicle.supportsRadio : true + property bool showIndicator: _activeVehicle.supportsRadio + + property var _activeVehicle: QGroundControl.multiVehicleManager.activeVehicle property bool _rcRSSIAvailable: activeVehicle ? activeVehicle.rcRSSI > 0 && activeVehicle.rcRSSI <= 100 : false Component { diff --git a/src/ui/toolbar/TelemetryRSSIIndicator.qml b/src/ui/toolbar/TelemetryRSSIIndicator.qml index c2aaf8c893f4529076cf90d04d25b0fde98746df..25aa74144cdc35f69a18c335e25454626c7ebbe5 100644 --- a/src/ui/toolbar/TelemetryRSSIIndicator.qml +++ b/src/ui/toolbar/TelemetryRSSIIndicator.qml @@ -22,10 +22,12 @@ Item { id: _root anchors.top: parent.top anchors.bottom: parent.bottom - width: _hasTelemetry ? telemIcon.width * 1.1 : 0 - visible: _hasTelemetry + width: telemIcon.width * 1.1 - property bool _hasTelemetry: activeVehicle ? activeVehicle.telemetryLRSSI !== 0 : false + property bool showIndicator: _hasTelemetry + + property var _activeVehicle: QGroundControl.multiVehicleManager.activeVehicle + property bool _hasTelemetry: _activeVehicle ? _activeVehicle.telemetryLRSSI !== 0 : false Component { id: telemRSSIInfo diff --git a/src/ui/toolbar/VTOLModeIndicator.qml b/src/ui/toolbar/VTOLModeIndicator.qml index 2b0258fca7a1268829bf95ad7699bec270b008c2..3c32b055b2ceebea549be06362b3c96cdfefda0d 100644 --- a/src/ui/toolbar/VTOLModeIndicator.qml +++ b/src/ui/toolbar/VTOLModeIndicator.qml @@ -26,10 +26,12 @@ QGCLabel { text: _fwdFlight ? qsTr("VTOL: Fixed Wing") : qsTr("VTOL: Multi-Rotor") font.pointSize: ScreenTools.mediumFontPointSize color: qgcPal.buttonText - visible: activeVehicle ? activeVehicle.vtol && activeVehicle.px4Firmware : false - width: visible ? implicitWidth : 0 + width: implicitWidth - property bool _fwdFlight: activeVehicle ? activeVehicle.vtolInFwdFlight : false + property bool showIndicator: _activeVehicle.vtol && _activeVehicle.px4Firmware + + property var _activeVehicle: QGroundControl.multiVehicleManager.activeVehicle + property bool _fwdFlight: _activeVehicle.vtolInFwdFlight QGCMouseArea { fillItem: parent