Files
qt-migration-legatus/qt6-after/qt6-migrated-legatus/Lts/Plugins/SituationMapPlugin/Gui/SituationMap/layers_model.h
T
torstenandCopilot 7a6be7474e Qt6 migration: Fix BUILD_RTI=OFF build errors in TrainingAreaBase
- training_area_telegrams.cpp: Fixed QJsonObject initializer syntax (Qt6 requires {{}} not ({}))
- training_area_telegrams.cpp: Fixed fromJson() methods to access m_* members directly
- training_area_telegrams.cpp: Fixed brace mismatches in multiple toJson() methods
- training_area_telegrams.h: Changed Header struct to public members for consistency
- tx_mixin.cpp: Fixed getEquipmentNumber() template for direct member access
- lts_coordinate.cpp: Added missing #include <iomanip>
- MIGRATION_STATUS.md: Added migration progress tracking document

C++17 constraint enforced due to RTI Connext DDS 7.7.0 incompatibility with C++20+

Build status: BUILD_RTI=OFF successful (0 errors, warnings only)

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
2026-08-23 20:49:23 +02:00

72 lines
1.8 KiB
C++
Executable File

#pragma once
#include <Common/situation_map_logging.h>
#include <Map/map.h>
#include <QtCore/QAbstractTableModel>
#include <LtsSession/lts_session.h>
namespace SituationMap
{
struct LayerInfo
{
QString layerName;
QString displayName;
LayerType layerType = LayerType::Undefined;
int index = -1;
int opacity = 0;
int brightness = 0;
int contrast = 0;
int gamma = 0;
bool isVisible = false;
};
class LayersModel : public QAbstractTableModel
{
Q_OBJECT
public:
enum Columns
{
Layer,
Opacity,
Brightness,
Contrast,
Gamma
};
explicit LayersModel(LtsSession::LtsSession *session, QObject *parent = nullptr);
bool initModel(Map *situationMap);
QVariant data(const QModelIndex &, int) const override final;
bool setData(const QModelIndex &index, const QVariant &value, int role) override;
Qt::ItemFlags flags(const QModelIndex &index) const override;
int rowCount(const QModelIndex &parent) const override final;
int columnCount(const QModelIndex &parent) const override final;
QVariant headerData(int section, Qt::Orientation orientation, int role) const override final;
LayerInfo getRowData(int row) const;
bool insertRow(const LayerInfo &item);
QModelIndex moveRow(const QModelIndex &sourceIndex, int destinationRow);
bool canBeMovedUp(const QModelIndex &idx) const;
bool canBeMovedDown(const QModelIndex &idx) const;
QStringList orderLayerNames() const;
bool isDisplayNameInFilter(const QString &displayName);
Q_SIGNALS:
void layerDataChanged(const QString &layerName, int newValue, int column);
void isVisibleChanged(const QString &layerName, bool isVisible);
private:
NGL::INGLLogger &m_logger;
LtsSession::LtsSession *m_session{nullptr};
QVector<LayerInfo> m_vecData;
QStringList m_layerDisplayNameFilterList{};
};
}