Ref T268, aircraft situation view allows to "request elevation"

This commit is contained in:
Klaus Basan
2018-07-09 22:10:48 +02:00
parent d489bed370
commit f06482b554
3 changed files with 49 additions and 6 deletions

View File

@@ -9,7 +9,10 @@
#include "blackgui/views/aircraftsituationview.h"
using namespace BlackMisc;
using namespace BlackMisc::Aviation;
using namespace BlackGui::Models;
using namespace BlackGui::Menus;
namespace BlackGui
{
@@ -21,5 +24,26 @@ namespace BlackGui
this->standardInit(new CAircraftSituationListModel(this));
this->setMenu(MenuDefault);
}
void CAircraftSituationView::setWithMenuRequestElevation(bool enable)
{
m_withMenuRequestElevation = enable;
this->setSingleSelection();
}
void CAircraftSituationView::customMenu(CMenuActions &menuActions)
{
if (m_withMenuRequestElevation && this->hasSingleSelectedRow())
{
menuActions.addAction(CIcons::geoPosition16(), "Request elevation", CMenuAction::pathClientSimulation(), { this, &CAircraftSituationView::emitRequestElevationForSituation });
}
}
void CAircraftSituationView::emitRequestElevationForSituation()
{
if (!this->hasSingleSelectedRow()) { return; }
const CAircraftSituation situation = this->selectedObject();
emit this->requestElevation(situation);
}
} // ns
} // ns