20#ifndef PROCESSCOMPONENTSMODEL_H
21#define PROCESSCOMPONENTSMODEL_H
23#include <QAbstractTableModel>
26#include <QStyledItemDelegate>
28#include <openswmm/engine/openswmm_engine.h>
47 int rowCount(
const QModelIndex &
parent = QModelIndex())
const override;
49 QVariant
data(
const QModelIndex &
index,
int role)
const override;
50 bool setData(
const QModelIndex &
index,
const QVariant &value,
51 int role = Qt::EditRole)
override;
52 QVariant
headerData(
int section, Qt::Orientation orientation,
53 int role = Qt::DisplayRole)
const override;
54 Qt::ItemFlags
flags(
const QModelIndex &
index)
const override;
56 const QModelIndex &
parent = QModelIndex())
override;
66 int appendRow(
const QString &
id,
const QString &config);
67 QString
idAt(
int row)
const;
76 QString statusFor(
const Row &r)
const;
90 const QModelIndex &
index)
const override;
92 void setModelData(QWidget *editor, QAbstractItemModel *model,
93 const QModelIndex &
index)
const override;
Combo editor over the built-in catalogue, editable for free-form ids.
Definition processcomponentsmodel.h:85
void setModelData(QWidget *editor, QAbstractItemModel *model, const QModelIndex &index) const override
Definition processcomponentsmodel.cpp:288
void setEditorData(QWidget *editor, const QModelIndex &index) const override
Definition processcomponentsmodel.cpp:277
QWidget * createEditor(QWidget *parent, const QStyleOptionViewItem &option, const QModelIndex &index) const override
Definition processcomponentsmodel.cpp:260
Definition processcomponentsmodel.h:31
int commit(SWMM_Engine engine)
Apply staged edits to the engine. Returns the number of engine writes.
Definition processcomponentsmodel.cpp:195
void load(SWMM_Engine engine, const QString &modelDir)
Definition processcomponentsmodel.cpp:163
QString configAt(int row) const
Definition processcomponentsmodel.cpp:246
QString idAt(int row) const
Definition processcomponentsmodel.cpp:241
int appendRow(const QString &id, const QString &config)
Definition processcomponentsmodel.cpp:229
bool setData(const QModelIndex &index, const QVariant &value, int role=Qt::EditRole) override
Definition processcomponentsmodel.cpp:116
QVariant headerData(int section, Qt::Orientation orientation, int role=Qt::DisplayRole) const override
Definition processcomponentsmodel.cpp:133
bool removeRows(int row, int count, const QModelIndex &parent=QModelIndex()) override
Definition processcomponentsmodel.cpp:153
QVariant data(const QModelIndex &index, int role) const override
Definition processcomponentsmodel.cpp:85
static QList< KnownId > knownIds()
The engine's built-in catalogue (static for the process).
Definition processcomponentsmodel.cpp:26
Qt::ItemFlags flags(const QModelIndex &index) const override
Definition processcomponentsmodel.cpp:145
int rowCount(const QModelIndex &parent=QModelIndex()) const override
Definition processcomponentsmodel.cpp:49
int columnCount(const QModelIndex &parent=QModelIndex()) const override
Definition processcomponentsmodel.cpp:54
Column
Definition processcomponentsmodel.h:34
@ ColCount
Definition processcomponentsmodel.h:34
@ ColConfig
Definition processcomponentsmodel.h:34
@ ColId
Definition processcomponentsmodel.h:34
@ ColStatus
Definition processcomponentsmodel.h:34
bool isDirty() const
True when the rows differ from what load() read.
Definition processcomponentsmodel.cpp:186
SWMM_FilePathRole role
Definition ioportabilitynormalizer.cpp:22
hid_t id
Definition mesh2dh5reader.cpp:29
int index
Position in m_quadRegions / m_quadReports.
Definition meshgenerator.cpp:153
void * SWMM_Engine
Definition objectdefaultsapplier.h:19
QVector< int > parent
union-find
Definition pslgminsize.cpp:176
Definition processcomponentsmodel.h:36
QString description
Definition processcomponentsmodel.h:38
QString id
Definition processcomponentsmodel.h:37
bool implemented
Definition processcomponentsmodel.h:39