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 eb1d949edc
commit 815e16368e
1718 files changed
+126739 -18495

No files matched your search

@@ -50,23 +50,23 @@ bool CustomViewMineArea::init(const QModelIndex &idx)
bool CustomViewMineArea::calculateIcon(const MineArea &area, const QColor &color)
{
if (area.segments().size() == 0)
if (area.segments.size() == 0)
return false;
QVector<Database::AesMineAreaSegment> segments;
segments.reserve(area.segments().size());
for (AreaEffectSimulation::MineSegment segmentIn : area.segments())
segments.reserve(area.segments.size());
for (AreaEffectSimulation::MineSegment segmentIn : area.segments)
{
Database::AesMineAreaSegment segmentOut;
segmentOut.startPosition = QPointF(segmentIn.positionStart().lon(),
segmentIn.positionStart().lat());
segmentOut.endPosition = QPointF(segmentIn.positionEnd().lon(),
segmentIn.positionEnd().lat());
segmentOut.startPosition = QPointF(segmentIn.positionStart.lon,
segmentIn.positionStart.lat);
segmentOut.endPosition = QPointF(segmentIn.positionEnd.lon,
segmentIn.positionEnd.lat);
segments.append(segmentOut);
}
QPolygonF poly = AreaEffectSimulation::Polygons::mineArea(segments, area.width(), area.density(), area.isCenterLine());
Qt::BrushStyle bStyle = PixmapLabel::checkForBrushStyle(area.effectStateId());
QPolygonF poly = AreaEffectSimulation::Polygons::mineArea(segments, area.width, area.density, area.isCenterLine);
Qt::BrushStyle bStyle = PixmapLabel::checkForBrushStyle(area.effectStateId);
const auto pix = Polygons::pixmapFromPolygon(PixmapLabel::geographic2Utm(poly), color, ICON_RESOLUTION, bStyle);
m_ui->lblIcon->setPixmap(pix);
@@ -81,7 +81,7 @@ std::vector<LtsCoordWidget::LtsCoordWidget *> MineAreaEdit::coordWidgets() const
void MineAreaEdit::retranslate()
{
translate(m_ui, m_aesItem, tr("Mine Area"));
bool isReactivatable = m_dtc->mineArea(m_aesItem.id()).isReactivatable();
bool isReactivatable = m_dtc->mineArea(m_aesItem.id).isReactivatable;
m_ui->pbResetDusMines->setText(isReactivatable ? tr("Reset DUS Mines") : tr("Hide DUS Mines"));
m_ui->pbResetDusMines->setToolTip(isReactivatable ? tr("Reset all DUS Mines matched to this Minearea") : tr("Hide all DUS Mines matched to this Minearea"));
}
@@ -105,24 +105,24 @@ void MineAreaEdit::enableUiElements(bool enable)
m_ui->sbWidth->setEnabled(enable);
m_ui->leIdentifier->setEnabled(enable || isOnlyNameModifiable());
const MineArea &ma = m_dtc->mineArea(m_aesItem.id());
if (m_aesItem.id() > 0 &&
(ma.isDus() || ma.isConcrete()) &&
const MineArea &ma = m_dtc->mineArea(m_aesItem.id);
if (m_aesItem.id > 0 &&
(ma.isDus || ma.isConcrete) &&
LtsSessionData::hasOperatorRight(OperatorRights::MineAreasResetDusMines))
m_ui->pbResetDusMines->setEnabled(isOnlyNameModifiable());
else
m_ui->pbResetDusMines->hide();
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->mineArea(m_aesItem.id());
auto baseData = m_dtc->mineArea(m_aesItem.id);
setData(baseData, false);
__unchange__();
if (name != m_ui->leIdentifier->text())
@@ -193,10 +193,10 @@ bool MineAreaEdit::init(int aesItemId, bool copy,
m_ui->cbDurationHours->setCurrentIndex(m_ui->cbDurationHours->findData(96));
if (strcmp(PROJECTBUILD, "guez") == 0)
m_ui->cbLayingProcedure->addItem(tr("Artillery"), AesMaLayingProcedureType::LptArtillery);
m_ui->cbLayingProcedure->addItem(tr("Artillery"), static_cast<int>(AesMaLayingProcedureType::LptArtillery));
m_ui->cbLayingProcedure->addItem(tr("Pioneer"), AesMaLayingProcedureType::LptPioneer);
m_ui->cbLayingProcedure->setCurrentIndex(m_ui->cbLayingProcedure->findData(AesMaLayingProcedureType::LptPioneer));
m_ui->cbLayingProcedure->addItem(tr("Pioneer"), static_cast<int>(AesMaLayingProcedureType::LptPioneer));
m_ui->cbLayingProcedure->setCurrentIndex(m_ui->cbLayingProcedure->findData(static_cast<int>(AesMaLayingProcedureType::LptPioneer)));
m_ui->cbLayingMethod->addItem(tr("Open"), 0);
m_ui->cbLayingMethod->addItem(tr("Covered"), 1);
@@ -245,30 +245,30 @@ void MineAreaEdit::setData(const MineArea &data, bool copy)
m_aesItem = data;
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::fromUtf8(data.name().c_str()));
m_ui->cbChargeType->setCurrentIndex(m_ui->cbChargeType->findData(data.chargeStruct().chargeTypeId()));
m_ui->sbDensity->setValue(data.density());
m_ui->leIdentifier->setText(QString::fromUtf8(data.name.c_str()));
m_ui->cbChargeType->setCurrentIndex(m_ui->cbChargeType->findData(data.chargeStruct.chargeTypeId));
m_ui->sbDensity->setValue(data.density);
double distance = qRound(1.0 / data.density());
double distance = qRound(1.0 / data.density);
if (distance == 8.0)
distance = 7.5;
const int densityIndex = m_ui->cbxDensity->findData(distance);
if (densityIndex != -1)
m_ui->cbxDensity->setCurrentIndex(densityIndex);
else
WARNING_LOG(m_logger) << "Got invalid density = " << data.density() << " / distance = " << distance;
WARNING_LOG(m_logger) << "Got invalid density = " << data.density << " / distance = " << distance;
const QJsonObject &propObj = QJsonDocument::fromJson(data.properties().c_str()).object();
const QJsonObject &propObj = QJsonDocument::fromJson(data.properties.c_str()).object();
const int refAesItemId = propObj.value(QStringLiteral("referencedAesItemId")).toInt(-1);
int effectClusterChargeTypeId = 0;
if (refAesItemId > 0)
{
const auto &effectCluster = m_aesDtc->effectCluster(refAesItemId);
effectClusterChargeTypeId = (effectCluster.id() > 0) ? effectCluster.chargeStruct().chargeTypeId() : 0 ;
effectClusterChargeTypeId = (effectCluster.id > 0) ? effectCluster.chargeStruct.chargeTypeId : 0 ;
}
const bool showDensity = (effectClusterChargeTypeId != s_DM72ChargeTypeId);
@@ -279,22 +279,22 @@ void MineAreaEdit::setData(const MineArea &data, bool copy)
m_ui->sbWidth->setDecimals(0);
m_ui->sbWidth->setValue(qRound(data.width()));
m_ui->cbEffectMarkingInTa->setChecked(data.effectMarkingInTa());
m_ui->sbWidth->setValue(qRound(data.width));
m_ui->cbEffectMarkingInTa->setChecked(data.effectMarkingInTa);
if (m_session->app() != LtsAppDescriptor::App::OC)
m_ui->cbMineAreaInputMode->setCurrentIndex(m_ui->cbMineAreaInputMode->findData(data.isCenterLine()));
m_ui->cbMineAreaInputMode->setCurrentIndex(m_ui->cbMineAreaInputMode->findData(data.isCenterLine));
QVector<QPointF> coords;
MineSegment seg;
coords.reserve(data.segments().size());
for (const MineSegment &ms : data.segments())
coords.reserve(data.segments.size());
for (const MineSegment &ms : data.segments)
{
coords << QPointF(ms.positionStart().lon(), ms.positionStart().lat());
coords << QPointF(ms.positionStart.lon, ms.positionStart.lat);
seg = ms;
}
if (coords.size() > 0)
coords << QPointF(seg.positionEnd().lon(), seg.positionEnd().lat());
coords << QPointF(seg.positionEnd.lon, seg.positionEnd.lat);
for (int i = 0; i < coords.size(); ++i)
{
@@ -304,13 +304,13 @@ void MineAreaEdit::setData(const MineArea &data, bool copy)
w->setCoordinate(coords[i]);
}
m_ui->dteEffectStart->setMsecsSinceEpoch(data.effectStart().is_set() ? data.effectStart().get() : 0);
m_ui->dteEffectStart->setMsecsSinceEpoch(data.effectStart.has_value() ? data.effectStart.get() : 0);
double duration = data.effectDuration() / (1000 * 60 * 60);
double duration = data.effectDuration / (1000 * 60 * 60);
m_ui->cbDurationHours->setCurrentText(QString::number(duration));
m_ui->cbParty->setCurrentIndex(m_ui->cbParty->findData(data.partyId().is_set() ? data.partyId().get() : 0));
m_ui->cbLayingProcedure->setCurrentIndex(m_ui->cbLayingProcedure->findData(static_cast<int>(data.layingProcedureType().underlying())));
m_ui->cbLayingMethod->setCurrentIndex(m_ui->cbLayingMethod->findData(data.isLaidHidden() ? 1 : 0));
m_ui->cbParty->setCurrentIndex(m_ui->cbParty->findData(data.partyId.has_value() ? data.partyId.get() : 0));
m_ui->cbLayingProcedure->setCurrentIndex(m_ui->cbLayingProcedure->findData(static_cast<int>(data.layingProcedureType)));
m_ui->cbLayingMethod->setCurrentIndex(m_ui->cbLayingMethod->findData(data.isLaidHidden ? 1 : 0));
}
@@ -323,7 +323,7 @@ void MineAreaEdit::getPosition()
double width = m_ui->sbWidth->value();
int maxSegments = m_segments;
if (m_ui->cbLayingProcedure->currentData().toInt() == AesMaLayingProcedureType::LptArtillery)
if (m_ui->cbLayingProcedure->currentData().toInt() == static_cast<int>(AesMaLayingProcedureType::LptArtillery))
maxSegments = 1;
@@ -370,7 +370,7 @@ bool MineAreaEdit::onResetDusMines()
{
return m_requestHelper->startSingleRequest([this]()
{
return m_ftc->mineResetRequest(MineResetRequest(m_aesItem.id(), dds::core::optional<int32_t>()), this);
return m_ftc->mineResetRequest(MineResetRequest(m_aesItem.id, dds::core::optional<int32_t>()), this);
});
}
@@ -402,10 +402,10 @@ bool MineAreaEdit::apply()
return false;
const double distance = 500.0;
const MineAreaModifyRequest req(m_aesItem.id(), name,
LtsUtils::toOptional(effectStart),
const MineAreaModifyRequest req(m_aesItem.id, name,
LtsUtils::toOptional(static_cast<int64_t>(effectStart)),
effectDuration,
m_aesItem.effectSourceId(),
m_aesItem.effectSourceId,
density,
width,
{chargeTypeId,0,0},
@@ -417,7 +417,7 @@ bool MineAreaEdit::apply()
m_ui->cbEffectMarkingInTa->isChecked(),
m_ui->cbMineAreaInputMode->currentData().toBool(),
distance,
LtsUtils::toOptional(0LL),
LtsUtils::toOptional(static_cast<int64_t>(0LL)),
true
);
@@ -429,7 +429,7 @@ bool MineAreaEdit::apply()
void MineAreaEdit::onLayingProcedureChanged()
{
const bool islptArtillery = m_ui->cbLayingProcedure->currentData().toInt() == AesMaLayingProcedureType::LptArtillery;
const bool islptArtillery = m_ui->cbLayingProcedure->currentData().toInt() == static_cast<int>(AesMaLayingProcedureType::LptArtillery);
if (islptArtillery)
m_pdmGuiIfc->setChargeTypePropertyFilter(m_ui->cbChargeType, QStringLiteral("canBeThrown"), true);
else
@@ -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 <ProjectDataManagement/pdm_data_plugin_interface.h>
@@ -28,7 +28,7 @@ public:
QString dialogIdentifier() const override
{
return m_aesItem.id() <= 0 ? QStringLiteral("AddMineArea") : QStringLiteral("EditMineArea%1").arg(m_aesItem.id());
return m_aesItem.id <= 0 ? QStringLiteral("AddMineArea") : QStringLiteral("EditMineArea%1").arg(m_aesItem.id);
}
bool init(int aesItemId, bool copy, LtsSession::LtsSession *session);
@@ -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_area_gui_plugin_interface.h"
namespace AreaEffectSimulation
@@ -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
{
@@ -40,7 +40,7 @@ QVariant MineAreasModel::data(const QModelIndex &index, int role) const
switch (index.column())
{
case ColWidth:
return QLocale().toString(mine.width(), 'f', 2);
return QLocale().toString(mine.width, 'f', 2);
default:
break;
}
@@ -3,7 +3,7 @@
#pragma once
#include <AreaEffectSimulation/Base/aes_base_model.h>
#include <Plugins/AreaEffectSimulation/Gui/Base/aes_base_model.h>
namespace LtsSession
{