mirror of
https://github.com/swift-project/pilotclient.git
synced 2026-04-05 01:05:34 +08:00
refs #614, refs #638 removed redundant m_livery from CSimulatedAircraft and improved convertTOQString
* removed some leftovers in simulated aircraft such as virtual functions * use livery from model instead of keeping a redundant copy
This commit is contained in:
@@ -44,10 +44,12 @@ namespace BlackMisc
|
||||
QString CAircraftModel::convertToQString(bool i18n) const
|
||||
{
|
||||
QString s = this->m_modelString;
|
||||
if (!s.isEmpty()) { s += " tpye: "; }
|
||||
if (!s.isEmpty()) { s += " type: "; }
|
||||
s += this->getModelTypeAsString();
|
||||
s += ' ';
|
||||
s += this->m_aircraftIcao.toQString(i18n);
|
||||
s += this->getAircraftIcaoCode().toQString(i18n);
|
||||
s += ' ';
|
||||
s += this->m_livery.toQString(i18n);
|
||||
if (!this->m_fileName.isEmpty())
|
||||
{
|
||||
s += ' ';
|
||||
@@ -417,6 +419,7 @@ namespace BlackMisc
|
||||
case TypeModelMatchingDefaultModel: return "map. default";
|
||||
case TypeOwnSimulatorModel: return "own simulator";
|
||||
case TypeManuallySet: return "set";
|
||||
case TypeFsdData: return "FSD";
|
||||
case TypeUnknown:
|
||||
default: return "unknown";
|
||||
}
|
||||
|
||||
@@ -28,6 +28,7 @@ namespace BlackMisc
|
||||
|
||||
CSimulatedAircraft::CSimulatedAircraft(const CAircraftModel &model) : m_model(model)
|
||||
{
|
||||
this->setCallsign(model.getCallsign());
|
||||
init();
|
||||
}
|
||||
|
||||
@@ -43,7 +44,6 @@ namespace BlackMisc
|
||||
// set get/set thing here updates the redundant data (e.g. livery / model.livery)
|
||||
this->setCallsign(this->getCallsign());
|
||||
this->setIcaoCodes(this->getAircraftIcaoCode(), this->getAirlineIcaoCode());
|
||||
this->setLivery(this->getLivery());
|
||||
this->setModel(this->getModel());
|
||||
}
|
||||
|
||||
@@ -108,13 +108,20 @@ namespace BlackMisc
|
||||
|
||||
bool CSimulatedAircraft::setIcaoCodes(const CAircraftIcaoCode &aircraftIcaoCode, const CAirlineIcaoCode &airlineIcaoCode)
|
||||
{
|
||||
bool c = this->m_model.setAircraftIcaoCode(aircraftIcaoCode);
|
||||
return m_livery.setAirlineIcaoCode(airlineIcaoCode) || c;
|
||||
//! \note to be compatible with old version I still allow to set airline here but I should actually set a livery
|
||||
|
||||
if (this->getLivery().getAirlineIcaoCode() != airlineIcaoCode)
|
||||
{
|
||||
// create a dummy livery for given ICAO code
|
||||
CLivery newLivery(CLivery::getStandardCode(airlineIcaoCode), airlineIcaoCode, "Standard auto generated");
|
||||
this->m_model.setLivery(newLivery);
|
||||
}
|
||||
return this->m_model.setAircraftIcaoCode(aircraftIcaoCode);
|
||||
}
|
||||
|
||||
const CAirlineIcaoCode &CSimulatedAircraft::getAirlineIcaoCode() const
|
||||
{
|
||||
return m_livery.getAirlineIcaoCode();
|
||||
return this->m_model.getAirlineIcaoCode();
|
||||
}
|
||||
|
||||
const QString &CSimulatedAircraft::getAirlineIcaoCodeDesignator() const
|
||||
@@ -134,7 +141,7 @@ namespace BlackMisc
|
||||
|
||||
bool CSimulatedAircraft::hasAircraftAndAirlineDesignator() const
|
||||
{
|
||||
return this->getAircraftIcaoCode().hasDesignator() && m_livery.hasValidAirlineDesignator();
|
||||
return this->getAircraftIcaoCode().hasDesignator() && this->m_model.getLivery().hasValidAirlineDesignator();
|
||||
}
|
||||
|
||||
const CComSystem CSimulatedAircraft::getComSystem(CComSystem::ComUnit unit) const
|
||||
@@ -289,7 +296,7 @@ namespace BlackMisc
|
||||
case IndexAircraftIcaoCode:
|
||||
return this->getAircraftIcaoCode().propertyByIndex(index.copyFrontRemoved());
|
||||
case IndexLivery:
|
||||
return this->m_livery.propertyByIndex(index.copyFrontRemoved());
|
||||
return this->getLivery().propertyByIndex(index.copyFrontRemoved());
|
||||
case IndexParts:
|
||||
return this->m_parts.propertyByIndex(index.copyFrontRemoved());
|
||||
case IndexIsVtol:
|
||||
@@ -327,13 +334,6 @@ namespace BlackMisc
|
||||
case IndexTransponder:
|
||||
this->m_transponder.setPropertyByIndex(variant, index.copyFrontRemoved());
|
||||
break;
|
||||
case IndexAircraftIcaoCode:
|
||||
// intentionally not removing front, delegating
|
||||
this->m_livery.setPropertyByIndex(variant, index);
|
||||
break;
|
||||
case IndexLivery:
|
||||
this->m_livery.setPropertyByIndex(variant, index.copyFrontRemoved());
|
||||
break;
|
||||
case IndexSituation:
|
||||
this->m_situation.setPropertyByIndex(variant, index.copyFrontRemoved());
|
||||
break;
|
||||
@@ -356,6 +356,9 @@ namespace BlackMisc
|
||||
case IndexFastPositionUpdates:
|
||||
this->m_fastPositionUpdates = variant.toBool();
|
||||
break;
|
||||
case IndexLivery:
|
||||
Q_ASSERT_X(false, Q_FUNC_INFO, "Unsupported");
|
||||
break;
|
||||
default:
|
||||
CValueObject::setPropertyByIndex(variant, index);
|
||||
break;
|
||||
@@ -382,7 +385,7 @@ namespace BlackMisc
|
||||
case IndexTransponder:
|
||||
return Compare::compare(m_transponder.getTransponderCode(), compareValue.getTransponder().getTransponderCode());
|
||||
case IndexLivery:
|
||||
return this->m_livery.comparePropertyByIndex(compareValue.getLivery(), index.copyFrontRemoved());
|
||||
return this->getLivery().comparePropertyByIndex(compareValue.getLivery(), index.copyFrontRemoved());
|
||||
case IndexParts:
|
||||
return this->m_parts.comparePropertyByIndex(compareValue.getParts(), index.copyFrontRemoved());
|
||||
case IndexModel:
|
||||
|
||||
@@ -106,10 +106,11 @@ namespace BlackMisc
|
||||
bool setAircraftIcaoCode(const BlackMisc::Aviation::CAircraftIcaoCode &aircraftIcaoCode) { return m_model.setAircraftIcaoCode(aircraftIcaoCode);}
|
||||
|
||||
//! Set ICAO info
|
||||
//! \deprecated
|
||||
bool setIcaoCodes(const BlackMisc::Aviation::CAircraftIcaoCode &aircraftIcaoCode, const BlackMisc::Aviation::CAirlineIcaoCode &airlineIcaoCode);
|
||||
|
||||
//! Get livery
|
||||
const BlackMisc::Aviation::CLivery &getLivery() const { return m_livery; }
|
||||
const BlackMisc::Aviation::CLivery &getLivery() const { return m_model.getLivery(); }
|
||||
|
||||
//! Airline ICAO code if any
|
||||
const BlackMisc::Aviation::CAirlineIcaoCode &getAirlineIcaoCode() const;
|
||||
@@ -117,11 +118,8 @@ namespace BlackMisc
|
||||
//! Airline ICAO code designator
|
||||
const QString &getAirlineIcaoCodeDesignator() const;
|
||||
|
||||
//! Livery
|
||||
virtual void setLivery(const BlackMisc::Aviation::CLivery &livery) { this->m_livery = livery; }
|
||||
|
||||
//! Set aircraft ICAO designator
|
||||
virtual void setAircraftIcaoDesignator(const QString &designator);
|
||||
void setAircraftIcaoDesignator(const QString &designator);
|
||||
|
||||
//! Has valid realname?
|
||||
bool hasValidRealName() const { return this->m_pilot.hasValidRealName(); }
|
||||
@@ -133,7 +131,7 @@ namespace BlackMisc
|
||||
bool hasAircraftDesignator() const;
|
||||
|
||||
//! Valid airline designator
|
||||
bool hasAirlineDesignator() const { return this->m_livery.hasValidAirlineDesignator(); }
|
||||
bool hasAirlineDesignator() const { return this->m_model.getLivery().hasValidAirlineDesignator(); }
|
||||
|
||||
//! Valid designators?
|
||||
bool hasAircraftAndAirlineDesignator() const;
|
||||
@@ -366,9 +364,8 @@ namespace BlackMisc
|
||||
BlackMisc::Aviation::CTransponder m_transponder;
|
||||
BlackMisc::Aviation::CAircraftParts m_parts;
|
||||
BlackMisc::Aviation::CSelcal m_selcal;
|
||||
BlackMisc::Aviation::CLivery m_livery;
|
||||
BlackMisc::Simulation::CAircraftModel m_model;
|
||||
bool m_enabled = true; //!< to be displayed in sim
|
||||
bool m_enabled = true; //!< to be displayed in simulator
|
||||
bool m_rendered = false; //!< really shown in simulator
|
||||
bool m_partsSynchronized = false; //!< sync.parts
|
||||
bool m_fastPositionUpdates = false; //!<use fast position updates
|
||||
@@ -385,7 +382,6 @@ namespace BlackMisc
|
||||
BLACK_METAMEMBER(com2system),
|
||||
BLACK_METAMEMBER(transponder),
|
||||
BLACK_METAMEMBER(parts),
|
||||
BLACK_METAMEMBER(livery),
|
||||
BLACK_METAMEMBER(distanceToOwnAircraft),
|
||||
BLACK_METAMEMBER(bearingToOwnAircraft),
|
||||
BLACK_METAMEMBER(model),
|
||||
|
||||
Reference in New Issue
Block a user