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

@@ -65,10 +65,10 @@ bool CustomViewBoobyTrap::init(const QModelIndex &idx)
bool CustomViewBoobyTrap::calculateIcon(const BoobyTrap &bt, const QColor &color)
{
QPointF impactPosition = QPointF(bt.impactPosition().lon(), bt.impactPosition().lat());
const QPolygonF poly = Polygons::circle(impactPosition, bt.triggerRadius());
QPointF impactPosition = QPointF(bt.impactPosition.lon, bt.impactPosition.lat);
const QPolygonF poly = Polygons::circle(impactPosition, bt.triggerRadius);
Qt::BrushStyle bStyle = PixmapLabel::checkForBrushStyle(bt.effectStateId());
Qt::BrushStyle bStyle = PixmapLabel::checkForBrushStyle(bt.effectStateId);
const auto pix = Polygons::pixmapFromPolygon(PixmapLabel::geographic2Utm(poly), color, ICON_RESOLUTION, bStyle);
m_ui->lblIcon->setPixmap(pix);
@@ -66,16 +66,16 @@ bool CustomViewOffRouteMine::init(const QModelIndex &idx)
bool CustomViewOffRouteMine::calculateIcon(const OffRouteMine &orm, const QColor &color)
{
Database::AesOffRouteMine ormOut;
ormOut.id = orm.id();
ormOut.chargeTypeId = orm.chargeStruct().chargeTypeId();
ormOut.effectStart = QDateTime::fromMSecsSinceEpoch(orm.effectStart().is_set() ? orm.effectStart().get() : 0);
ormOut.impactPosition = QPointF(orm.area().cornerBottomLeft().lon(), orm.area().cornerBottomLeft().lat());
if (orm.impactRadius().is_set())
ormOut.impactRadius = orm.impactRadius().get();
ormOut.id = orm.id;
ormOut.chargeTypeId = orm.chargeStruct.chargeTypeId;
ormOut.effectStart = QDateTime::fromMSecsSinceEpoch(orm.effectStart.has_value() ? orm.effectStart.get() : 0);
ormOut.impactPosition = QPointF(orm.area.cornerBottomLeft.lon, orm.area.cornerBottomLeft.lat);
if (orm.impactRadius.has_value())
ormOut.impactRadius = orm.impactRadius.get();
const QPolygonF poly = AreaEffectSimulation::Polygons::offRouteMineArea(ormOut);
Qt::BrushStyle bStyle = PixmapLabel::checkForBrushStyle(orm.effectStateId());
Qt::BrushStyle bStyle = PixmapLabel::checkForBrushStyle(orm.effectStateId);
const auto pix = Polygons::pixmapFromPolygon(PixmapLabel::geographic2Utm(poly), color, ICON_RESOLUTION, bStyle);
m_ui->lblIcon->setPixmap(pix);
@@ -4,7 +4,7 @@
#include "aes_booby_trap_info.h"
#include "ui_aes_booby_trap_info.h"
#include <AreaEffectSimulation/Base/InfoView/aes_base_info.h>
#include <Plugins/AreaEffectSimulation/Gui/Base/InfoView/aes_base_info.h>
#include <LtsSession/lts_session.h>
#include <LtsCoordTrans/lts_coord_trans.h>
#include <QtCore/QDateTime>
@@ -33,9 +33,9 @@ bool BoobyTrapInfo::setData(const BoobyTrap *item)
{
m_ui->wBaseData->setData(item);
m_ui->lblImpactRadius->setText(QString::number(item->impactRadius()));
m_ui->lblTriggerRadius->setText(QString::number(item->triggerRadius()));
m_ui->lblImpactPosition->setText(LtsCoordTrans::mgrsFromGeographic(item->impactPosition().lon(), item->impactPosition().lat()));
m_ui->lblImpactRadius->setText(QString::number(item->impactRadius));
m_ui->lblTriggerRadius->setText(QString::number(item->triggerRadius));
m_ui->lblImpactPosition->setText(LtsCoordTrans::mgrsFromGeographic(item->impactPosition.lon, item->impactPosition.lat));
return true;
}
@@ -4,7 +4,7 @@
#include "aes_off_route_mine_info.h"
#include "ui_aes_off_route_mine_info.h"
#include <AreaEffectSimulation/Base/InfoView/aes_base_info.h>
#include <Plugins/AreaEffectSimulation/Gui/Base/InfoView/aes_base_info.h>
#include <LtsSession/lts_session.h>
#include <LtsCoordTrans/lts_coord_trans.h>
#include <QtCore/QDateTime>
@@ -34,7 +34,7 @@ bool OffRouteMineInfo::setData(const OffRouteMine *item)
m_ui->wBaseData->setData(item);
m_ui->lblImpactPosition->setText(LtsCoordTrans::mgrsFromGeographic(item->area().cornerBottomLeft().lon(), item->area().cornerBottomLeft().lat()));
m_ui->lblImpactPosition->setText(LtsCoordTrans::mgrsFromGeographic(item->area.cornerBottomLeft.lon, item->area.cornerBottomLeft.lat));
return true;
}
void OffRouteMineInfo::init(LtsSession::LtsSession *session)
@@ -126,15 +126,15 @@ void BoobyTrapEdit::enableUiElements(bool enable)
m_ui->leIdentifier->setEnabled(enable || isOnlyNameModifiable());
m_ui->pbClear->setEnabled(enable);
if (m_aesItem.effectStateId() == AesEffectState::EsExpired)
if (m_aesItem.effectStateId == AesEffectState::EsExpired)
{
m_ui->leIdentifier->setText(QString::fromStdString(m_aesItem.name()));
m_ui->leIdentifier->setText(QString::fromStdString(m_aesItem.name));
__unchange__();
}
if (m_aesItem.effectStateId() == AesEffectState::EsActivated)
if (m_aesItem.effectStateId == AesEffectState::EsActivated)
{
QString name = m_ui->leIdentifier->text();
auto baseData = m_dtc->boobyTrap(m_aesItem.id());
auto baseData = m_dtc->boobyTrap(m_aesItem.id);
setData(baseData, false);
__unchange__();
if (name != m_ui->leIdentifier->text())
@@ -224,29 +224,29 @@ void BoobyTrapEdit::setData(const BoobyTrap &bt, bool copy)
m_aesItem = bt;
if (copy)
{
m_aesItem.id(0);
m_aesItem.effectStateId(AreaEffectSimulation::AesEffectState::get_default());
m_aesItem.id = 0;
m_aesItem.effectStateId = AreaEffectSimulation::AesEffectState::EsUnknown;
}
m_ui->leIdentifier->setText(QString::fromStdString(bt.name()));
m_ui->dteEffectStart->setMsecsSinceEpoch(bt.effectStart().is_set() ? bt.effectStart().get() : 0);
m_ui->cbChargeType->setCurrentIndex(m_ui->cbChargeType->findData(bt.chargeStruct().chargeTypeId()));
s_lastChargeTypeBoobyTrap = bt.chargeStruct().chargeTypeId();
m_ui->sbDurationHours->setValue(bt.effectDuration() / 1000 / 60/ 60);
m_ui->sbTriggerRadius->setValue(bt.triggerRadius());
m_ui->sbImpactRadius->setValue(bt.impactRadius());
m_ui->leIdentifier->setText(QString::fromStdString(bt.name));
m_ui->dteEffectStart->setMsecsSinceEpoch(bt.effectStart.has_value() ? bt.effectStart.get() : 0);
m_ui->cbChargeType->setCurrentIndex(m_ui->cbChargeType->findData(bt.chargeStruct.chargeTypeId));
s_lastChargeTypeBoobyTrap = bt.chargeStruct.chargeTypeId;
m_ui->sbDurationHours->setValue(bt.effectDuration / 1000 / 60/ 60);
m_ui->sbTriggerRadius->setValue(bt.triggerRadius);
m_ui->sbImpactRadius->setValue(bt.impactRadius);
if (bt.rotationAngle().is_set())
if (bt.rotationAngle.has_value())
{
m_ui->rotationAngleEdit->setValue(bt.rotationAngle().get(), LtsAngleEditBase::AngleUnitType::Deg);
m_ui->rotationAngleEdit->setValue(bt.rotationAngle.get(), LtsAngleEditBase::AngleUnitType::Deg);
}
if (bt.centralAngle().is_set())
m_ui->sbCentralAngle->setValue(bt.centralAngle().get());
if (bt.centralAngle.has_value())
m_ui->sbCentralAngle->setValue(bt.centralAngle.get());
m_ui->cbParty->setCurrentIndex(m_ui->cbParty->findData(bt.partyId().is_set() ? bt.partyId().get() : 0));
m_ui->cbParty->setCurrentIndex(m_ui->cbParty->findData(bt.partyId.has_value() ? bt.partyId.get() : 0));
QPointF impactPosition(bt.impactPosition().lon(), bt.impactPosition().lat());
QPointF impactPosition(bt.impactPosition.lon, bt.impactPosition.lat);
if (!impactPosition.isNull())
m_ui->positionEdit->setCoordinate(impactPosition);
}
@@ -424,7 +424,7 @@ bool BoobyTrapEdit::apply()
QPointF p(m_ui->positionEdit->coordinate());
const Core::GeoPosition2D pos(p.x(), p.y());
BoobyTrapModifyRequest req(m_aesItem.id(),
BoobyTrapModifyRequest req(m_aesItem.id,
name,
duration,
chargeType,
@@ -433,7 +433,7 @@ bool BoobyTrapEdit::apply()
triggerRadius,
dds::core::optional<double>(),
dds::core::optional<double>(),
LtsUtils::toOptional(effectStart),
LtsUtils::toOptional(static_cast<int64_t>(effectStart)),
LtsUtils::toOptional(partyId)
);
@@ -443,9 +443,9 @@ bool BoobyTrapEdit::apply()
double rotValue = m_ui->rotationAngleEdit->getAngleConverted(m_ui->rotationAngleEdit->getAngle(),
LtsAngleEditBase::AngleUnitType::Deg,
m_ui->rotationAngleEdit->getAngleCurrentUnit());
req.rotationAngle().set(rotValue);
req.rotationAngle.set(rotValue);
req.centralAngle().set(m_ui->sbCentralAngle->value());
req.centralAngle.set(m_ui->sbCentralAngle->value());
}
m_requestHelper->addRequest([this,req]()
@@ -3,7 +3,7 @@
#pragma once
#include <AreaEffectSimulation/Base/aes_base_edit.h>
#include <Plugins/AreaEffectSimulation/Gui/Base/aes_base_edit.h>
#include <ProjectDataManagement/pdm_gui_plugin_interface.h>
#include <LtsWidgets/lts_angle_edit.h>
@@ -30,7 +30,7 @@ public:
QString dialogIdentifier() const override
{
return m_aesItem.id() <= 0 ? QStringLiteral("AddBoobyTrap") : QStringLiteral("EditBoobyTrap%1").arg(m_aesItem.id());
return m_aesItem.id <= 0 ? QStringLiteral("AddBoobyTrap") : QStringLiteral("EditBoobyTrap%1").arg(m_aesItem.id);
}
bool init(int aesItemId, bool copy, LtsSession::LtsSession *session);
@@ -3,8 +3,8 @@
#pragma once
#include <AreaEffectSimulation/Base/aes_itemlist.h>
#include <AreaEffectSimulation/Base/aes_base_model.h>
#include <Plugins/AreaEffectSimulation/Gui/Base/aes_itemlist.h>
#include <Plugins/AreaEffectSimulation/Gui/Base/aes_base_model.h>
namespace AreaEffectSimulation
{
@@ -37,20 +37,20 @@ QVariant BoobyTrapModel::data(const QModelIndex &index, int role) const
switch (index.column())
{
case ColTriggerRadius:
return QLocale().toString(bt.triggerRadius(), 'f', 2);
return QLocale().toString(bt.triggerRadius, 'f', 2);
case ColImpactRadius:
return QLocale().toString(bt.impactRadius(), 'f', 2);
return QLocale().toString(bt.impactRadius, 'f', 2);
case ColRotationAngle:
{
if (bt.rotationAngle().is_set())
return QLocale().toString(bt.rotationAngle().get(), 'f', 2);
if (bt.rotationAngle.has_value())
return QLocale().toString(bt.rotationAngle.get(), 'f', 2);
else
return {};
}
case ColCentralAngle:
{
if (bt.centralAngle().is_set())
return QLocale().toString(bt.centralAngle().get(), 'f', 2);
if (bt.centralAngle.has_value())
return QLocale().toString(bt.centralAngle.get(), 'f', 2);
else
return {};
}
@@ -4,7 +4,7 @@
#pragma once
#include <QtCore/QSet>
#include <AreaEffectSimulation/Base/aes_base_model.h>
#include <Plugins/AreaEffectSimulation/Gui/Base/aes_base_model.h>
#include <ProjectDataManagement/pdm_enums.hpp>
namespace LtsSession
@@ -3,7 +3,7 @@
#pragma once
#include <AreaEffectSimulation/Base/aes_base_gui_plugin.h>
#include <Plugins/AreaEffectSimulation/Gui/Base/aes_base_gui_plugin.h>
#include "aes_mine_single_virtual_gui_plugin_interface.h"
namespace AreaEffectSimulation
@@ -176,15 +176,15 @@ void OffRouteMineEdit::enableUiElements(bool enable)
m_ui->leIdentifier->setEnabled(enable || isOnlyNameModifiable());
m_ui->pbClear->setEnabled(enable);
if (m_aesItem.effectStateId() == AesEffectState::EsExpired)
if (m_aesItem.effectStateId == AesEffectState::EsExpired)
{
m_ui->leIdentifier->setText(QString::fromStdString(m_aesItem.name()));
m_ui->leIdentifier->setText(QString::fromStdString(m_aesItem.name));
__unchange__();
}
if (m_aesItem.effectStateId() == AesEffectState::EsActivated)
if (m_aesItem.effectStateId == AesEffectState::EsActivated)
{
QString name = m_ui->leIdentifier->text();
auto baseData = m_dtc->offRouteMine(m_aesItem.id());
auto baseData = m_dtc->offRouteMine(m_aesItem.id);
setData(baseData, false);
__unchange__();
if (name != m_ui->leIdentifier->text())
@@ -248,34 +248,34 @@ void OffRouteMineEdit::setData(const OffRouteMine &orm, bool copy)
m_aesItem = orm;
if (copy)
{
m_aesItem.id(0);
m_aesItem.effectStateId(AreaEffectSimulation::AesEffectState::get_default());
m_aesItem.id = 0;
m_aesItem.effectStateId = AreaEffectSimulation::AesEffectState::EsUnknown;
}
const Area &area = orm.area();
if (!qFuzzyCompare(area.cornerBottomLeft().lon(), 0) ||
!qFuzzyCompare(area.cornerBottomLeft().lat(), 0))
const Area &area = orm.area;
if (!qFuzzyCompare(area.cornerBottomLeft.lon, 0) ||
!qFuzzyCompare(area.cornerBottomLeft.lat, 0))
{
QPointF bottomCenter = bottomLeftToBottomCenterToGeo(QPointF(orm.area().cornerBottomLeft().lon(), orm.area().cornerBottomLeft().lat()),
area.width(), area.rotation());
QPointF bottomCenter = bottomLeftToBottomCenterToGeo(QPointF(orm.area.cornerBottomLeft.lon, orm.area.cornerBottomLeft.lat),
area.width, area.rotation);
m_ui->positionEdit->setCoordinate(bottomCenter);
}
m_ui->leIdentifier->setText(QString::fromStdString(orm.name()));
m_ui->dteEffectStart->setMsecsSinceEpoch(orm.effectStart().is_set() ? orm.effectStart().get() : 0);
m_ui->cbChargeType->setCurrentIndex(m_ui->cbChargeType->findData(orm.chargeStruct().chargeTypeId()));
s_lastChargeTypeOffRouteMine = orm.chargeStruct().chargeTypeId();
m_ui->sbDurationHours->setValue(orm.effectDuration() / 1000 / 60/ 60);
if (orm.impactRadius().is_set())
m_ui->sbImpactRadius->setValue(orm.impactRadius().get());
m_ui->leIdentifier->setText(QString::fromStdString(orm.name));
m_ui->dteEffectStart->setMsecsSinceEpoch(orm.effectStart.has_value() ? orm.effectStart.get() : 0);
m_ui->cbChargeType->setCurrentIndex(m_ui->cbChargeType->findData(orm.chargeStruct.chargeTypeId));
s_lastChargeTypeOffRouteMine = orm.chargeStruct.chargeTypeId;
m_ui->sbDurationHours->setValue(orm.effectDuration / 1000 / 60/ 60);
if (orm.impactRadius.has_value())
m_ui->sbImpactRadius->setValue(orm.impactRadius.get());
m_ui->rotationAngleEdit->setValue(area.rotation(), LtsAngleEditBase::AngleUnitType::Deg);
m_ui->rotationAngleEdit->setValue(area.rotation, LtsAngleEditBase::AngleUnitType::Deg);
m_ui->sbDimensionX->setValue(area.width());
m_ui->sbDimensionY->setValue(area.height());
m_ui->sbDimensionX->setValue(area.width);
m_ui->sbDimensionY->setValue(area.height);
m_ui->cbParty->setCurrentIndex(m_ui->cbParty->findData(orm.partyId().is_set() ? orm.partyId().get() : 0));
m_ui->cbParty->setCurrentIndex(m_ui->cbParty->findData(orm.partyId.has_value() ? orm.partyId.get() : 0));
}
@@ -406,9 +406,9 @@ bool OffRouteMineEdit::apply()
int partyId = m_ui->cbParty->currentData().toInt();
Area area;
area.width() = m_ui->sbDimensionX->value();
area.height() = m_ui->sbDimensionY->value();
area.rotation() = rotation;
area.width = m_ui->sbDimensionX->value();
area.height = m_ui->sbDimensionY->value();
area.rotation = rotation;
@@ -419,20 +419,20 @@ bool OffRouteMineEdit::apply()
m_ui->rotationAngleEdit->getAngleCurrentUnit());
QPointF bottomLeftGeo = bottomCenterToBottomLeftGeo(m_ui->positionEdit->coordinate(), width, rotationDeg);
area.cornerBottomLeft() = Core::GeoPosition2D(bottomLeftGeo.x(), bottomLeftGeo.y());
area.cornerBottomLeft = Core::GeoPosition2D(bottomLeftGeo.x(), bottomLeftGeo.y());
OffRouteMineModifyRequest req(m_aesItem.id(),
OffRouteMineModifyRequest req(m_aesItem.id,
name,
duration,
chargeType,
area,
dds::core::optional<double>(),
LtsUtils::toOptional(effectStart),
LtsUtils::toOptional(static_cast<int64_t>(effectStart)),
LtsUtils::toOptional(partyId)
);
if (chargeType == s_offRouteMine2)
req.impactRadius().set(m_ui->sbImpactRadius->value());
req.impactRadius.set(m_ui->sbImpactRadius->value());
DEBUG_LOG(m_logger) << " req=" << req;
@@ -3,7 +3,7 @@
#pragma once
#include <AreaEffectSimulation/Base/aes_base_edit.h>
#include <Plugins/AreaEffectSimulation/Gui/Base/aes_base_edit.h>
#include <ProjectDataManagement/pdm_gui_plugin_interface.h>
#include <LtsWidgets/lts_angle_edit.h>
@@ -30,7 +30,7 @@ public:
QString dialogIdentifier() const override
{
return m_aesItem.id() <= 0 ? QStringLiteral("AddOffRouteMine") : QStringLiteral("EditOffRouteMine%1").arg(m_aesItem.id());
return m_aesItem.id <= 0 ? QStringLiteral("AddOffRouteMine") : QStringLiteral("EditOffRouteMine%1").arg(m_aesItem.id);
}
bool init(int aesItemId, bool copy, LtsSession::LtsSession *session);
@@ -3,8 +3,8 @@
#pragma once
#include <AreaEffectSimulation/Base/aes_itemlist.h>
#include <AreaEffectSimulation/Base/aes_base_model.h>
#include <Plugins/AreaEffectSimulation/Gui/Base/aes_itemlist.h>
#include <Plugins/AreaEffectSimulation/Gui/Base/aes_base_model.h>
namespace AreaEffectSimulation
{
@@ -38,8 +38,8 @@ QVariant OffRouteMineModel::data(const QModelIndex &index, int role) const
{
case ColImpactRadius:
{
if (orm.impactRadius().is_set())
return QLocale().toString(orm.impactRadius().get(), 'f', 2);
if (orm.impactRadius.has_value())
return QLocale().toString(orm.impactRadius.get(), 'f', 2);
else
return {};
}
@@ -4,7 +4,7 @@
#pragma once
#include <QtCore/QSet>
#include <AreaEffectSimulation/Base/aes_base_model.h>
#include <Plugins/AreaEffectSimulation/Gui/Base/aes_base_model.h>
#include <ProjectDataManagement/pdm_enums.hpp>
namespace LtsSession