feat: Add wake turbulence category enum

This commit is contained in:
Lars Toenning
2023-12-18 22:55:08 +01:00
parent fae215ba26
commit 1f4f60d793
13 changed files with 205 additions and 29 deletions

View File

@@ -225,7 +225,7 @@ namespace BlackGui::Components
if (aircraft.getAircraftIcaoCode().isLoadedFromDb() && aircraft.getAircraftIcaoCode().hasValidWtc())
{
const QString wtc = aircraft.getAircraftIcaoCode().getWtc().toUpper();
const QString wtc = toSingleLetterCode(aircraft.getAircraftIcaoCode().getWtc());
const bool heavyFlag = (wtc.startsWith("H", Qt::CaseInsensitive) || wtc.startsWith("S", Qt::CaseInsensitive));
ui->cb_Heavy->setChecked(heavyFlag);
}
@@ -825,7 +825,7 @@ namespace BlackGui::Components
QPointer<CFlightPlanComponent> myself(this);
QTimer::singleShot(25, this, [=] {
if (!myself || !sGui || sGui->isShuttingDown()) { return; }
const bool heavy = icao.getWtc().startsWith("H");
const bool heavy = icao.getWtc() == BlackMisc::Aviation::WakeTurbulenceCategory::HEAVY;
ui->cb_Heavy->setChecked(heavy);
if (heavy) { ui->cb_Tcas->setChecked(false); }
this->buildPrefixIcaoSuffix();

View File

@@ -266,7 +266,7 @@ namespace BlackGui::Components
CAircraftModel CModelMatcherComponent::defaultModel() const
{
// can somehow dynamilcally determine the models
const CAircraftIcaoCode icaoAircraft("B737", "L2J", "FooBar", "Dummy", "M", false, false, false, 1);
const CAircraftIcaoCode icaoAircraft("B737", "L2J", "FooBar", "Dummy", CWakeTurbulenceCategory::MEDIUM, false, false, false, 1);
const CAirlineIcaoCode icaoAirline("Foo", "FooBar airlines", { "DE", "Germany" }, "FOO", true, true);
const CLivery livery(CLivery::getStandardCode(icaoAirline), icaoAirline, "Standard Foo airlines", "red", "blue", false);
CAircraftModel model("default model", CAircraftModel::TypeOwnSimulatorModel, "dummy model", icaoAircraft, livery);

View File

@@ -73,7 +73,7 @@ namespace BlackGui::Editors
ui->combined_TypeSelector->setCombinedType(icao.getCombinedType());
QString rank(icao.getRankString());
QString wtc(icao.getWtc());
QString wtc(icao.getWtc().toQString());
CGuiUtility::setComboBoxValueByStartingString(ui->cb_Rank, rank, "unspecified");
CGuiUtility::setComboBoxValueByStartingString(ui->cb_Wtc, wtc, "unspecified");
@@ -134,7 +134,7 @@ namespace BlackGui::Editors
bool realWorld = ui->cb_RealWorld->isChecked();
icao.setManufacturer(manufacturer);
icao.setModelDescription(modelDescription);
icao.setWtc(wtc);
icao.setWtc(wtc.isEmpty() ? CWakeTurbulenceCategory() : CWakeTurbulenceCategory(wtc.at(0)));
icao.setCodeFlags(military, legacy, realWorld);
icao.setRank(rank);
icao.setCombinedType(combined);