mirror of
https://github.com/swift-project/pilotclient.git
synced 2026-04-10 22:15:34 +08:00
Ref T668, CG override per "dot" command
This commit is contained in:
@@ -85,10 +85,37 @@ namespace BlackMisc
|
||||
if (modelString.isEmpty()) { return false; }
|
||||
QWriteLocker l(&m_lockCG);
|
||||
if (!m_enableCG) { return false; }
|
||||
if (cg.isNull())
|
||||
{
|
||||
m_cgsPerModel.remove(modelString.toUpper());
|
||||
return false;
|
||||
}
|
||||
|
||||
m_cgsPerModel[modelString.toUpper()] = cg;
|
||||
return true;
|
||||
}
|
||||
|
||||
bool ISimulationEnvironmentProvider::insertCGForModelStringOverridden(const CLength &cg, const QString &modelString)
|
||||
{
|
||||
if (modelString.isEmpty()) { return false; }
|
||||
QWriteLocker l(&m_lockCG);
|
||||
if (cg.isNull())
|
||||
{
|
||||
m_cgsPerModelOverridden.remove(modelString.toUpper());
|
||||
return false;
|
||||
}
|
||||
m_cgsPerModelOverridden[modelString.toUpper()] = cg;
|
||||
return true;
|
||||
}
|
||||
|
||||
CLength ISimulationEnvironmentProvider::overriddenCGorDefault(const CLength &cg, const QString &modelString) const
|
||||
{
|
||||
if (modelString.isEmpty()) { return cg; }
|
||||
QReadLocker l(&m_lockCG);
|
||||
if (!m_cgsPerModelOverridden.contains(modelString.toUpper())) { return cg; }
|
||||
return m_cgsPerModelOverridden[modelString.toUpper()];
|
||||
}
|
||||
|
||||
int ISimulationEnvironmentProvider::removeCG(const CCallsign &cs)
|
||||
{
|
||||
QWriteLocker l(&m_lockCG);
|
||||
@@ -258,6 +285,7 @@ namespace BlackMisc
|
||||
if (modelString.isEmpty()) { return CLength::null(); }
|
||||
const QString ms = modelString.toUpper();
|
||||
QReadLocker l(&m_lockCG);
|
||||
if (m_cgsPerModelOverridden.contains(ms)) { return m_cgsPerModelOverridden.value(ms); }
|
||||
if (!m_enableCG || !m_cgsPerModel.contains(ms)) { return CLength::null(); }
|
||||
return m_cgsPerModel.value(ms);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user