Complete Qt6 migration: full clean build green across groups G1-G12 incl. runtime plugin set

new_docker_build.sh gains Group 12 (212 GUI/Data plugins); fixes LtsUtilsGuiDds visibility (LTO-stripped exports), LtsProjectionWorkstation unity name shadow, 6 unity-off dirs (dup file-scope statics, ddsftc INTERFACE sources) and reconfigures BUILD_FILTERMANAGEMENT/BUILD_PLUGINS_SERVICEMONITOR=ON
This commit is contained in:
berrux-dev committed 2026-10-20 09:36:57 +02:00
1 parent 2b957d1edb
commit 598fc2560e
1718 files changed
+126739 -18495

No files matched your search

@@ -9,7 +9,7 @@
#include <LtsSession/lts_session_data.h>
#include <LtsWidgets/lts_global_wait_dialog.h>
#include <LtsWidgets/lts_message_dialog.h>
#include <PresentationManagement/Common/pre_model.h>
#include <Plugins/PresentationManagement/Gui/Common/pre_model.h>
#include <QtWidgets/QMessageBox>
#include <QtGui/QCloseEvent>
#include <QtCore/QTimer>
@@ -43,7 +43,7 @@ ScriptChooser::ScriptChooser(const std::shared_ptr<Interface::Dtc> &dtc,
auto predicate = [](const PresentationManagement::Presentation & p)
{
return (!p.isDeleted() && p.fileStatus() == FileStatus::Valid);
return (!p.isDeleted && p.fileStatus == FileStatus::Valid);
};
m_model->initModel(dtc, opmDtc, predicate);
m_proxy->setSourceModel(m_model);
@@ -122,7 +122,7 @@ ScriptChooser::ScriptChooser(const std::shared_ptr<Interface::Dtc> &dtc,
for (rowCounter = 0; rowCounter < m_model->rowCount(); ++rowCounter)
{
if (m_model->getRowData(rowCounter).id() == scriptId)
if (m_model->getRowData(rowCounter).id == scriptId)
{
isExistingScriptId = true;
break;
@@ -140,7 +140,7 @@ ScriptChooser::ScriptChooser(const std::shared_ptr<Interface::Dtc> &dtc,
{
const Presentation p = m_model->getRowData(rowCounter);
if (p.id() <= 0)
if (p.id <= 0)
return;
setEnabled(false);
@@ -148,7 +148,7 @@ ScriptChooser::ScriptChooser(const std::shared_ptr<Interface::Dtc> &dtc,
if (!m_isImportDialog)
LtsWidgets::LtsGlobalWaitDialog::getInstance()->setVisible(true);
emit signalSelectScript(p.id());
emit signalSelectScript(p.id);
m_close = true;
close();
});
@@ -182,11 +182,11 @@ void ScriptChooser::onDeleteScript()
const FileStatus fs = FileStatus::Deleted;
PresentationChangeStatusRequest req;
req.id(pre.id());
req.fileStatus(fs);
req.operatorId(LtsSessionData::LtsSessionData::getInstance()->getOperatorId());
req.lastModified(QDateTime::currentMSecsSinceEpoch());
DEBUG_LOG(m_logger) << "Changing status for presentation id = " << pre.id();
req.id = pre.id;
req.fileStatus = fs;
req.operatorId = LtsSessionData::LtsSessionData::getInstance()->getOperatorId();
req.lastModified = QDateTime::currentMSecsSinceEpoch();
DEBUG_LOG(m_logger) << "Changing status for presentation id = " << pre.id;
m_requestHelper->startSingleRequest([this, req]()
{
@@ -233,7 +233,7 @@ void ScriptChooser::onImportScript()
const QModelIndex idx = m_ui->ltsDataView->currentIndex();
const Presentation p = m_model->getRowData(idx.row());
if (p.id() <= 0)
if (p.id <= 0)
return;
setEnabled(false);
@@ -241,7 +241,7 @@ void ScriptChooser::onImportScript()
if (!m_isImportDialog)
LtsWidgets::LtsGlobalWaitDialog::getInstance()->setVisible(true);
emit signalSelectScript(p.id());
emit signalSelectScript(p.id);
m_close = true;
close();
}
@@ -109,10 +109,10 @@ void ExportProcess::slotStartExport()
for (const PresentationManagement::PresentationContent &content : std::as_const(m_contentList))
{
auto it = m_trackEntryAssignments.constFind(QString::fromStdString(content.presentationTopicType()));
auto it = m_trackEntryAssignments.constFind(QString::fromStdString(content.presentationTopicType));
if (it == m_trackEntryAssignments.constEnd())
{
ERROR_LOG(m_logger) << "Invalid content for type (" << content.presentationTopicType() << "): " << QString::fromStdString(content.presentationTopicType());
ERROR_LOG(m_logger) << "Invalid content for type (" << content.presentationTopicType << "): " << QString::fromStdString(content.presentationTopicType);
continue;
}
@@ -121,42 +121,42 @@ void ExportProcess::slotStartExport()
ta.topicType == TopicEditorBase::TopicType::Situation)
{
if (content.attributes().size() == 0)
if (content.attributes.size() == 0)
continue;
QJsonParseError parseError;
const QJsonDocument doc(QJsonDocument::fromJson(QByteArray(content.attributes().c_str(), content.attributes().size()), &parseError));
const QJsonDocument doc(QJsonDocument::fromJson(QByteArray(content.attributes.c_str(), content.attributes.size()), &parseError));
if (parseError.error != QJsonParseError::NoError)
continue;
const QJsonObject detailData = doc.object();
TopicReplay::Interface::SituationReplayTime sitReplayTime;
sitReplayTime.id = content.id();
sitReplayTime.topicStart_s = content.startTime();
sitReplayTime.topicEnd_s = content.startTime() + content.duration();
sitReplayTime.id = content.id;
sitReplayTime.topicStart_s = content.startTime;
sitReplayTime.topicEnd_s = content.startTime + content.duration;
sitReplayTime.replaySpeedFactor = qRound64(detailData.value(QStringLiteral("speed")).toDouble(1.0));
sitReplayTime.replayStart_ms = qRound64(detailData.value(QStringLiteral("start")).toDouble());
sitReplayTime.replayEnd_ms = sitReplayTime.replayStart_ms + (content.duration() * sitReplayTime.replaySpeedFactor * 1000);
sitReplayTime.replayEnd_ms = sitReplayTime.replayStart_ms + (content.duration * sitReplayTime.replaySpeedFactor * 1000);
allSitReplayTimes.push_back(std::move(sitReplayTime));
}
}
for (const PresentationManagement::PresentationContent &content : m_contentList)
{
auto it = m_trackEntryAssignments.constFind(QString::fromStdString(content.presentationTopicType()));
auto it = m_trackEntryAssignments.constFind(QString::fromStdString(content.presentationTopicType));
if (it == m_trackEntryAssignments.constEnd())
{
ERROR_LOG(m_logger) << "Invalid content for presentation type " << content.presentationTopicType();
ERROR_LOG(m_logger) << "Invalid content for presentation type " << content.presentationTopicType;
continue;
}
if (content.attributes().size() == 0)
if (content.attributes.size() == 0)
continue;
QJsonParseError parseError;
const QJsonDocument doc(QJsonDocument::fromJson(QByteArray(content.attributes().c_str(), content.attributes().size()), &parseError));
const QJsonDocument doc(QJsonDocument::fromJson(QByteArray(content.attributes.c_str(), content.attributes.size()), &parseError));
if (parseError.error != QJsonParseError::NoError)
continue;
QJsonObject detailData = doc.object();
@@ -173,19 +173,19 @@ void ExportProcess::slotStartExport()
}
m_vecExportSteps += parseFilterSteps(content.id(), detailData, allSitReplayTimes);
m_vecExportSteps += parseFilterSteps(content.id, detailData, allSitReplayTimes);
TopicEditorBase::TopicData data(
content.id(), ta.topicType, content.startTime(), content.duration(), QString::fromStdString(content.description()),
QString::fromStdString(content.channel()), detailData
content.id, ta.topicType, content.startTime, content.duration, QString::fromStdString(content.description),
QString::fromStdString(content.channel), detailData
);
QJsonArray unused;
bool keepOriginalTopic = false;
m_vecExportSteps += checkAdditionalExportEntries(content.id(), data, unused, topicExportIfc, allSitReplayTimes, keepOriginalTopic);
m_vecExportSteps += checkAdditionalExportEntries(content.id, data, unused, topicExportIfc, allSitReplayTimes, keepOriginalTopic);
if (keepOriginalTopic)
m_vecExportSteps += createExportStep(content.id(), data, topicExportIfc, allSitReplayTimes);
m_vecExportSteps += createExportStep(content.id, data, topicExportIfc, allSitReplayTimes);
}
connect(m_pProgressDlg, &QProgressDialog::canceled, this, &ExportProcess::slotCancel);
@@ -388,12 +388,12 @@ static inline QJsonArray descVecToArray(const std::vector<AssetManagement::MapDe
{
const AssetManagement::MapDescription &desc = descriptions.at(i);
const bool isElevation = desc.mapDescriptionTypeId() == AssetManagement::MapDescriptionType::Elevation;
obj[QStringLiteral("name")] = QString::fromStdString(desc.name());
obj[QStringLiteral("description")] = QString::fromStdString(desc.description());
const bool isElevation = desc.mapDescriptionTypeId == AssetManagement::MapDescriptionType::Elevation;
obj[QStringLiteral("name")] = QString::fromStdString(desc.name);
obj[QStringLiteral("description")] = QString::fromStdString(desc.description);
obj[QStringLiteral("url")] = QString(layerBaseName + QLatin1Char('_') + QString::number(i) + (isElevation ? QStringLiteral(".tiff") : QStringLiteral(".tpk")));
obj[QStringLiteral("minScale")] = desc.minScale();
obj[QStringLiteral("maxScale")] = desc.maxScale();
obj[QStringLiteral("minScale")] = desc.minScale;
obj[QStringLiteral("maxScale")] = desc.maxScale;
arr.append(obj);
}
@@ -419,14 +419,14 @@ void ExportProcess::createLayerMappings(const std::shared_ptr<ExerciseManagement
return;
const ExerciseManagement::Exercise exercise = exmDtc->exercise(m_pSession->exerciseId());
const AssetManagement::TrainingArea ta = asmDtc->trainingArea(exercise.trainingAreaId());
const AssetManagement::TrainingArea ta = asmDtc->trainingArea(exercise.trainingAreaId);
QJsonObject obj;
obj[QStringLiteral("mapUrls")] = descVecToArray(ta.map2D(), QStringLiteral("map2D"));
obj[QStringLiteral("sceneUrls")] = descVecToArray(ta.scene3D(), QStringLiteral("scene3D"));
obj[QStringLiteral("elevationUrls")] = descVecToArray(ta.elevation(), QStringLiteral("elevation"));
obj[QStringLiteral("sceneObjectUrls")] = descVecToArray(ta.sceneObjects(), QStringLiteral("sceneObjects"));
obj[QStringLiteral("mapUrls")] = descVecToArray(ta.map2D, QStringLiteral("map2D"));
obj[QStringLiteral("sceneUrls")] = descVecToArray(ta.scene3D, QStringLiteral("scene3D"));
obj[QStringLiteral("elevationUrls")] = descVecToArray(ta.elevation, QStringLiteral("elevation"));
obj[QStringLiteral("sceneObjectUrls")] = descVecToArray(ta.sceneObjects, QStringLiteral("sceneObjects"));
file.write(QJsonDocument(obj).toJson(QJsonDocument::Indented));
file.close();
@@ -466,18 +466,18 @@ void ExportProcess::createDataJson(const std::shared_ptr<ExerciseManagement::Int
QJsonObject obj = doc.object();
const ExerciseManagement::Exercise exercise = exmDtc->exercise(m_pSession->exerciseId());
const AssetManagement::TrainingArea ta = asmDtc->trainingArea(exercise.trainingAreaId());
const AssetManagement::TrainingArea ta = asmDtc->trainingArea(exercise.trainingAreaId);
obj[QStringLiteral("title")] = QString::fromStdString(exercise.name());
obj[QStringLiteral("exerciseName")] = QString::fromStdString(exercise.name());
obj[QStringLiteral("exerciseId")] = exercise.id();
obj[QStringLiteral("exerciseArea")] = QString::fromStdString(ta.name());
obj[QStringLiteral("cycleTime")] = QString(QDateTime::fromMSecsSinceEpoch(exercise.startTime()).toString() +
QStringLiteral(" - ") + QDateTime::fromMSecsSinceEpoch(exercise.stopTime()).toString());
obj[QStringLiteral("exerciseStart")] = exercise.startTime();
obj[QStringLiteral("exerciseEnd")] = exercise.stopTime();
obj[QStringLiteral("exercisingForces")] = QString::fromStdString(exercise.forces());
obj[QStringLiteral("exercisingPurpose")] = QString::fromStdString(exercise.description());
obj[QStringLiteral("title")] = QString::fromStdString(exercise.name);
obj[QStringLiteral("exerciseName")] = QString::fromStdString(exercise.name);
obj[QStringLiteral("exerciseId")] = exercise.id;
obj[QStringLiteral("exerciseArea")] = QString::fromStdString(ta.name);
obj[QStringLiteral("cycleTime")] = QString(QDateTime::fromMSecsSinceEpoch(exercise.startTime).toString() +
QStringLiteral(" - ") + QDateTime::fromMSecsSinceEpoch(exercise.stopTime).toString());
obj[QStringLiteral("exerciseStart")] = static_cast<qint64>(exercise.startTime);
obj[QStringLiteral("exerciseEnd")] = static_cast<qint64>(exercise.stopTime);
obj[QStringLiteral("exercisingForces")] = QString::fromStdString(exercise.forces);
obj[QStringLiteral("exercisingPurpose")] = QString::fromStdString(exercise.description);
@@ -586,7 +586,7 @@ void ExportProcess::createPresentationTable()
s->m_topicData.description);
if (s->m_topicData.topicType == TopicEditorBase::TopicType::Audio || s->m_topicData.topicType == TopicEditorBase::TopicType::Video)
dispName = s->filename().splitRef(QLatin1Char('/')).last().toString();
dispName = s->filename().split(QLatin1Char('/')).last();
if (!s->filename().isEmpty())
{
@@ -7,7 +7,7 @@
#include <QtCore/QJsonArray>
#include <preguiscriptcommon_export.h>
#include <PresentationManagement/Common/topic_assignment.h>
#include <PresentationManagement/Gui/Common/topic_assignment.h>
#include <SituationReplay/srp_gui_plugin_interface.h>
#include <PresentationManagement/pre_dtc.h>
#include <PresentationManagement/logger.h>
@@ -8,7 +8,7 @@
#include <QtWidgets/QWidget>
#include <QtCore/QVector>
#include <QLinkedList>
#include <QList>
#include <QtCore/QPointer>
#include <QtWidgets/QScrollArea>
@@ -78,7 +78,7 @@ signals:
void changesMade();
private:
QLinkedList<TopicEditorBase::TopicData> m_topicDataList;
QList<TopicEditorBase::TopicData> m_topicDataList;
int m_selectedTopicId;
int m_lowestImportIndex;