Ref T379, use own "toFsxChar" conversion so we can adjust it

This commit is contained in:
Klaus Basan
2018-09-30 23:28:35 +02:00
parent 756ee18410
commit e0594271f1
2 changed files with 14 additions and 4 deletions

View File

@@ -1409,10 +1409,11 @@ namespace BlackSimPlugin
const QString modelString(newRemoteAircraft.getModelString()); const QString modelString(newRemoteAircraft.getModelString());
if (this->showDebugLogMessage()) { this->debugLogMessage(Q_FUNC_INFO, QString("CS: '%1' model: '%2' request: %3, init pos: %4").arg(callsign.toQString(), modelString).arg(requestId).arg(fsxPositionToString(initialPosition))); } if (this->showDebugLogMessage()) { this->debugLogMessage(Q_FUNC_INFO, QString("CS: '%1' model: '%2' request: %3, init pos: %4").arg(callsign.toQString(), modelString).arg(requestId).arg(fsxPositionToString(initialPosition))); }
const QByteArray modelStringBa = toFsxChar(modelString);
const QByteArray csBa = toFsxChar(callsign.toQString().left(12));
const HRESULT hr = probe ? const HRESULT hr = probe ?
SimConnect_AICreateSimulatedObject(m_hSimConnect, qPrintable(modelString), initialPosition, requestId) : SimConnect_AICreateSimulatedObject(m_hSimConnect, modelStringBa.constData(), initialPosition, requestId) :
SimConnect_AICreateNonATCAircraft(m_hSimConnect, qPrintable(modelString), qPrintable(callsign.toQString().left(12)), initialPosition, requestId); SimConnect_AICreateNonATCAircraft(m_hSimConnect, modelStringBa.constData(), csBa.constData(), initialPosition, requestId);
// const HRESULT hr = SimConnect_AICreateNonATCAircraft(m_hSimConnect, qPrintable(modelString), qPrintable(callsign.toQString().left(12)), initialPosition, requestId);
if (isFailure(hr)) if (isFailure(hr))
{ {
@@ -1987,9 +1988,10 @@ namespace BlackSimPlugin
auto glob = weatherGrid.frontOrDefault(); auto glob = weatherGrid.frontOrDefault();
glob.setIdentifier("GLOB"); glob.setIdentifier("GLOB");
const QString metar = CSimConnectUtilities::convertToSimConnectMetar(glob); const QString metar = CSimConnectUtilities::convertToSimConnectMetar(glob);
const QByteArray metarBa = toFsxChar(metar);
SimConnect_WeatherSetModeCustom(m_hSimConnect); SimConnect_WeatherSetModeCustom(m_hSimConnect);
SimConnect_WeatherSetModeGlobal(m_hSimConnect); SimConnect_WeatherSetModeGlobal(m_hSimConnect);
SimConnect_WeatherSetObservation(m_hSimConnect, 0, qPrintable(metar)); SimConnect_WeatherSetObservation(m_hSimConnect, 0, metarBa.constData());
} }
bool CSimulatorFsxCommon::requestPositionDataForSimObject(const CSimConnectObject &simObject, SIMCONNECT_PERIOD period) bool CSimulatorFsxCommon::requestPositionDataForSimObject(const CSimConnectObject &simObject, SIMCONNECT_PERIOD period)
@@ -2194,6 +2196,11 @@ namespace BlackSimPlugin
return hr; return hr;
} }
QByteArray CSimulatorFsxCommon::toFsxChar(const QString &string)
{
return string.toLatin1();
}
TraceFsxSendId CSimulatorFsxCommon::getSendIdTrace(DWORD sendId) const TraceFsxSendId CSimulatorFsxCommon::getSendIdTrace(DWORD sendId) const
{ {
for (const TraceFsxSendId &trace : m_sendIdTraces) for (const TraceFsxSendId &trace : m_sendIdTraces)

View File

@@ -260,6 +260,9 @@ namespace BlackSimPlugin
//! Trace if required, log errors //! Trace if required, log errors
HRESULT logAndTraceSendId(HRESULT hr, bool traceSendId, const CSimConnectObject &simObject, const QString &warningMsg, const QString &functionName, const QString &functionDetails = {}); HRESULT logAndTraceSendId(HRESULT hr, bool traceSendId, const CSimConnectObject &simObject, const QString &warningMsg, const QString &functionName, const QString &functionDetails = {});
//! Convert to FSX char array
static QByteArray toFsxChar(const QString &string);
//! Register help //! Register help
static void registerHelp(); static void registerHelp();