From 4be8ff9e3ddc42b22f9c68c609898c616505492c Mon Sep 17 00:00:00 2001 From: Klaus Basan Date: Sun, 20 Jan 2019 19:16:04 +0100 Subject: [PATCH] Ref T515, use model utils for validation --- src/blackgui/views/aircraftmodelvalidationdialog.cpp | 5 ++--- src/blackmisc/simulation/aircraftmodelutils.cpp | 11 ++++++++++- src/blackmisc/simulation/aircraftmodelutils.h | 2 ++ 3 files changed, 14 insertions(+), 4 deletions(-) diff --git a/src/blackgui/views/aircraftmodelvalidationdialog.cpp b/src/blackgui/views/aircraftmodelvalidationdialog.cpp index 2683c69f0..51def48a5 100644 --- a/src/blackgui/views/aircraftmodelvalidationdialog.cpp +++ b/src/blackgui/views/aircraftmodelvalidationdialog.cpp @@ -45,9 +45,8 @@ namespace BlackGui CAircraftModelList invalid; const bool ignoreEmpty = false; const int maxFailedFiles = 25; - const CStatusMessageList msgs = m_models.isLikelyFsFamilyModelList() ? - CFsCommonUtil::validateConfigFiles(m_models, valid, invalid, ignoreEmpty, maxFailedFiles) : - m_models.validateFiles(valid, invalid, ignoreEmpty, maxFailedFiles); + bool wasStopped = false; + const CStatusMessageList msgs = CAircraftModelUtilities::validateModelFiles(m_models, valid, invalid, ignoreEmpty, maxFailedFiles, wasStopped); ui->comp_StatusMessage->clear(); ui->comp_StatusMessage->appendStatusMessagesToList(msgs); } diff --git a/src/blackmisc/simulation/aircraftmodelutils.cpp b/src/blackmisc/simulation/aircraftmodelutils.cpp index 7fd36621e..6eed4a5de 100644 --- a/src/blackmisc/simulation/aircraftmodelutils.cpp +++ b/src/blackmisc/simulation/aircraftmodelutils.cpp @@ -7,8 +7,9 @@ * contained in the LICENSE file. */ -#include "blackmisc/simulation/aircraftmodellist.h" #include "blackmisc/simulation/aircraftmodelutils.h" +#include "blackmisc/simulation/fscommon/fscommonutil.h" +#include "blackmisc/simulation/aircraftmodellist.h" #include "blackmisc/directoryutils.h" #include "blackmisc/verify.h" @@ -137,5 +138,13 @@ namespace BlackMisc const bool ok = CFileUtils::writeStringToFile(htmlTemplate.arg(html), dir.absoluteFilePath(fn)); return ok ? dir.absoluteFilePath(fn) : ""; } + + CStatusMessageList CAircraftModelUtilities::validateModelFiles(const CAircraftModelList &models, CAircraftModelList &validModels, CAircraftModelList &invalidModels, bool ignoreEmpty, int stopAtFailedFiles, bool &stopped) + { + // specifi checks for XPlane/FG would go here + return models.isLikelyFsFamilyModelList() ? + FsCommon::CFsCommonUtil::validateConfigFiles(models, validModels, invalidModels, ignoreEmpty, stopAtFailedFiles, stopped) : + models.validateFiles(validModels, invalidModels, ignoreEmpty, stopAtFailedFiles, stopped); + } } // ns } // ns diff --git a/src/blackmisc/simulation/aircraftmodelutils.h b/src/blackmisc/simulation/aircraftmodelutils.h index 9a59fa473..df50055e7 100644 --- a/src/blackmisc/simulation/aircraftmodelutils.h +++ b/src/blackmisc/simulation/aircraftmodelutils.h @@ -35,6 +35,8 @@ namespace BlackMisc //! Matrix airlines/aircraft ICAOs static QString createIcaoAirlineAircraftHtmlMatrixFile(const BlackMisc::Simulation::CAircraftModelList &models, const QString &tempDir); + //! Validate aircraft.cfg entries + static CStatusMessageList validateModelFiles(const CAircraftModelList &models, CAircraftModelList &validModels, CAircraftModelList &invalidModels, bool ignoreEmpty, int stopAtFailedFiles, bool &stopped); }; } //namespace } // namespace