/// <summary> /// Update from METAR Callback data /// </summary> /// <param name="metarDatas"></param> public void Update(MetarTafDataList metarDatas) { var closest = metarDatas.GetClosest(SC.SimConnectClient.Instance.HudBarModule.Lat, SC.SimConnectClient.Instance.HudBarModule.Lon); if (closest.Valid) { MText = closest.Pretty; StationText = $"{closest.Data.Station.StationID}"; if (!float.IsNaN(closest.Distance_nm)) { StationText += $" {closest.Distance_nm:##0.0} nm @{closest.Bearing_deg:000}°"; } HasNewData = true; ConditionColor = (closest.Data.FlightCategory.FlightCategoryColor == "green") ? GUI.GUI_Colors.ColorType.cMetG : (closest.Data.FlightCategory.FlightCategoryColor == "blue") ? GUI.GUI_Colors.ColorType.cMetB : (closest.Data.FlightCategory.FlightCategoryColor == "red") ? GUI.GUI_Colors.ColorType.cMetR : (closest.Data.FlightCategory.FlightCategoryColor == "magenta") ? GUI.GUI_Colors.ColorType.cMetM : (closest.Data.FlightCategory.FlightCategoryColor == "black") ? GUI.GUI_Colors.ColorType.cMetK : // SUB ILS (closest.Data.FlightCategory.FlightCategoryColor == "white") ? GUI.GUI_Colors.ColorType.cMetR : GUI.GUI_Colors.ColorType.cActBG; // unknown } else { MText = ""; StationText = "n.a."; HasNewData = true; ConditionColor = GUI.GUI_Colors.ColorType.cActBG; } }
/// <summary> /// Clear the contained data to defaults /// </summary> public void Clear( ) { MText = ""; ConditionColor = GUI.GUI_Colors.ColorType.cActBG; HasNewData = true; // clear current }