refs #268 slots in XBus::CService to get the model strings

This commit is contained in:
Mathew Sutcliffe
2014-06-15 14:39:28 +01:00
parent df67c249df
commit 271c973f6e
4 changed files with 62 additions and 3 deletions

View File

@@ -19,7 +19,21 @@ namespace XBus
char filename[256];
char path[512];
XPLMGetNthAircraftModel(XPLM_USER_AIRCRAFT, filename, path);
emit aircraftModelChanged(path, filename, m_liveryPath.get().c_str());
emit aircraftModelChanged(path, filename, getAircraftLivery(), getAircraftIcaoCode());
}
QString CService::getAircraftModelPath() const
{
char path[512];
XPLMGetNthAircraftModel(XPLM_USER_AIRCRAFT, nullptr, path);
return path;
}
QString CService::getAircraftModelFilename() const
{
char filename[256];
XPLMGetNthAircraftModel(XPLM_USER_AIRCRAFT, filename, nullptr);
return filename;
}
int CService::getXPlaneVersionMajor() const

View File

@@ -50,9 +50,21 @@ namespace XBus
signals:
//! Emitted when the model or livery changes.
void aircraftModelChanged(const QString &path, const QString &filename, const QString &livery);
void aircraftModelChanged(const QString &path, const QString &filename, const QString &livery, const QString &icao);
public slots:
//! Get full path to current aircraft model
QString getAircraftModelPath() const;
//! Get base filename of current aircraft model
QString getAircraftModelFilename() const;
//! Get path to current aircraft livery
QString getAircraftLivery() const { return m_liveryPath.get().c_str(); }
//! Get the ICAO code of the current aircraft model
QString getAircraftIcaoCode() const { return m_icao.get().c_str(); }
//! Get major version number
int getXPlaneVersionMajor() const;
@@ -97,6 +109,7 @@ namespace XBus
private:
StringDataRef<xplane::data::sim::aircraft::view::acf_livery_path> m_liveryPath;
StringDataRef<xplane::data::sim::aircraft::view::acf_ICAO> m_icao;
DataRef<xplane::data::sim::flightmodel::position::latitude> m_latitude;
DataRef<xplane::data::sim::flightmodel::position::longitude> m_longitude;
DataRef<xplane::data::sim::flightmodel::position::elevation> m_elevation;