mirror of
https://github.com/swift-project/pilotclient.git
synced 2026-04-18 03:15:34 +08:00
refs #618, unified naming in model list + minor adjustments
This commit is contained in:
@@ -63,7 +63,8 @@ namespace BlackGui
|
|||||||
case OwnSimulatorModelMapping:
|
case OwnSimulatorModelMapping:
|
||||||
this->m_columns.addColumn(CColumn::standardString("model", CAircraftModel::IndexModelString));
|
this->m_columns.addColumn(CColumn::standardString("model", CAircraftModel::IndexModelString));
|
||||||
this->m_columns.addColumn(CColumn("mode", "model mode(include, exclude)", CAircraftModel::IndexModelModeAsIcon, new CPixmapFormatter()));
|
this->m_columns.addColumn(CColumn("mode", "model mode(include, exclude)", CAircraftModel::IndexModelModeAsIcon, new CPixmapFormatter()));
|
||||||
this->m_columns.addColumn(CColumn::standardValueObject("call", "callsign", CAircraftModel::IndexCallsign));
|
// this->m_columns.addColumn(CColumn::standardValueObject("call", "callsign", CAircraftModel::IndexCallsign));
|
||||||
|
this->m_columns.addColumn(CColumn::standardString("dist.", "distributor", { CAircraftModel::IndexDistributor, CDistributor::IndexDbStringKey}));
|
||||||
this->m_columns.addColumn(CColumn::standardString("ac", "aircraft ICAO", { CAircraftModel::IndexAircraftIcaoCode, CAircraftIcaoCode::IndexAircraftDesignator}));
|
this->m_columns.addColumn(CColumn::standardString("ac", "aircraft ICAO", { CAircraftModel::IndexAircraftIcaoCode, CAircraftIcaoCode::IndexAircraftDesignator}));
|
||||||
this->m_columns.addColumn(CColumn::standardString("al", "airline ICAO", { CAircraftModel::IndexLivery, CLivery::IndexAirlineIcaoCode, CAirlineIcaoCode::IndexAirlineDesignator}));
|
this->m_columns.addColumn(CColumn::standardString("al", "airline ICAO", { CAircraftModel::IndexLivery, CLivery::IndexAirlineIcaoCode, CAirlineIcaoCode::IndexAirlineDesignator}));
|
||||||
// this->m_columns.addColumn(CColumn::standardString("ct", "combined type", { CAircraftModel::IndexIcao, CAircraftIcaoData::IndexCombinedAircraftType}));
|
// this->m_columns.addColumn(CColumn::standardString("ct", "combined type", { CAircraftModel::IndexIcao, CAircraftIcaoData::IndexCombinedAircraftType}));
|
||||||
|
|||||||
@@ -51,7 +51,8 @@ namespace BlackMisc
|
|||||||
{
|
{
|
||||||
Undefined = 0,
|
Undefined = 0,
|
||||||
Include = 1 << 0,
|
Include = 1 << 0,
|
||||||
Exclude = 1 << 1
|
Exclude = 1 << 1,
|
||||||
|
All = Include | Exclude
|
||||||
};
|
};
|
||||||
|
|
||||||
//! Supposed to be used only in filter operations
|
//! Supposed to be used only in filter operations
|
||||||
|
|||||||
@@ -102,7 +102,7 @@ namespace BlackMisc
|
|||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
CAircraftModelList CAircraftModelList::withAircraftDesignator() const
|
CAircraftModelList CAircraftModelList::findWithAircraftDesignator() const
|
||||||
{
|
{
|
||||||
return this->findBy([ = ](const CAircraftModel & model)
|
return this->findBy([ = ](const CAircraftModel & model)
|
||||||
{
|
{
|
||||||
@@ -110,7 +110,7 @@ namespace BlackMisc
|
|||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
CAircraftModelList CAircraftModelList::withAircraftDesignator(const QStringList &designators) const
|
CAircraftModelList CAircraftModelList::findWithAircraftDesignator(const QStringList &designators) const
|
||||||
{
|
{
|
||||||
if (designators.isEmpty()) { return CAircraftModelList(); }
|
if (designators.isEmpty()) { return CAircraftModelList(); }
|
||||||
return this->findBy([ = ](const CAircraftModel & model)
|
return this->findBy([ = ](const CAircraftModel & model)
|
||||||
@@ -119,7 +119,7 @@ namespace BlackMisc
|
|||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
CAircraftModelList CAircraftModelList::withKnownAircraftDesignator() const
|
CAircraftModelList CAircraftModelList::findWithKnownAircraftDesignator() const
|
||||||
{
|
{
|
||||||
return this->findBy([ = ](const CAircraftModel & model)
|
return this->findBy([ = ](const CAircraftModel & model)
|
||||||
{
|
{
|
||||||
@@ -127,7 +127,16 @@ namespace BlackMisc
|
|||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
CAircraftModelList CAircraftModelList::byDistributor(const CDistributorList &distributors) const
|
CAircraftModelList CAircraftModelList::matchesSimulator(const CSimulatorInfo &simulator) const
|
||||||
|
{
|
||||||
|
const CSimulatorInfo::Simulator s = simulator.getSimulator();
|
||||||
|
return this->findBy([ = ](const CAircraftModel & model)
|
||||||
|
{
|
||||||
|
return (s & model.getSimulatorInfo().getSimulator()) > 0;
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
CAircraftModelList CAircraftModelList::findByDistributors(const CDistributorList &distributors) const
|
||||||
{
|
{
|
||||||
if (distributors.isEmpty()) { return CAircraftModelList(); }
|
if (distributors.isEmpty()) { return CAircraftModelList(); }
|
||||||
return this->findBy([ = ](const CAircraftModel & model)
|
return this->findBy([ = ](const CAircraftModel & model)
|
||||||
@@ -136,12 +145,40 @@ namespace BlackMisc
|
|||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
void CAircraftModelList::setSimulatorInfo(const CSimulatorInfo &info)
|
int CAircraftModelList::setSimulatorInfo(const CSimulatorInfo &info)
|
||||||
{
|
{
|
||||||
|
int c = 0;
|
||||||
|
const CSimulatorInfo::Simulator s = info.getSimulator();
|
||||||
for (CAircraftModel &model : (*this))
|
for (CAircraftModel &model : (*this))
|
||||||
{
|
{
|
||||||
|
if (model.getSimulatorInfo().getSimulator() == s) { continue; }
|
||||||
model.setSimulatorInfo(info);
|
model.setSimulatorInfo(info);
|
||||||
|
c++;
|
||||||
}
|
}
|
||||||
|
return c;
|
||||||
|
}
|
||||||
|
|
||||||
|
CSimulatorInfo CAircraftModelList::simulatorsSupported() const
|
||||||
|
{
|
||||||
|
CSimulatorInfo::Simulator s = CSimulatorInfo::None;
|
||||||
|
for (const CAircraftModel &model : (*this))
|
||||||
|
{
|
||||||
|
s |= model.getSimulatorInfo().getSimulator();
|
||||||
|
if (s == CSimulatorInfo::All) { break; }
|
||||||
|
}
|
||||||
|
return CSimulatorInfo(s);
|
||||||
|
}
|
||||||
|
|
||||||
|
int CAircraftModelList::setModelMode(CAircraftModel::ModelMode mode)
|
||||||
|
{
|
||||||
|
int c = 0;
|
||||||
|
for (CAircraftModel &model : (*this))
|
||||||
|
{
|
||||||
|
if (model.getModelMode() == mode) { continue; }
|
||||||
|
model.setModelMode(mode);
|
||||||
|
c++;
|
||||||
|
}
|
||||||
|
return c;
|
||||||
}
|
}
|
||||||
|
|
||||||
int CAircraftModelList::keepModelsWithString(const QStringList &modelStrings, Qt::CaseSensitivity sensitivity)
|
int CAircraftModelList::keepModelsWithString(const QStringList &modelStrings, Qt::CaseSensitivity sensitivity)
|
||||||
@@ -244,7 +281,7 @@ namespace BlackMisc
|
|||||||
return validateForPublishing(invalidModels);
|
return validateForPublishing(invalidModels);
|
||||||
}
|
}
|
||||||
|
|
||||||
CStatusMessageList CAircraftModelList::validateForPublishing(CAircraftModelList &invalidModels) const
|
CStatusMessageList CAircraftModelList::validateForPublishing(CAircraftModelList &validateModels) const
|
||||||
{
|
{
|
||||||
if (this->isEmpty()) { return CStatusMessageList(); }
|
if (this->isEmpty()) { return CStatusMessageList(); }
|
||||||
CStatusMessageList msgs;
|
CStatusMessageList msgs;
|
||||||
@@ -271,7 +308,7 @@ namespace BlackMisc
|
|||||||
singleMsg.prependMessage(model.getModelString() + ": ");
|
singleMsg.prependMessage(model.getModelString() + ": ");
|
||||||
}
|
}
|
||||||
msgs.push_back(singleMsg);
|
msgs.push_back(singleMsg);
|
||||||
invalidModels.push_back(model);
|
validateModels.push_back(model);
|
||||||
}
|
}
|
||||||
return msgs;
|
return msgs;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -69,20 +69,29 @@ namespace BlackMisc
|
|||||||
//! With file name
|
//! With file name
|
||||||
CAircraftModelList findWithFileName() const;
|
CAircraftModelList findWithFileName() const;
|
||||||
|
|
||||||
|
//! All models from given distributors
|
||||||
|
CAircraftModelList findByDistributors(const CDistributorList &distributors) const;
|
||||||
|
|
||||||
//! Models with aircraft ICAO code set
|
//! Models with aircraft ICAO code set
|
||||||
CAircraftModelList withAircraftDesignator() const;
|
CAircraftModelList findWithAircraftDesignator() const;
|
||||||
|
|
||||||
//! Models with aircraft ICAO code from list
|
//! Models with aircraft ICAO code from list
|
||||||
CAircraftModelList withAircraftDesignator(const QStringList &designators) const;
|
CAircraftModelList findWithAircraftDesignator(const QStringList &designators) const;
|
||||||
|
|
||||||
//! Models with a known aircraft ICAO code set
|
//! Models with a known aircraft ICAO code set
|
||||||
CAircraftModelList withKnownAircraftDesignator() const;
|
CAircraftModelList findWithKnownAircraftDesignator() const;
|
||||||
|
|
||||||
//! All models from given distributors
|
//! Find for given simulator
|
||||||
CAircraftModelList byDistributor(const CDistributorList &distributors) const;
|
CAircraftModelList matchesSimulator(const BlackMisc::Simulation::CSimulatorInfo &simulator) const;
|
||||||
|
|
||||||
//! Set simulator for all elements
|
//! Set simulator for all elements
|
||||||
void setSimulatorInfo(const BlackMisc::Simulation::CSimulatorInfo &info);
|
int setSimulatorInfo(const BlackMisc::Simulation::CSimulatorInfo &info);
|
||||||
|
|
||||||
|
//! Which simulators are supported in that model list
|
||||||
|
CSimulatorInfo simulatorsSupported() const;
|
||||||
|
|
||||||
|
//! Set mode for all elements
|
||||||
|
int setModelMode(BlackMisc::Simulation::CAircraftModel::ModelMode mode);
|
||||||
|
|
||||||
//! Keep only those models with given model strings
|
//! Keep only those models with given model strings
|
||||||
//! \return number of elements removed
|
//! \return number of elements removed
|
||||||
@@ -112,7 +121,7 @@ namespace BlackMisc
|
|||||||
CStatusMessageList validateForPublishing() const;
|
CStatusMessageList validateForPublishing() const;
|
||||||
|
|
||||||
//! Validate for publishing
|
//! Validate for publishing
|
||||||
CStatusMessageList validateForPublishing(CAircraftModelList &invalidModels) const;
|
CStatusMessageList validateForPublishing(CAircraftModelList &validateModels) const;
|
||||||
|
|
||||||
//! To database JSON
|
//! To database JSON
|
||||||
QJsonArray toDatabaseJson() const;
|
QJsonArray toDatabaseJson() const;
|
||||||
|
|||||||
Reference in New Issue
Block a user