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
+9
@@ -5,6 +5,15 @@
|
||||
# Created by Mike Wille, SLSE, 2016-05-05
|
||||
#
|
||||
|
||||
# Build this target as separate translation units (NOT a unity build). It links the
|
||||
# ddsftc INTERFACE target, which propagates generic_ftc.cpp /
|
||||
# generic_ftc_threading.cpp as INTERFACE sources (legacy design: consumers compile
|
||||
# the generic FTC implementation themselves, one TU per file, hidden visibility).
|
||||
# A unity build concatenates those .cpp's into this target's single TU, and LTO
|
||||
# (USE_IPO) then reports "multiple definition of Threading::..." from the same
|
||||
# object. Separate TUs restore the legacy per-file structure (behavior-neutral).
|
||||
set(CMAKE_UNITY_BUILD FALSE)
|
||||
|
||||
# Make ${Qt6_Widgets} optional
|
||||
if(QT6_GUI_AVAILABLE AND TARGET Qt6::Widgets)
|
||||
set(Qt6_Widgets ${Qt6_Widgets})
|
||||
|
||||
+6
-6
@@ -41,7 +41,7 @@ ChargeEditDialog::ChargeEditDialog(const int chargeId,
|
||||
}});
|
||||
|
||||
setOnlineHelpFilename(QStringLiteral("Administrator-ChargeEdit"));
|
||||
m_chargeType.id(chargeId);
|
||||
m_chargeType.id = chargeId;
|
||||
}
|
||||
|
||||
ChargeEditDialog::~ChargeEditDialog()
|
||||
@@ -60,7 +60,7 @@ bool ChargeEditDialog::init()
|
||||
!m_ftc->enableUpdateChargeNames())
|
||||
return false;
|
||||
|
||||
m_chargeType = dtc->chargeType(m_chargeType.id());
|
||||
m_chargeType = dtc->chargeType(m_chargeType.id);
|
||||
loadUiValues();
|
||||
|
||||
return true;
|
||||
@@ -69,9 +69,9 @@ bool ChargeEditDialog::init()
|
||||
void ChargeEditDialog::loadUiValues()
|
||||
{
|
||||
|
||||
m_ui->leLongName->setText(QString::fromStdString(m_chargeType.name()));
|
||||
m_ui->leShortName->setText(QString::fromStdString(m_chargeType.shortName()));
|
||||
m_ui->lbPredefinedName->setText(QString::fromStdString(m_chargeType.predefinedName()));
|
||||
m_ui->leLongName->setText(QString::fromStdString(m_chargeType.name));
|
||||
m_ui->leShortName->setText(QString::fromStdString(m_chargeType.shortName));
|
||||
m_ui->lbPredefinedName->setText(QString::fromStdString(m_chargeType.predefinedName));
|
||||
retranslate();
|
||||
}
|
||||
|
||||
@@ -93,7 +93,7 @@ void ChargeEditDialog::retranslate()
|
||||
|
||||
bool ChargeEditDialog::apply()
|
||||
{
|
||||
ProjectDataManagement::UpdateChargeNamesRequest req(m_chargeType.id(),m_ui->leLongName->text().toStdString(),m_ui->leShortName->text().toStdString());
|
||||
ProjectDataManagement::UpdateChargeNamesRequest req(m_chargeType.id,m_ui->leLongName->text().toStdString(),m_ui->leShortName->text().toStdString());
|
||||
return m_requestHelper->startSingleRequest([req, this]()
|
||||
{
|
||||
return m_ftc->updateChargeNamesRequest(req, this);
|
||||
|
||||
+7
-11
@@ -4,6 +4,13 @@
|
||||
#pragma once
|
||||
|
||||
#include <memory>
|
||||
#include <LtsWidgets/lts_dialog.h>
|
||||
#include <ProjectDataManagement/pdm_ftc.h>
|
||||
#include <ProjectDataManagement/logger.h>
|
||||
|
||||
namespace Ui {
|
||||
class ChargeEditDialog;
|
||||
}
|
||||
|
||||
namespace Core {
|
||||
class FunctionReplyObject;
|
||||
@@ -25,17 +32,6 @@ namespace ProjectDataManagement
|
||||
struct ChargeType;
|
||||
#endif
|
||||
|
||||
namespace Interface {
|
||||
namespace Ftc {
|
||||
class UpdateChargeNamesReplyHandler;
|
||||
}
|
||||
}
|
||||
|
||||
// Forward declaration - LtsWidgets::LtsDialog wird in CPP definiert
|
||||
namespace LtsWidgets {
|
||||
class LtsDialog;
|
||||
}
|
||||
|
||||
#ifdef BUILD_WITH_EXTERNAL_DDS
|
||||
|
||||
class ChargeEditDialog : public LtsWidgets::LtsDialog
|
||||
|
||||
+6
-3
@@ -15,9 +15,11 @@
|
||||
#include <QtWidgets/QTreeView>
|
||||
#include <LtsSession/lts_session.h>
|
||||
#include <LtsUtils/LtsUtilsGui/LtsUtilsGuiDds/request_helper.h>
|
||||
#include <NGLLogger/NGLLoggerBootstrap.h>
|
||||
|
||||
#include <PluginInterfaces/gui_plugin_interface.h>
|
||||
#include <FileManagement/flm_translation.h>
|
||||
#include <FileManagement/flm_explorer_gui_plugin_interface.h>
|
||||
|
||||
#include <QtCore/QJsonArray>
|
||||
#include <QtCore/QJsonObject>
|
||||
@@ -34,6 +36,7 @@ ChargeTableDialog::ChargeTableDialog(QWidget *parent, bool organiser)
|
||||
, m_requestHelper(new LtsUtils::RequestHelper(this))
|
||||
, m_model(nullptr)
|
||||
, m_isOrganiser(organiser)
|
||||
, m_logger(NGL::NGLLoggerBootstrap::getNGLRootLogger())
|
||||
{
|
||||
m_ui->setupUi(this);
|
||||
|
||||
@@ -215,11 +218,11 @@ void ChargeTableDialog::onEditCharge()
|
||||
const QModelIndex idx = m_ui->widget->currentIndex();
|
||||
const ProjectDataManagement::ChargeType ct = m_model->getRowData(idx.row());
|
||||
|
||||
if (ct.id() <= 0)
|
||||
if (ct.id <= 0)
|
||||
return;
|
||||
|
||||
ChargeEditDialog *dialog = new ChargeEditDialog(ct.id(), m_session, this);
|
||||
const QString identifier = QLatin1String("EditCharge") + QString::number(ct.id());
|
||||
ChargeEditDialog *dialog = new ChargeEditDialog(ct.id, m_session, this);
|
||||
const QString identifier = QLatin1String("EditCharge") + QString::number(ct.id);
|
||||
|
||||
addDialog(dialog, menuGroup(), identifier, LtsWidgets::LayoutArea::eDialogTab);
|
||||
|
||||
|
||||
+8
-22
@@ -6,6 +6,14 @@
|
||||
#include <memory>
|
||||
#include <vector>
|
||||
#include <QtCore/QSet>
|
||||
#include <LtsWidgets/lts_dialog.h>
|
||||
#include "charge_table_model.h"
|
||||
#include <ProjectDataManagement/pdm_ftc.h>
|
||||
#include <ProjectDataManagement/logger.h>
|
||||
|
||||
namespace Ui {
|
||||
class ChargeTableDialog;
|
||||
}
|
||||
|
||||
namespace Core {
|
||||
class FunctionReplyObject;
|
||||
@@ -26,28 +34,6 @@ class ForeignGuiInterface;
|
||||
namespace ProjectDataManagement
|
||||
{
|
||||
|
||||
#ifdef BUILD_WITH_EXTERNAL_DDS
|
||||
// Forward declarations for external dependencies
|
||||
struct GearClass;
|
||||
struct ChargeType;
|
||||
#else
|
||||
// Forward declarations for external dependencies
|
||||
struct GearClass;
|
||||
struct ChargeType;
|
||||
#endif
|
||||
|
||||
namespace Interface {
|
||||
namespace Ftc {
|
||||
class UpdateChargeTypeReplyHandler;
|
||||
class UpdateChargeNamesReplyHandler;
|
||||
}
|
||||
}
|
||||
|
||||
// Forward declaration - LtsWidgets::LtsDialog wird in CPP definiert
|
||||
namespace LtsWidgets {
|
||||
class LtsDialog;
|
||||
}
|
||||
|
||||
#ifdef BUILD_WITH_EXTERNAL_DDS
|
||||
|
||||
class ChargeTableDialog : public LtsWidgets::LtsDialog
|
||||
|
||||
+26
-24
@@ -3,6 +3,7 @@
|
||||
|
||||
|
||||
#include "charge_table_model.h"
|
||||
#include <NGLLogger/NGLLoggerBootstrap.h>
|
||||
|
||||
#ifdef BUILD_WITH_EXTERNAL_DDS
|
||||
|
||||
@@ -53,6 +54,7 @@ ChargeTableDialogModel::ChargeTableDialogModel(bool isOrganiser, QObject *parent
|
||||
parent)
|
||||
, m_dtc(nullptr)
|
||||
, m_isOrganiser(isOrganiser)
|
||||
, m_logger(NGL::NGLLoggerBootstrap::getNGLRootLogger())
|
||||
{}
|
||||
|
||||
ChargeTableDialogModel::~ChargeTableDialogModel()
|
||||
@@ -66,11 +68,11 @@ bool ChargeTableDialogModel::initModel(const std::shared_ptr<ProjectDataManageme
|
||||
this, &ChargeTableDialogModel::onDataChanged);
|
||||
m_dtc->chargeTypes([this](const ProjectDataManagement::ChargeType &ct)
|
||||
{
|
||||
if (!m_isOrganiser && !m_dtc->isVisible(ct.id()))
|
||||
if (!m_isOrganiser && !m_dtc->isVisible(ct.id))
|
||||
return;
|
||||
insertRow(ct);
|
||||
if (m_isOrganiser && m_dtc->isVisible(ct.id()))
|
||||
m_visibleCharges.insert(ct.id());
|
||||
if (m_isOrganiser && m_dtc->isVisible(ct.id))
|
||||
m_visibleCharges.insert(ct.id);
|
||||
});
|
||||
|
||||
return true;
|
||||
@@ -96,19 +98,19 @@ QVariant ChargeTableDialogModel::data(const QModelIndex &index, int role) const
|
||||
if (m_isOrganiser)
|
||||
{
|
||||
if (index.column() == IsVisible)
|
||||
return (m_visibleCharges.contains(ct.id()) ? Qt::Checked : Qt::Unchecked);
|
||||
return (m_visibleCharges.contains(ct.id) ? Qt::Checked : Qt::Unchecked);
|
||||
return QVariant();
|
||||
}
|
||||
|
||||
|
||||
|
||||
qint32 tasCode = ct.id();
|
||||
qint32 tasCode = ct.id;
|
||||
|
||||
|
||||
if (tasCode < 2000)
|
||||
{
|
||||
if (index.column() == IsVisible)
|
||||
return m_visibleCharges.contains(ct.id()) ? Qt::Checked : Qt::Unchecked;
|
||||
return m_visibleCharges.contains(ct.id) ? Qt::Checked : Qt::Unchecked;
|
||||
|
||||
|
||||
if (tasCode >= 1 && tasCode <= 46 && tasCode != 25 && tasCode != 30)
|
||||
@@ -133,7 +135,7 @@ QVariant ChargeTableDialogModel::data(const QModelIndex &index, int role) const
|
||||
|
||||
|
||||
|
||||
return m_visibleCharges.contains(ct.id()) ? Qt::Checked : Qt::Unchecked;
|
||||
return m_visibleCharges.contains(ct.id) ? Qt::Checked : Qt::Unchecked;
|
||||
}
|
||||
|
||||
|
||||
@@ -192,19 +194,19 @@ QVariant ChargeTableDialogModel::data(const QModelIndex &index, int role) const
|
||||
{
|
||||
case IsVisible:
|
||||
if (m_isOrganiser)
|
||||
return m_dtc->isVisible(ct.id()) ? tr("Yes") : tr("No");
|
||||
return m_dtc->isVisible(ct.id) ? tr("Yes") : tr("No");
|
||||
else
|
||||
return ct.id();
|
||||
return ct.id;
|
||||
case Id:
|
||||
return QString::number(ct.id());
|
||||
return QString::number(ct.id);
|
||||
case PredefinedName:
|
||||
return QString::fromStdString(ct.predefinedName());
|
||||
return QString::fromStdString(ct.predefinedName);
|
||||
case ShortName:
|
||||
return QString::fromStdString(ct.shortName());
|
||||
return QString::fromStdString(ct.shortName);
|
||||
case LongName:
|
||||
return QString::fromStdString(ct.name());
|
||||
return QString::fromStdString(ct.name);
|
||||
case DisEntity:
|
||||
return QString::fromStdString(ct.disEntity());
|
||||
return QString::fromStdString(ct.disEntity);
|
||||
}
|
||||
}
|
||||
return QVariant();
|
||||
@@ -228,7 +230,7 @@ bool ChargeTableDialogModel::setData(const QModelIndex &idx, const QVariant &val
|
||||
|
||||
|
||||
ChargeType ct = getRowData(idx.row());
|
||||
QJsonDocument propsDoc = QJsonDocument::fromJson(QByteArray::fromStdString(ct.properties()));
|
||||
QJsonDocument propsDoc = QJsonDocument::fromJson(QByteArray::fromStdString(ct.properties));
|
||||
QJsonObject propsObj;
|
||||
if (propsDoc.isObject())
|
||||
propsObj = propsDoc.object();
|
||||
@@ -237,22 +239,22 @@ bool ChargeTableDialogModel::setData(const QModelIndex &idx, const QVariant &val
|
||||
if (bVal)
|
||||
{
|
||||
propsObj.remove(QLatin1String("suppressVisibility"));
|
||||
m_visibleCharges.insert(m_vecData.at(idx.row()).id());
|
||||
m_visibleCharges.insert(m_vecData.at(idx.row()).id);
|
||||
}
|
||||
else
|
||||
{
|
||||
propsObj.insert(QLatin1String("suppressVisibility"), true);
|
||||
m_visibleCharges.remove(m_vecData.at(idx.row()).id());
|
||||
m_visibleCharges.remove(m_vecData.at(idx.row()).id);
|
||||
}
|
||||
|
||||
|
||||
ct.properties(QJsonDocument(propsObj).toJson(QJsonDocument::Compact).toStdString());
|
||||
ct.properties = QJsonDocument(propsObj).toJson(QJsonDocument::Compact).toStdString();
|
||||
setRowData(idx.row(), ct);
|
||||
|
||||
if (m_dtc->isVisible(ct.id()) != bVal)
|
||||
m_differences.insert(ct.id());
|
||||
if (m_dtc->isVisible(ct.id) != bVal)
|
||||
m_differences.insert(ct.id);
|
||||
else
|
||||
m_differences.remove(ct.id());
|
||||
m_differences.remove(ct.id);
|
||||
|
||||
|
||||
emit chargeVisibilityChanged(!m_differences.isEmpty());
|
||||
@@ -260,7 +262,7 @@ bool ChargeTableDialogModel::setData(const QModelIndex &idx, const QVariant &val
|
||||
}
|
||||
else
|
||||
{
|
||||
const int tasCode = m_vecData.at(idx.row()).id();
|
||||
const int tasCode = m_vecData.at(idx.row()).id;
|
||||
if (tasCode < 1000)
|
||||
{
|
||||
if (bVal)
|
||||
@@ -390,7 +392,7 @@ QVector<ChargeType> ChargeTableDialogModel::getChargeTypesWithChangedVisibility(
|
||||
{
|
||||
QVector<ChargeType> cts;
|
||||
for (const auto &ct : m_vecData)
|
||||
if (m_differences.contains(ct.id()))
|
||||
if (m_differences.contains(ct.id))
|
||||
cts << ct;
|
||||
return cts;
|
||||
}
|
||||
@@ -411,7 +413,7 @@ bool ChargeTableDialogModel::isFiltered(const ProjectDataManagement::ChargeType
|
||||
{
|
||||
Q_UNUSED(modType);
|
||||
|
||||
return isFiltered(data.id());
|
||||
return isFiltered(data.id);
|
||||
}
|
||||
|
||||
QSet<int> ChargeTableDialogModel::selectedCharges() const
|
||||
|
||||
+1
-1
@@ -18,7 +18,7 @@ namespace ProjectDataManagement
|
||||
#ifdef BUILD_WITH_EXTERNAL_DDS
|
||||
inline uint qHash(GearClass gc)
|
||||
{
|
||||
return ::qHash(gc.underlying());
|
||||
return ::qHash(gc);
|
||||
}
|
||||
#endif
|
||||
|
||||
|
||||
+9
@@ -5,6 +5,15 @@
|
||||
# Created by Mike Wille, SLSE, 2016-05-05
|
||||
#
|
||||
|
||||
# Build this target as separate translation units (NOT a unity build). It links the
|
||||
# ddsftc INTERFACE target, which propagates generic_ftc.cpp /
|
||||
# generic_ftc_threading.cpp as INTERFACE sources (legacy design: consumers compile
|
||||
# the generic FTC implementation themselves, one TU per file, hidden visibility).
|
||||
# A unity build concatenates those .cpp's into this target's single TU, and LTO
|
||||
# (USE_IPO) then reports "multiple definition of Threading::..." from the same
|
||||
# object. Separate TUs restore the legacy per-file structure (behavior-neutral).
|
||||
set(CMAKE_UNITY_BUILD FALSE)
|
||||
|
||||
# Make ${Qt6_Widgets} optional
|
||||
if(QT6_GUI_AVAILABLE AND TARGET Qt6::Widgets)
|
||||
set(Qt6_Widgets ${Qt6_Widgets})
|
||||
|
||||
+2
-2
@@ -39,9 +39,9 @@ bool ChargeSelector::init(const std::shared_ptr<ProjectDataManagement::Interface
|
||||
const auto cfgc = dtc->chargesForGearClass(gearClass);
|
||||
for (const ChargeType &charge : cfgc)
|
||||
{
|
||||
if (LtsUtils::JsonObject::fromJson(charge.properties()).valueOr<bool>("suppressVisibility", false))
|
||||
if (LtsUtils::JsonObject::fromJson(charge.properties).valueOr<bool>("suppressVisibility", false))
|
||||
continue;
|
||||
const int chargeId = charge.id();
|
||||
const int chargeId = charge.id;
|
||||
QCheckBox *cb = new QCheckBox;
|
||||
cb->setText(dtc->trChargeTypeShortName(chargeId, true));
|
||||
cb->setChecked(preselectedCharges.contains(chargeId));
|
||||
|
||||
-1
@@ -9,7 +9,6 @@
|
||||
#include <QtCore/QSet>
|
||||
|
||||
#ifdef BUILD_WITH_EXTERNAL_DDS
|
||||
#include <ProjectDataManagement/pdm_gear_class.h>
|
||||
#endif
|
||||
|
||||
#include "ui_pdm_charge_selector.h"
|
||||
|
||||
+54
-54
@@ -74,10 +74,10 @@ void fillGearClass(QComboBox *cbx, GearClass gearClass, const std::shared_ptr<In
|
||||
const auto charges = dtc->chargesForGearClass(gearClass);
|
||||
for (const ChargeType &charge : charges)
|
||||
{
|
||||
QStandardItem *item = new QStandardItem(dtc->trChargeTypeShortName(charge.id(), true));
|
||||
item->setToolTip(dtc->trChargeTypeName(charge.id(), true));
|
||||
item->setData(charge.id(), CBUserRoles::Id);
|
||||
item->setData(QByteArray::fromStdString(charge.properties()), CBUserRoles::Properties);
|
||||
QStandardItem *item = new QStandardItem(dtc->trChargeTypeShortName(charge.id, true));
|
||||
item->setToolTip(dtc->trChargeTypeName(charge.id, true));
|
||||
item->setData(charge.id, CBUserRoles::Id);
|
||||
item->setData(QByteArray::fromStdString(charge.properties), CBUserRoles::Properties);
|
||||
itemModel->appendRow(item);
|
||||
}
|
||||
}
|
||||
@@ -93,10 +93,10 @@ void fillIgniterType(QComboBox *cbx, int chargeTypeId, const std::shared_ptr<Int
|
||||
const auto igniters = dtc->ignitersForChargeType(chargeTypeId);
|
||||
for (const IgniterType &igniter : igniters)
|
||||
{
|
||||
QStandardItem *item = new QStandardItem(dtc->trIgniterTypeShortName(igniter.id()));
|
||||
item->setToolTip(dtc->trIgniterTypeName(igniter.id()));
|
||||
item->setData(igniter.id(), CBUserRoles::Id);
|
||||
item->setData(QByteArray::fromStdString(igniter.properties()), CBUserRoles::Properties);
|
||||
QStandardItem *item = new QStandardItem(dtc->trIgniterTypeShortName(igniter.id));
|
||||
item->setToolTip(dtc->trIgniterTypeName(igniter.id));
|
||||
item->setData(igniter.id, CBUserRoles::Id);
|
||||
item->setData(QByteArray::fromStdString(igniter.properties), CBUserRoles::Properties);
|
||||
itemModel->appendRow(item);
|
||||
}
|
||||
itemModel->sort(0, Qt::AscendingOrder);
|
||||
@@ -117,10 +117,10 @@ void fillIgniterFunction(QComboBox *cbx, int chargeTypeId, int igniterTypeId, co
|
||||
const auto chargeTypeIgTypeIgFunMap = dtc->igniterFunctionsForChargeTypeIgniterType(chargeTypeId, igniterTypeId);
|
||||
for (const ChargeTypeIgniterTypeIgniterFunction &chargeTypeIgTypeIgFun : chargeTypeIgTypeIgFunMap)
|
||||
{
|
||||
QStandardItem *item = new QStandardItem(dtc->trIgniterFunctionShortName(chargeTypeIgTypeIgFun.igniterFunctionId()));
|
||||
item->setToolTip(dtc->trIgniterFunctionName(chargeTypeIgTypeIgFun.igniterFunctionId()));
|
||||
item->setData(chargeTypeIgTypeIgFun.igniterFunctionId(), CBUserRoles::Id);
|
||||
item->setData(QByteArray::fromStdString(chargeTypeIgTypeIgFun.properties()), CBUserRoles::Properties);
|
||||
QStandardItem *item = new QStandardItem(dtc->trIgniterFunctionShortName(chargeTypeIgTypeIgFun.igniterFunctionId));
|
||||
item->setToolTip(dtc->trIgniterFunctionName(chargeTypeIgTypeIgFun.igniterFunctionId));
|
||||
item->setData(chargeTypeIgTypeIgFun.igniterFunctionId, CBUserRoles::Id);
|
||||
item->setData(QByteArray::fromStdString(chargeTypeIgTypeIgFun.properties), CBUserRoles::Properties);
|
||||
itemModel->appendRow(item);
|
||||
}
|
||||
itemModel->sort(0, Qt::AscendingOrder);
|
||||
@@ -141,9 +141,9 @@ void fillLoadType(QComboBox *cbx, int chargeTypeId, const std::shared_ptr<Interf
|
||||
const auto loads = dtc->loadsForChargeType(chargeTypeId);
|
||||
for (const LoadType &load : loads)
|
||||
{
|
||||
QStandardItem *item = new QStandardItem(dtc->trLoadTypeShortName(load.id()));
|
||||
item->setToolTip(dtc->trLoadTypeName(load.id()));
|
||||
item->setData(load.id(), CBUserRoles::Id);
|
||||
QStandardItem *item = new QStandardItem(dtc->trLoadTypeShortName(load.id));
|
||||
item->setToolTip(dtc->trLoadTypeName(load.id));
|
||||
item->setData(load.id, CBUserRoles::Id);
|
||||
itemModel->appendRow(item);
|
||||
}
|
||||
itemModel->sort(0, Qt::AscendingOrder);
|
||||
@@ -164,9 +164,9 @@ void fillTargetType(QComboBox *cbx, const std::shared_ptr<Interface::Dtc> &dtc)
|
||||
const auto targeTypes = dtc->targetTypes();
|
||||
for (const TargetType &targetType : targeTypes)
|
||||
{
|
||||
QStandardItem *item = new QStandardItem(dtc->trTargetTypeName(targetType.id()));
|
||||
item->setToolTip(dtc->trTargetTypeName(targetType.id()));
|
||||
item->setData(targetType.id(), CBUserRoles::Id);
|
||||
QStandardItem *item = new QStandardItem(dtc->trTargetTypeName(targetType.id));
|
||||
item->setToolTip(dtc->trTargetTypeName(targetType.id));
|
||||
item->setData(targetType.id, CBUserRoles::Id);
|
||||
itemModel->appendRow(item);
|
||||
}
|
||||
itemModel->sort(0, Qt::AscendingOrder);
|
||||
@@ -184,10 +184,10 @@ void fillTargetSubType(QComboBox *cbx, int targetTypeId, const std::shared_ptr<I
|
||||
|
||||
for (const TargetSubType &targetSubType : targetSubTypeVec)
|
||||
{
|
||||
QStandardItem *item = new QStandardItem(dtc->trTargetSubTypeName(targetSubType.id()));
|
||||
item->setToolTip(dtc->trTargetSubTypeName(targetSubType.id()));
|
||||
item->setData(targetSubType.id(), TargetSubTypeRole::Id);
|
||||
item->setData(QString::fromStdString(targetSubType.abbreviation()), TargetSubTypeRole::Abbreviation);
|
||||
QStandardItem *item = new QStandardItem(dtc->trTargetSubTypeName(targetSubType.id));
|
||||
item->setToolTip(dtc->trTargetSubTypeName(targetSubType.id));
|
||||
item->setData(targetSubType.id, TargetSubTypeRole::Id);
|
||||
item->setData(QString::fromStdString(targetSubType.abbreviation), TargetSubTypeRole::Abbreviation);
|
||||
itemModel->appendRow(item);
|
||||
}
|
||||
itemModel->sort(0, Qt::AscendingOrder);
|
||||
@@ -204,10 +204,10 @@ void fillFirePurpose(QComboBox *cbx, const std::shared_ptr<Interface::Dtc> &dtc)
|
||||
const auto &firePurposes = dtc->firePurposes();
|
||||
for (const FirePurpose &firePurpose : firePurposes)
|
||||
{
|
||||
QStandardItem *item = new QStandardItem(dtc->trFirePurposeName(firePurpose.id()));
|
||||
item->setToolTip(dtc->trFirePurposeName(firePurpose.id()));
|
||||
item->setData(firePurpose.id(), CBUserRoles::Id);
|
||||
item->setData(QByteArray::fromStdString(firePurpose.properties()), CBUserRoles::Properties);
|
||||
QStandardItem *item = new QStandardItem(dtc->trFirePurposeName(firePurpose.id));
|
||||
item->setToolTip(dtc->trFirePurposeName(firePurpose.id));
|
||||
item->setData(firePurpose.id, CBUserRoles::Id);
|
||||
item->setData(QByteArray::fromStdString(firePurpose.properties), CBUserRoles::Properties);
|
||||
itemModel->appendRow(item);
|
||||
}
|
||||
itemModel->sort(0, Qt::AscendingOrder);
|
||||
@@ -232,70 +232,70 @@ bool fill(QComboBox *cbx, PdmComboBoxType type)
|
||||
const QString languages = LtsUtils::ProjectSettings::getInstance()->value(QStringLiteral("pdm"), QStringLiteral("EquipmentLanguages")).toString();
|
||||
const QStringList slLang = languages.split(QLatin1Char(','));
|
||||
QSet<int> alreadySeen;
|
||||
alreadySeen += Language::NoChange;
|
||||
cbx->addItem(toString(Language::NoChange), Language::NoChange);
|
||||
alreadySeen += static_cast<int>(LanguageConfiguration::LanguageConfiguration_NoChange);
|
||||
cbx->addItem(toString(LanguageConfiguration::LanguageConfiguration_NoChange), static_cast<int>(LanguageConfiguration::LanguageConfiguration_NoChange));
|
||||
for (const QString &r : slLang)
|
||||
{
|
||||
const int langId = r.toInt();
|
||||
if (alreadySeen.contains(langId))
|
||||
continue;
|
||||
alreadySeen += langId;
|
||||
cbx->addItem(toString(static_cast<LanguageConfiguration>(langId)), static_cast<LanguageConfiguration>(langId));
|
||||
cbx->addItem(toString(static_cast<LanguageConfiguration>(langId)), static_cast<int>(static_cast<LanguageConfiguration>(langId)));
|
||||
}
|
||||
break;
|
||||
}
|
||||
case PdmComboBoxType::CbOperationMode:
|
||||
{
|
||||
cbx->addItem(toString(OperationMode::NoChange), OperationMode::NoChange);
|
||||
cbx->addItem(toString(OperationMode::Normal), OperationMode::Normal);
|
||||
cbx->addItem(toString(OperationMode::BeStill), OperationMode::BeStill);
|
||||
cbx->addItem(toString(OperationMode::OperationMode_NoChange), static_cast<int>(OperationMode::OperationMode_NoChange));
|
||||
cbx->addItem(toString(OperationMode::OperationMode_Normal), static_cast<int>(OperationMode::OperationMode_Normal));
|
||||
cbx->addItem(toString(OperationMode::OperationMode_BeStill), static_cast<int>(OperationMode::OperationMode_BeStill));
|
||||
break;
|
||||
}
|
||||
case PdmComboBoxType::CbModeHelmet:
|
||||
case PdmComboBoxType::CbModeVest:
|
||||
{
|
||||
cbx->addItem(toString(WphMode::NoChange), WphMode::NoChange);
|
||||
cbx->addItem(toString(WphMode::Without), WphMode::Without);
|
||||
cbx->addItem(toString(WphMode::With), WphMode::With);
|
||||
cbx->addItem(toString(WphMode::WphMode_NoChange), static_cast<int>(WphMode::WphMode_NoChange));
|
||||
cbx->addItem(toString(WphMode::WphMode_Without), static_cast<int>(WphMode::WphMode_Without));
|
||||
cbx->addItem(toString(WphMode::WphMode_With), static_cast<int>(WphMode::WphMode_With));
|
||||
break;
|
||||
}
|
||||
case PdmComboBoxType::CbPersonalProtection:
|
||||
{
|
||||
cbx->addItem(toString(PersonalProtection::NoChange), PersonalProtection::NoChange);
|
||||
cbx->addItem(toString(PersonalProtection::Without), PersonalProtection::Without);
|
||||
cbx->addItem(toString(PersonalProtection::Suit), PersonalProtection::Suit);
|
||||
cbx->addItem(toString(PersonalProtection::SuitAndGloves), PersonalProtection::SuitAndGloves);
|
||||
cbx->addItem(toString(PersonalProtection::PersonalProtection_NoChange), static_cast<int>(PersonalProtection::PersonalProtection_NoChange));
|
||||
cbx->addItem(toString(PersonalProtection::PersonalProtection_Without), static_cast<int>(PersonalProtection::PersonalProtection_Without));
|
||||
cbx->addItem(toString(PersonalProtection::PersonalProtection_Suit), static_cast<int>(PersonalProtection::PersonalProtection_Suit));
|
||||
cbx->addItem(toString(PersonalProtection::PersonalProtection_SuitAndGloves), static_cast<int>(PersonalProtection::PersonalProtection_SuitAndGloves));
|
||||
break;
|
||||
}
|
||||
case PdmComboBoxType::CbProtectionLevel:
|
||||
{
|
||||
cbx->addItem(toString(ProtectionLevel::NoChange), ProtectionLevel::NoChange);
|
||||
cbx->addItem(toString(ProtectionLevel::IdzBs), ProtectionLevel::IdzBs);
|
||||
cbx->addItem(toString(ProtectionLevel::IdzEs), ProtectionLevel::IdzEs);
|
||||
cbx->addItem(toString(ProtectionLevel::Ksk), ProtectionLevel::Ksk);
|
||||
cbx->addItem(toString(ProtectionLevel::SoldierWithBodyArmor), ProtectionLevel::SoldierWithBodyArmor);
|
||||
cbx->addItem(toString(ProtectionLevel::SoldierActor), ProtectionLevel::SoldierActor);
|
||||
cbx->addItem(toString(ProtectionLevel::ProtectionLevel_NoChange), static_cast<int>(ProtectionLevel::ProtectionLevel_NoChange));
|
||||
cbx->addItem(toString(ProtectionLevel::ProtectionLevel_IdzBs), static_cast<int>(ProtectionLevel::ProtectionLevel_IdzBs));
|
||||
cbx->addItem(toString(ProtectionLevel::ProtectionLevel_IdzEs), static_cast<int>(ProtectionLevel::ProtectionLevel_IdzEs));
|
||||
cbx->addItem(toString(ProtectionLevel::ProtectionLevel_Ksk), static_cast<int>(ProtectionLevel::ProtectionLevel_Ksk));
|
||||
cbx->addItem(toString(ProtectionLevel::ProtectionLevel_SoldierWithBodyArmor), static_cast<int>(ProtectionLevel::ProtectionLevel_SoldierWithBodyArmor));
|
||||
cbx->addItem(toString(ProtectionLevel::ProtectionLevel_SoldierActor), static_cast<int>(ProtectionLevel::ProtectionLevel_SoldierActor));
|
||||
break;
|
||||
}
|
||||
case PdmComboBoxType::CbHandgrenadeSearchMode:
|
||||
{
|
||||
cbx->addItem(toString(HandgrenadeSearchMode::NoChange), HandgrenadeSearchMode::NoChange);
|
||||
cbx->addItem(toString(HandgrenadeSearchMode::On), HandgrenadeSearchMode::On);
|
||||
cbx->addItem(toString(HandgrenadeSearchMode::Off), HandgrenadeSearchMode::Off);
|
||||
cbx->addItem(toString(HandgrenadeSearchMode::HandgrenadeSearchMode_NoChange), static_cast<int>(HandgrenadeSearchMode::HandgrenadeSearchMode_NoChange));
|
||||
cbx->addItem(toString(HandgrenadeSearchMode::HandgrenadeSearchMode_On), static_cast<int>(HandgrenadeSearchMode::HandgrenadeSearchMode_On));
|
||||
cbx->addItem(toString(HandgrenadeSearchMode::HandgrenadeSearchMode_Off), static_cast<int>(HandgrenadeSearchMode::HandgrenadeSearchMode_Off));
|
||||
break;
|
||||
}
|
||||
case PdmComboBoxType::CbInternationalMode:
|
||||
{
|
||||
cbx->addItem(toString(InternationalMode::InternationalMode_NoChange), InternationalMode::InternationalMode_NoChange);
|
||||
cbx->addItem(toString(InternationalMode::InternationalMode_On), InternationalMode::InternationalMode_On);
|
||||
cbx->addItem(toString(InternationalMode::InternationalMode_Off), InternationalMode::InternationalMode_Off);
|
||||
cbx->addItem(toString(InternationalMode::InternationalMode_NoChange), static_cast<int>(InternationalMode::InternationalMode_NoChange));
|
||||
cbx->addItem(toString(InternationalMode::InternationalMode_On), static_cast<int>(InternationalMode::InternationalMode_On));
|
||||
cbx->addItem(toString(InternationalMode::InternationalMode_Off), static_cast<int>(InternationalMode::InternationalMode_Off));
|
||||
break;
|
||||
}
|
||||
case PdmComboBoxType::CbABCProtectionMode:
|
||||
{
|
||||
cbx->addItem(toString(ABCProtectionMode::NoChange), ABCProtectionMode::NoChange);
|
||||
cbx->addItem(toString(ABCProtectionMode::On), ABCProtectionMode::On);
|
||||
cbx->addItem(toString(ABCProtectionMode::Off), ABCProtectionMode::Off);
|
||||
cbx->addItem(toString(ABCProtectionMode::ABCProtectionMode_NoChange), static_cast<int>(ABCProtectionMode::ABCProtectionMode_NoChange));
|
||||
cbx->addItem(toString(ABCProtectionMode::ABCProtectionMode_On), static_cast<int>(ABCProtectionMode::ABCProtectionMode_On));
|
||||
cbx->addItem(toString(ABCProtectionMode::ABCProtectionMode_Off), static_cast<int>(ABCProtectionMode::ABCProtectionMode_Off));
|
||||
break;
|
||||
}
|
||||
#endif // BUILD_WITH_EXTERNAL_DDS
|
||||
|
||||
+3
-3
@@ -38,9 +38,9 @@ enum class InternationalMode;
|
||||
enum class ABCProtectionMode;
|
||||
enum class PersonalProtection;
|
||||
enum class ProtectionLevel;
|
||||
enum class Language; // from training_area_telegrams.h
|
||||
enum class OperationMode; // from training_area_telegrams.h
|
||||
enum class WphMode; // from training_area_telegrams.h
|
||||
enum class LanguageConfiguration; // RTI enum in ProjectDataManagement (pdm_enums.hpp); legacy used LanguageConfiguration
|
||||
enum class OperationMode;
|
||||
enum class WphMode;
|
||||
#endif
|
||||
|
||||
|
||||
|
||||
+1
-1
@@ -68,7 +68,7 @@ bool ForeignGuiInterfaceImpl::fillBoobyTrapComboBox(QComboBox *cbx)
|
||||
|
||||
bool ForeignGuiInterfaceImpl::fillOffRouteMineComboBox(QComboBox *cbx)
|
||||
{
|
||||
return PdmComboBox::fill(cbx, ProjectDataManagement::GearClass::OffRouteMine, m_dtc);
|
||||
return PdmComboBox::fill(cbx, ProjectDataManagement::GearClass::GearClass_OffRouteMine, m_dtc);
|
||||
}
|
||||
|
||||
bool ForeignGuiInterfaceImpl::fillFunctionalAreaComboBox(QComboBox *cbx)
|
||||
|
||||
-1
@@ -7,7 +7,6 @@
|
||||
#include <ProjectDataManagement/pdm_dtc.h>
|
||||
|
||||
#ifdef BUILD_WITH_EXTERNAL_DDS
|
||||
#include <ProjectDataManagement/pdm_gear_class.h>
|
||||
#endif
|
||||
|
||||
namespace ProjectDataManagement
|
||||
|
||||
+6
-13
@@ -1,29 +1,22 @@
|
||||
|
||||
|
||||
|
||||
#pragma once
|
||||
|
||||
#include <memory>
|
||||
#include <ProjectDataManagement/pdm_dtc.h>
|
||||
#include <ProjectDataManagement/pdm_ftc.h>
|
||||
#include <PluginInterfaces/data_plugin_interface.h>
|
||||
|
||||
// Forward declarations for external DDS types
|
||||
namespace ProjectDataManagement
|
||||
{
|
||||
namespace Interface
|
||||
{
|
||||
class Dtc;
|
||||
class Ftc;
|
||||
}
|
||||
}
|
||||
|
||||
class ForeignDataInterface;
|
||||
|
||||
class DataInterface //: public DataPluginBase::Interface
|
||||
class DataInterface : public DataPluginBase::Interface
|
||||
{
|
||||
public:
|
||||
//using DataPluginBase::Interface::Interface;
|
||||
using DataPluginBase::Interface::Interface;
|
||||
|
||||
virtual std::shared_ptr<ProjectDataManagement::Interface::Dtc> getDtc() = 0;
|
||||
virtual std::shared_ptr<ProjectDataManagement::Interface::Ftc> getFtc() = 0;
|
||||
|
||||
};
|
||||
}
|
||||
}
|
||||
Reference in new issue
Block a user