static void UpdateButtons() { const AbstractAirspace *airspace = GetSelectedAirspace(); if (airspace == NULL) { ack_warn_button->SetVisible(false); ack_day_button->SetVisible(false); ack_space_button->SetVisible(false); enable_button->SetVisible(false); return; } bool ack_expired, ack_day, inside; { ProtectedAirspaceWarningManager::ExclusiveLease lease(*airspace_warnings); const AirspaceWarning &warning = lease->GetWarning(*airspace); ack_expired = warning.IsAckExpired(); ack_day = warning.GetAckDay(); inside = warning.GetWarningState() == AirspaceWarning::WARNING_INSIDE; } ack_warn_button->SetVisible(ack_expired && !inside); ack_day_button->SetVisible(!ack_day); ack_space_button->SetVisible(ack_expired && inside); enable_button->SetVisible(!ack_expired); }
/** ack day */ static void Ack2() { const AbstractAirspace *airspace = GetSelectedAirspace(); if (airspace != NULL) { airspace_warnings->acknowledge_day(*airspace, true); wAirspaceList->invalidate(); AutoHide(); } }
static void AckWarning() { const AbstractAirspace *airspace = GetSelectedAirspace(); if (airspace != NULL) { airspace_warnings->acknowledge_warning(*airspace, true); UpdateList(); AutoHide(); } }
/** unack */ static void OnEnableClicked(WindowControl * Sender) { (void)Sender; const AbstractAirspace *airspace = GetSelectedAirspace(); if (airspace != NULL) { airspace_warnings.acknowledge_warning(*airspace, false); airspace_warnings.acknowledge_day(*airspace, false); wAirspaceList->invalidate(); } }
/** ack warn */ static void OnAck1Clicked(WindowControl * Sender){ (void)Sender; const AbstractAirspace *airspace = GetSelectedAirspace(); if (airspace != NULL) { airspace_warnings.acknowledge_warning(*airspace, true); wAirspaceList->invalidate(); AutoHide(); } }
/** unack */ static void Enable() { const AbstractAirspace *airspace = GetSelectedAirspace(); if (airspace != NULL) { airspace_warnings->acknowledge_inside(*airspace, false); airspace_warnings->acknowledge_warning(*airspace, false); airspace_warnings->acknowledge_day(*airspace, false); wAirspaceList->invalidate(); } }
static void Enable() { const AbstractAirspace *airspace = GetSelectedAirspace(); if (airspace == NULL) return; { ProtectedAirspaceWarningManager::ExclusiveLease lease(*airspace_warnings); AirspaceWarning *warning = lease->GetWarningPtr(*airspace); if (warning == NULL) return; warning->AcknowledgeInside(false); warning->AcknowledgeWarning(false); warning->AcknowledgeDay(false); } UpdateList(); }