Ref T764, display flight plan of other aircraft

This commit is contained in:
Klaus Basan
2019-12-15 23:07:06 +01:00
committed by Mat Sutcliffe
parent ceebcc3e1b
commit 10a6b06a59
8 changed files with 301 additions and 31 deletions

View File

@@ -359,20 +359,36 @@ namespace BlackMisc
}
QString CFlightPlan::convertToQString(bool i18n) const
{
return this->buildString(i18n, " ");
}
QString CFlightPlan::asHTML(bool i18n) const
{
return this->buildString(i18n, "<br>");
}
QString CFlightPlan::buildString(bool i18n, const QString &separator) const
{
const QString s = m_callsign.toQString(i18n)
% u' ' % m_equipmentSuffix
% u' ' % m_originAirportIcao.toQString(i18n)
% u' ' % m_destinationAirportIcao.toQString(i18n)
% u' ' % m_alternateAirportIcao.toQString(i18n)
% u' ' % m_takeoffTimePlanned.toString("ddhhmm")
% u' ' % m_takeoffTimeActual.toString("ddhhmm")
% u' ' % m_enrouteTime.toQString(i18n)
% u' ' % m_fuelTime.toQString(i18n)
% u' ' % m_cruiseAltitude.toQString(i18n)
% u' ' % m_cruiseTrueAirspeed.toQString(i18n)
% u' ' % m_route
% u' ' % this->getRemarks();
% u" aircraft: " % m_equipmentSuffix
% separator
% u"origin: " % m_originAirportIcao.toQString(i18n)
% u" destination: " % m_destinationAirportIcao.toQString(i18n)
% u" alternate: " % m_alternateAirportIcao.toQString(i18n)
% separator
% u"takeoff planed: " % m_takeoffTimePlanned.toString("ddhhmm")
% u" actual: " % m_takeoffTimeActual.toString("ddhhmm")
% separator
% u"enroute time: " % m_enrouteTime.toQString(i18n)
% u" fuel time:" % m_fuelTime.toQString(i18n)
% separator
% u"altitude: " % m_cruiseAltitude.toQString(i18n)
% u" speed: " % m_cruiseTrueAirspeed.toQString(i18n)
% separator
% u"route: " % m_route
% separator
% u"remarks: " % this->getRemarks();
return s;
}
@@ -615,7 +631,7 @@ namespace BlackMisc
catch (const CJsonException &ex)
{
const CStatusMessage m = ex.toStatusMessage(&fp, QString("Parsing flight plan from failed."));
Q_UNUSED(m);
Q_UNUSED(m)
}
return fp;
}

View File

@@ -185,7 +185,6 @@ namespace BlackMisc
static constexpr int MaxRouteLength = 512; //!< Max.route length
static constexpr int MaxRouteAndRemarksLength = 624; //!< Max.length for Route and Remarks
//! Default constructor
CFlightPlan();
@@ -385,6 +384,9 @@ namespace BlackMisc
//! \copydoc BlackMisc::Mixin::String::toQString()
QString convertToQString(bool i18n = false) const;
//! As HTML
QString asHTML(bool i18n = false) const;
//! From vPilot data
static CFlightPlan fromVPilotFormat(const QString &vPilotData);
@@ -456,24 +458,27 @@ namespace BlackMisc
static const QStringList &prefixCodes();
private:
CCallsign m_callsign; //!< aircraft callsign
CAircraftIcaoCode m_aircraftIcao; //!< Aircraft ICAO code
QString m_prefix; //!< e.g. "T/A320/F" -> the "T"
QString m_equipmentSuffix; //!< e.g. "T/A320/F" -> the "F"
CAirportIcaoCode m_originAirportIcao;
CAirportIcaoCode m_destinationAirportIcao;
CAirportIcaoCode m_alternateAirportIcao;
QDateTime m_takeoffTimePlanned;
QDateTime m_takeoffTimeActual;
CCallsign m_callsign; //!< aircraft callsign
CAircraftIcaoCode m_aircraftIcao; //!< Aircraft ICAO code
QString m_prefix; //!< e.g. "T/A320/F" -> the "T"
QString m_equipmentSuffix; //!< e.g. "T/A320/F" -> the "F"
CAirportIcaoCode m_originAirportIcao;
CAirportIcaoCode m_destinationAirportIcao;
CAirportIcaoCode m_alternateAirportIcao;
QDateTime m_takeoffTimePlanned;
QDateTime m_takeoffTimeActual;
PhysicalQuantities::CTime m_enrouteTime;
PhysicalQuantities::CTime m_fuelTime;
CAltitude m_cruiseAltitude;
QString m_cruiseAltitudeString;
QString m_cruiseAltitudeString;
PhysicalQuantities::CSpeed m_cruiseTrueAirspeed;
FlightRules m_flightRules;
QString m_route;
FlightRules m_flightRules;
QString m_route;
CFlightPlanRemarks m_remarks;
//! As string
QString buildString(bool i18n = false, const QString &separator = " ") const;
BLACK_METACLASS(
CFlightPlan,
// callsign will be current flight