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:
1718 files changed
+126739
-18495
No files matched your search
+30
-28
@@ -2,6 +2,7 @@
|
||||
|
||||
|
||||
#include "avm_edit_training_voice_communication_dialog.h"
|
||||
#include <NGLLogger/NGLLoggerBootstrap.h>
|
||||
#include <utility>
|
||||
#include "ui_avm_edit_training_voice_communication_dialog.h"
|
||||
#include <AudioVideoManagement/avm_dtc.h>
|
||||
@@ -45,18 +46,18 @@ EditTrainingVoiceCommunicationDialog::EditTrainingVoiceCommunicationDialog(const
|
||||
|
||||
EditTrainingVoiceCommunicationDialog::EditTrainingVoiceCommunicationDialog(const TvcConfig &config, const std::shared_ptr<Interface::Dtc> &avmDtc, const std::shared_ptr<Interface::Ftc> &avmFtc,
|
||||
ExerciseManagement::Interface::Dtc *exmDtc, int32_t exerciseId, QWidget *parent)
|
||||
: EditTrainingVoiceCommunicationDialog(config.id(), avmDtc, avmFtc, exmDtc, exerciseId, parent)
|
||||
: EditTrainingVoiceCommunicationDialog(config.id, avmDtc, avmFtc, exmDtc, exerciseId, parent)
|
||||
{
|
||||
m_ui->leInfo->setText(QString::fromStdString(config.info()));
|
||||
m_ui->chkRecording->setChecked(config.recording());
|
||||
m_ui->leInfo->setText(QString::fromStdString(config.info));
|
||||
m_ui->chkRecording->setChecked(config.recording);
|
||||
|
||||
{
|
||||
QSignalBlocker blockSignals(m_ui->chkIsGlobal);
|
||||
m_ui->chkIsGlobal->setChecked(!config.exerciseId().is_set());
|
||||
m_ui->chkIsGlobal->setChecked(!config.exerciseId.has_value());
|
||||
}
|
||||
|
||||
m_ui->leRadioCircuit->setText(QString::fromStdString(config.radioCircuit()));
|
||||
initCbChannelsForEdit(config.tetraChannelId());
|
||||
m_ui->leRadioCircuit->setText(QString::fromStdString(config.radioCircuit));
|
||||
initCbChannelsForEdit(config.tetraChannelId);
|
||||
}
|
||||
|
||||
EditTrainingVoiceCommunicationDialog::EditTrainingVoiceCommunicationDialog(int32_t id, const std::shared_ptr<Interface::Dtc> &avmDtc, const std::shared_ptr<Interface::Ftc> &avmFtc,
|
||||
@@ -69,6 +70,7 @@ EditTrainingVoiceCommunicationDialog::EditTrainingVoiceCommunicationDialog(int32
|
||||
, m_avmFtc(avmFtc)
|
||||
, m_exmDtc(exmDtc)
|
||||
, m_requestHelper(new LtsUtils::RequestHelper(this))
|
||||
, m_logger(NGL::NGLLoggerBootstrap::getNGLRootLogger())
|
||||
{
|
||||
Q_ASSERT(id >= 0);
|
||||
Q_ASSERT(exmDtc);
|
||||
@@ -99,16 +101,16 @@ bool EditTrainingVoiceCommunicationDialog::apply()
|
||||
{
|
||||
ModifyTvcConfigRequest request;
|
||||
|
||||
request.tetraChannelId(m_ui->cbChannel->currentData().toInt());
|
||||
Q_ASSERT(request.tetraChannelId() > 0);
|
||||
request.radioCircuit(m_ui->leRadioCircuit->text().toStdString());
|
||||
request.recording(m_ui->chkRecording->isChecked());
|
||||
request.info(m_ui->leInfo->text().toStdString());
|
||||
request.id(m_id);
|
||||
request.tetraChannelId = m_ui->cbChannel->currentData().toInt();
|
||||
Q_ASSERT(request.tetraChannelId > 0);
|
||||
request.radioCircuit = m_ui->leRadioCircuit->text().toStdString();
|
||||
request.recording = m_ui->chkRecording->isChecked();
|
||||
request.info = m_ui->leInfo->text().toStdString();
|
||||
request.id = m_id;
|
||||
|
||||
bool isLocal = !m_ui->chkIsGlobal->isChecked();
|
||||
if (isLocal)
|
||||
request.exerciseId(m_exerciseId);
|
||||
request.exerciseId = m_exerciseId;
|
||||
|
||||
return m_requestHelper->startSingleRequest([this, request] () { return m_avmFtc->modifyTvcConfigRequest(request, this); });
|
||||
}
|
||||
@@ -142,18 +144,18 @@ void EditTrainingVoiceCommunicationDialog::updateFreeChannelsAndTakenNames()
|
||||
const auto allTvcConfigs = m_avmDtc->tvcConfigs();
|
||||
for (const auto &tvcConfig : allTvcConfigs)
|
||||
{
|
||||
if (m_id > 0 && m_id == tvcConfig.id())
|
||||
if (m_id > 0 && m_id == tvcConfig.id)
|
||||
continue;
|
||||
|
||||
if (!isGlobal)
|
||||
{
|
||||
if (tvcConfig.exerciseId().is_set() && !exercises.contains(tvcConfig.exerciseId().get()))
|
||||
if (tvcConfig.exerciseId.has_value() && !exercises.contains(tvcConfig.exerciseId.get()))
|
||||
continue;
|
||||
}
|
||||
if (tvcConfig.exerciseId().is_set() && exercisesIgnore.contains(tvcConfig.exerciseId().get()))
|
||||
if (tvcConfig.exerciseId.has_value() && exercisesIgnore.contains(tvcConfig.exerciseId.get()))
|
||||
continue;
|
||||
m_takenNames.push_back(QString::fromStdString(tvcConfig.radioCircuit()));
|
||||
freeChannels.removeOne(tvcConfig.tetraChannelId());
|
||||
m_takenNames.push_back(QString::fromStdString(tvcConfig.radioCircuit));
|
||||
freeChannels.removeOne(tvcConfig.tetraChannelId);
|
||||
}
|
||||
|
||||
updateCbChannels(std::move(freeChannels));
|
||||
@@ -167,7 +169,7 @@ void EditTrainingVoiceCommunicationDialog::updateCbChannels(QVector<int> &&freeC
|
||||
|
||||
const auto allChannels = m_avmDtc->tvcChannels();
|
||||
|
||||
const auto byName = [&allChannels] (int leftChannelId, int rightChannelId) { return QLatin1String(allChannels[leftChannelId].name().c_str()) < QLatin1String(allChannels[rightChannelId].name().c_str()); };
|
||||
const auto byName = [&allChannels] (int leftChannelId, int rightChannelId) { return QLatin1String(allChannels[leftChannelId].name.c_str()) < QLatin1String(allChannels[rightChannelId].name.c_str()); };
|
||||
std::sort(freeChannels.begin(), freeChannels.end(), byName);
|
||||
|
||||
int currentlySelctedChannelId = m_ui->cbChannel->currentData().toInt();
|
||||
@@ -179,7 +181,7 @@ void EditTrainingVoiceCommunicationDialog::updateCbChannels(QVector<int> &&freeC
|
||||
m_ui->cbChannel->clear();
|
||||
m_ui->cbChannel->addItem(NO_CHANNEL(), -1);
|
||||
for (const auto &channelId : freeChannels)
|
||||
m_ui->cbChannel->addItem(QString::fromStdString(allChannels[channelId].name()), channelId);
|
||||
m_ui->cbChannel->addItem(QString::fromStdString(allChannels[channelId].name), channelId);
|
||||
m_ui->cbChannel->setCurrentIndex(newlySelectedIndex);
|
||||
}
|
||||
|
||||
@@ -189,18 +191,18 @@ QVector<int> EditTrainingVoiceCommunicationDialog::exercisesToConsider() const
|
||||
{
|
||||
const auto allExercises_ = m_exmDtc->exercises();
|
||||
|
||||
if (!isActive(allExercises_[m_exerciseId].state()))
|
||||
if (!isActive(allExercises_[m_exerciseId].state))
|
||||
return {m_exerciseId};
|
||||
|
||||
auto allExercises = allExercises_.values();
|
||||
auto newEnd = std::remove_if(allExercises.begin(), allExercises.end(), [] (const ExerciseManagement::Exercise &ex) { return ex.isDeleted(); });
|
||||
auto newEnd = std::remove_if(allExercises.begin(), allExercises.end(), [] (const ExerciseManagement::Exercise &ex) { return ex.isDeleted; });
|
||||
allExercises.erase(newEnd, allExercises.end());
|
||||
|
||||
QVector<int> toBeConsidered;
|
||||
for (const auto &exercise : std::as_const(allExercises))
|
||||
{
|
||||
if (::isActive(exercise.state()))
|
||||
toBeConsidered.append(exercise.id());
|
||||
if (::isActive(exercise.state))
|
||||
toBeConsidered.append(exercise.id);
|
||||
}
|
||||
return toBeConsidered;
|
||||
}
|
||||
@@ -211,16 +213,16 @@ QVector<int> EditTrainingVoiceCommunicationDialog::exercisesToIgnore() const
|
||||
|
||||
auto canBeIgnored = [] (const ExerciseManagement::Exercise &ex) -> bool
|
||||
{
|
||||
return (ex.state() == ExerciseManagement::ExerciseState::Stopped ||
|
||||
ex.state() == ExerciseManagement::ExerciseState::Terminated ||
|
||||
ex.isDeleted());
|
||||
return (ex.state == ExerciseManagement::ExerciseState::Stopped ||
|
||||
ex.state == ExerciseManagement::ExerciseState::Terminated ||
|
||||
ex.isDeleted);
|
||||
};
|
||||
|
||||
QVector<int> exercisesToIgnore;
|
||||
for (const auto &ex : allExercises)
|
||||
{
|
||||
if (canBeIgnored(ex))
|
||||
exercisesToIgnore += ex.id();
|
||||
exercisesToIgnore += ex.id;
|
||||
}
|
||||
return exercisesToIgnore;
|
||||
}
|
||||
|
||||
+4
-2
@@ -1,6 +1,7 @@
|
||||
|
||||
|
||||
#include "avm_training_voice_communication_dialog.h"
|
||||
#include <NGLLogger/NGLLoggerBootstrap.h>
|
||||
|
||||
#include "avm_edit_training_voice_communication_dialog.h"
|
||||
#include "avm_training_voice_communication_dialog_model.h"
|
||||
@@ -21,6 +22,7 @@ TrainingVoiceCommunicationDialog::TrainingVoiceCommunicationDialog(const QString
|
||||
: LtsWidgets::LtsDialog(parent, LtsWidgets::ButtonCombination::CloseOnly), m_session(session),
|
||||
m_ui(new Ui::TrainingVoiceCommunicationDialog), m_menuGroup(menuGroup),
|
||||
m_requestHelper(new LtsUtils::RequestHelper(this)), m_avmDtc(nullptr), m_avmFtc(nullptr)
|
||||
, m_logger(NGL::NGLLoggerBootstrap::getNGLRootLogger())
|
||||
{
|
||||
m_ui->setupUi(this);
|
||||
|
||||
@@ -125,7 +127,7 @@ void TrainingVoiceCommunicationDialog::onEditClicked()
|
||||
|
||||
EditTrainingVoiceCommunicationDialog* dialog =
|
||||
new EditTrainingVoiceCommunicationDialog(config, m_avmDtc, m_avmFtc, m_exmDtc, m_session->exerciseId(), this);
|
||||
addDialog(dialog, m_menuGroup, QStringLiteral("EditTVCConfig%1").arg(config.id()),
|
||||
addDialog(dialog, m_menuGroup, QStringLiteral("EditTVCConfig%1").arg(config.id),
|
||||
LtsWidgets::LayoutArea::eDialogTab);
|
||||
}
|
||||
|
||||
@@ -136,7 +138,7 @@ void TrainingVoiceCommunicationDialog::onRemoveClicked()
|
||||
if (!currentIndex.isValid())
|
||||
return;
|
||||
|
||||
Core::RemoveElementRequest request(m_model->getRowData(currentIndex.row()).id());
|
||||
Core::RemoveElementRequest request(m_model->getRowData(currentIndex.row()).id);
|
||||
|
||||
m_requestHelper->startSingleRequest([this, request]() { return m_avmFtc->removeTvcConfigRequest(request, this); });
|
||||
}
|
||||
|
||||
+20
-18
@@ -1,6 +1,7 @@
|
||||
|
||||
|
||||
#include "avm_training_voice_communication_dialog_model.h"
|
||||
#include <NGLLogger/NGLLoggerBootstrap.h>
|
||||
|
||||
#include <FileManagement/flm_translation.h>
|
||||
#include <QtCore/QJsonArray>
|
||||
@@ -14,6 +15,7 @@ TrainingVoiceCommunicationDialogModel::TrainingVoiceCommunicationDialogModel(QOb
|
||||
: LtsAbstractTableModel<AudioVideoManagement::TvcConfig>(
|
||||
{tr("Channel Number"), tr("Radio Circuit"), tr("Recording"), tr("Info"), tr("Global")}, parent),
|
||||
m_exerciseId(-1)
|
||||
, m_logger(NGL::NGLLoggerBootstrap::getNGLRootLogger())
|
||||
{
|
||||
}
|
||||
|
||||
@@ -27,15 +29,15 @@ QVariant TrainingVoiceCommunicationDialogModel::data(const QModelIndex& index, i
|
||||
switch (index.column())
|
||||
{
|
||||
case CHANNEL:
|
||||
return QString::fromStdString(m_tetraChannels.value(config.tetraChannelId()).name());
|
||||
return QString::fromStdString(m_tetraChannels.value(config.tetraChannelId).name);
|
||||
case RADIO_CIRCUIT:
|
||||
return QString::fromStdString(config.radioCircuit());
|
||||
return QString::fromStdString(config.radioCircuit);
|
||||
case RECORDING:
|
||||
return config.recording() ? tr("On") : tr("Off");
|
||||
return config.recording ? tr("On") : tr("Off");
|
||||
case INFO:
|
||||
return QString::fromStdString(config.info());
|
||||
return QString::fromStdString(config.info);
|
||||
case GLOBAL:
|
||||
return config.exerciseId().is_set() ? tr("No") : tr("Yes");
|
||||
return config.exerciseId.has_value() ? tr("No") : tr("Yes");
|
||||
}
|
||||
|
||||
return QVariant();
|
||||
@@ -70,11 +72,11 @@ QByteArray TrainingVoiceCommunicationDialogFilter::modelToJson() const
|
||||
QJsonObject inner;
|
||||
const TvcConfig& config = m_sourceModel->getRowData(sourceRow);
|
||||
|
||||
inner[QLatin1String("isGlobal")] = !config.exerciseId().is_set();
|
||||
inner[QLatin1String("info")] = QString::fromStdString(config.info());
|
||||
inner[QLatin1String("radioCircuit")] = QString::fromStdString(config.radioCircuit());
|
||||
inner[QLatin1String("recording")] = config.recording();
|
||||
inner[QLatin1String("tetraChannelId")] = config.tetraChannelId();
|
||||
inner[QLatin1String("isGlobal")] = !config.exerciseId.has_value();
|
||||
inner[QLatin1String("info")] = QString::fromStdString(config.info);
|
||||
inner[QLatin1String("radioCircuit")] = QString::fromStdString(config.radioCircuit);
|
||||
inner[QLatin1String("recording")] = config.recording;
|
||||
inner[QLatin1String("tetraChannelId")] = config.tetraChannelId;
|
||||
arr += inner;
|
||||
}
|
||||
|
||||
@@ -98,14 +100,14 @@ TrainingVoiceCommunicationDialogModel::jsonToTvcConfigVector(const QByteArray& c
|
||||
ModifyTvcConfigRequest config;
|
||||
|
||||
if (!obj.contains(QLatin1String("isGlobal")) || !obj[QLatin1String("isGlobal")].toBool())
|
||||
config.exerciseId(m_exerciseId);
|
||||
config.id(0);
|
||||
config.info(obj[QLatin1String("info")].toString().toStdString());
|
||||
config.radioCircuit(obj[QLatin1String("radioCircuit")].toString().toStdString());
|
||||
config.recording(obj[QLatin1String("recording")].toBool());
|
||||
config.tetraChannelId(obj[QLatin1String("tetraChannelId")].toInt());
|
||||
config.exerciseId = m_exerciseId;
|
||||
config.id = 0;
|
||||
config.info = obj[QLatin1String("info")].toString().toStdString();
|
||||
config.radioCircuit = obj[QLatin1String("radioCircuit")].toString().toStdString();
|
||||
config.recording = obj[QLatin1String("recording")].toBool();
|
||||
config.tetraChannelId = obj[QLatin1String("tetraChannelId")].toInt();
|
||||
|
||||
INFO_LOG(m_logger) << "insertRow: " << config.radioCircuit() << " tvcChannelId=" << config.tetraChannelId();
|
||||
INFO_LOG(m_logger) << "insertRow: " << config.radioCircuit << " tvcChannelId=" << config.tetraChannelId;
|
||||
result.push_back(std::move(config));
|
||||
}
|
||||
return result;
|
||||
@@ -123,7 +125,7 @@ bool TrainingVoiceCommunicationDialogFilter::filterAcceptsRow(int sourceRow, con
|
||||
{
|
||||
TvcConfig tvcConfig = m_sourceModel->getRowData(sourceRow);
|
||||
|
||||
if (tvcConfig.exerciseId().is_set() && tvcConfig.exerciseId().get() != m_exerciseId)
|
||||
if (tvcConfig.exerciseId.has_value() && tvcConfig.exerciseId.get() != m_exerciseId)
|
||||
return false;
|
||||
|
||||
return LtsColumnFilterProxyModel::filterAcceptsRow(sourceRow, sourceParent);
|
||||
|
||||
Reference in new issue
Block a user