diff --git a/CMakeLists.txt b/CMakeLists.txt index 90c431a..934c0ee 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -21,7 +21,7 @@ else() endif() project(LiveTraffic - VERSION 3.6.8 + VERSION 3.6.9 DESCRIPTION "LiveTraffic X-Plane plugin") set(VERSION_BETA 1) diff --git a/Include/LTRealTraffic.h b/Include/LTRealTraffic.h index 9a6452c..1d5a996 100644 --- a/Include/LTRealTraffic.h +++ b/Include/LTRealTraffic.h @@ -364,6 +364,7 @@ class RealTrafficConnection : public LTFlightDataChannel // Status std::string GetStatusText () const override; ///< return a human-readable status bool isHistoric () const { return curr.tOff > 0; } ///< serving historic data? + double GetTSAdjust () const { return tsAdjust; } ///< current timestamp adjustment protected: void Main () override; ///< virtual thread main function diff --git a/LiveTraffic.xcodeproj/project.pbxproj b/LiveTraffic.xcodeproj/project.pbxproj index 0f6ee7a..4d57e7a 100755 --- a/LiveTraffic.xcodeproj/project.pbxproj +++ b/LiveTraffic.xcodeproj/project.pbxproj @@ -796,7 +796,7 @@ LIVETRAFFIC_VERSION_BETA = 1; LIVETRAFFIC_VER_MAJOR = 3; LIVETRAFFIC_VER_MINOR = 6; - LIVETRAFFIC_VER_PATCH = 8; + LIVETRAFFIC_VER_PATCH = 9; LLVM_LTO = NO; MACH_O_TYPE = mh_dylib; MACOSX_DEPLOYMENT_TARGET = 10.15; @@ -905,7 +905,7 @@ LIVETRAFFIC_VERSION_BETA = 1; LIVETRAFFIC_VER_MAJOR = 3; LIVETRAFFIC_VER_MINOR = 6; - LIVETRAFFIC_VER_PATCH = 8; + LIVETRAFFIC_VER_PATCH = 9; LLVM_LTO = YES; MACH_O_TYPE = mh_dylib; MACOSX_DEPLOYMENT_TARGET = 10.15; diff --git a/Src/ACInfoWnd.cpp b/Src/ACInfoWnd.cpp index 15e6f9a..eb2c943 100644 --- a/Src/ACInfoWnd.cpp +++ b/Src/ACInfoWnd.cpp @@ -445,7 +445,18 @@ void ACIWnd::buildInterface() if (bOpen) { CollSecClear(ACI_SB_SIMULATION); - buildRow("Simulated Time", dataRefs.GetSimTimeString().c_str(), true); + + std::string s; + // in case of historic RealTraffic data we adjust timestamp to the historic time + if (const RealTrafficConnection* pRTChn = dynamic_cast(pChannel)) + { + if (pRTChn->isHistoric()) + s = ts2string(dataRefs.GetSimTime() - pRTChn->GetTSAdjust()); + } + // otherwise show general simulated time + if (s.empty()) + s = dataRefs.GetSimTimeString(); + buildRow("Simulated Time", s.c_str(), true); // last received tracking data const double lstDat = pFD ? (pFD->GetYoungestTS() - ts) : -99999.9; diff --git a/Src/LiveTraffic.cpp b/Src/LiveTraffic.cpp index bf94201..1210c07 100755 --- a/Src/LiveTraffic.cpp +++ b/Src/LiveTraffic.cpp @@ -478,6 +478,7 @@ float LoopCBOneTimeSetup (float, float, int, void*) // but can't because determining if user has set real weather // only works later, in the flight loops.) if (dataRefs.GetWeatherControl() < WC_NONE) + // TODO: Weather default: Cannot be RealTraffic if not having a RT license DATA_REFS_LT[DR_CFG_WEATHER_CONTROL].setData(WeatherIsXPRealWeather() ? WC_REAL_TRAFFIC : WC_NONE); diff --git a/Src/SettingsUI.cpp b/Src/SettingsUI.cpp index dc161d8..c204401 100644 --- a/Src/SettingsUI.cpp +++ b/Src/SettingsUI.cpp @@ -807,6 +807,12 @@ void LTSettingsUI::buildInterface() // Use METAR up to which distance from fiel? ImGui::FilteredCfgNumber("Max. METAR distance", sFilter, DR_CFG_WEATHER_MAX_METAR_DIST, 5, 100, 5, "%d nm"); + // TODO: Add option to set weather by static METAR + // Idea: Set LiveTraffic's weather setting to "Off". + // Set complete weather by METAR, like wind in all altitutes, + // temperatur approximated by altitude etc.... + // Set it once and once only in X-Plane in a non-changing mode. + if (!*sFilter) { ImGui::TreePop(); ImGui::Spacing(); } } // --- Weather --- diff --git a/docs/readme.html b/docs/readme.html index ba503ef..056fd9e 100755 --- a/docs/readme.html +++ b/docs/readme.html @@ -149,6 +149,10 @@

v3.6.8 Beta

Uses METAR to set weather when user is flying below height AGL set in Use METAR up to, switches to X-Plane's real weather above that height. +
  • + OpenSky is again enabled by default in new installations.
    + If you want to use OpenSky in an existing installation just activate it in the channel's settings. +
  • v3.6.7 Beta