Files
qt-migration-legatus/qt6-after/qt6-migrated-legatus/Lts/Viewer/SituationMap/SymbologyGui/field_table_model.h
T
berrux-dev 598fc2560e 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
2026-10-20 09:36:57 +02:00

48 lines
1.4 KiB
C++
Executable File

/**
*
* @RDE_HEADER@
* Helper model for SymbolModificationWidget
* $Id$
* $HeadURL$
* $Author$
*/
#pragma once
#include <QAbstractTableModel>
#include <SituationMap/MapObjects/participant.h>
namespace AdvancedSymbology
{
namespace Gui
{
class FieldTableModel : public QAbstractTableModel
{
Q_OBJECT
public:
using QAbstractTableModel::QAbstractTableModel;
int columnCount(const QModelIndex &parent = QModelIndex()) const override;
int rowCount(const QModelIndex &parent = QModelIndex()) const override;
QVariant headerData(int section, Qt::Orientation orientation, int role = Qt::DisplayRole) const override;
QVariant data(const QModelIndex &index, int role = Qt::DisplayRole) const override;
const QMap<QString, QVariant> &fieldAttrMap() const { return m_fieldValueMap; }
bool setFieldAttrMap(const QMap<QString, QVariant> &fieldAttrMap);
void setFieldAttribute(const QString &key, const QString &value);
void setFieldAttribute(SituationMap::Participant::TextModifier textMod, const QString &value);
void removeFieldAttrMap(const QString &key);
QString fieldAttribute(const QString &key) const;
QString fieldAttribute(SituationMap::Participant::TextModifier textMod);
private:
static QString participantAttributeKey(SituationMap::Participant::TextModifier textMod);
private:
QStringList m_fieldKeys;
QMap<QString, QVariant> m_fieldValueMap;
}; // FieldTableModel
} // namespace Gui
} // namespace AdvancedSymbology