/**************************************************************************** * * (c) 2009-2016 QGROUNDCONTROL PROJECT * * QGroundControl is licensed according to the terms in the file * COPYING.md in the root of the source code directory. * ****************************************************************************/ import QtQuick 2.3 import QtQuick.Controls 1.2 import QtQuick.Layouts 1.2 import QGroundControl 1.0 import QGroundControl.Controls 1.0 import QGroundControl.MultiVehicleManager 1.0 import QGroundControl.ScreenTools 1.0 import QGroundControl.Palette 1.0 //------------------------------------------------------------------------- //-- GPS Indicator Item { width: height anchors.top: parent.top anchors.bottom: parent.bottom property var _activeVehicle: QGroundControl.multiVehicleManager.activeVehicle property bool _isMessageImportant: _activeVehicle ? !_activeVehicle.messageTypeNormal && !_activeVehicle.messageTypeNone : false function getMessageColor() { if (_activeVehicle) { if (_activeVehicle.messageTypeNone) return qgcPal.colorGrey if (_activeVehicle.messageTypeNormal) return qgcPal.colorBlue; if (_activeVehicle.messageTypeWarning) return qgcPal.colorOrange; if (_activeVehicle.messageTypeError) return qgcPal.colorRed; // Cannot be so make make it obnoxious to show error console.log("Invalid vehicle message type") return "purple"; } //-- It can only get here when closing (vehicle gone while window active) return qgcPal.colorGrey } Image { id: criticalMessageIcon anchors.fill: parent source: "/qmlimages/Yield.svg" sourceSize.height: height fillMode: Image.PreserveAspectFit cache: false visible: _activeVehicle && _activeVehicle.messageCount > 0 && _isMessageImportant } QGCColoredImage { anchors.fill: parent source: "/qmlimages/Megaphone.svg" sourceSize.height: height fillMode: Image.PreserveAspectFit color: getMessageColor() visible: !criticalMessageIcon.visible } MouseArea { anchors.fill: parent onClicked: mainWindow.showMessageArea() } }