SWMMVis  6.0.0-alpha.4
Qt6/C++ GIS-based graphical user interface for the SWMMVis engine (6.0.0-alpha.4)
Loading...
Searching...
No Matches
pollutantlistmodel.h
Go to the documentation of this file.
1
8#ifndef OPENSWMMVIS_UI_MODELS_POLLUTANTLISTMODEL_H
9#define OPENSWMMVIS_UI_MODELS_POLLUTANTLISTMODEL_H
10
11#include <QAbstractListModel>
12#include <QPointer>
13
14namespace openswmmvis::pollutant {
15class PollutantProvider;
16class PollutantRegistry;
17}
18
19namespace openswmmvis::ui {
20
21class PollutantListModel : public QAbstractListModel
22{
23 Q_OBJECT
24public:
25 explicit PollutantListModel(QObject *parent = nullptr);
27
30
31 openswmmvis::pollutant::PollutantProvider *providerAt(int row) const;
32
33 int rowCount(const QModelIndex &parent = {}) const override;
34 QVariant data(const QModelIndex &index, int role = Qt::DisplayRole) const override;
35 QVariant headerData(int section, Qt::Orientation orientation,
36 int role = Qt::DisplayRole) const override;
37 Qt::ItemFlags flags(const QModelIndex &index) const override;
38 bool setData(const QModelIndex &index, const QVariant &value,
39 int role = Qt::EditRole) override;
40
41private slots:
42 void onProviderAdded_(openswmmvis::pollutant::PollutantProvider *p);
43 void onProviderAboutToBeRemoved_(openswmmvis::pollutant::PollutantProvider *p);
44 void onProviderRenamed_(openswmmvis::pollutant::PollutantProvider *p,
45 const QString &prev, const QString &now);
46 void onProviderParamsChanged_(openswmmvis::pollutant::PollutantProvider *p);
47
48private:
50
51 QPointer<openswmmvis::pollutant::PollutantRegistry> m_registry;
52};
53
54} // namespace openswmmvis::ui
55
56#endif // OPENSWMMVIS_UI_MODELS_POLLUTANTLISTMODEL_H
Definition pollutantprovider.h:29
Definition pollutantregistry.h:24
Definition pollutantlistmodel.h:22
openswmmvis::pollutant::PollutantRegistry * registry() const noexcept
Definition pollutantlistmodel.cpp:43
int rowCount(const QModelIndex &parent={}) const override
Definition pollutantlistmodel.cpp:55
openswmmvis::pollutant::PollutantProvider * providerAt(int row) const
Definition pollutantlistmodel.cpp:48
bool setData(const QModelIndex &index, const QVariant &value, int role=Qt::EditRole) override
Definition pollutantlistmodel.cpp:96
Qt::ItemFlags flags(const QModelIndex &index) const override
Definition pollutantlistmodel.cpp:90
QVariant headerData(int section, Qt::Orientation orientation, int role=Qt::DisplayRole) const override
Definition pollutantlistmodel.cpp:82
QVariant data(const QModelIndex &index, int role=Qt::DisplayRole) const override
Definition pollutantlistmodel.cpp:61
void setRegistry(openswmmvis::pollutant::PollutantRegistry *registry)
Definition pollutantlistmodel.cpp:24
SWMM_FilePathRole role
Definition ioportabilitynormalizer.cpp:22
ArrowPlacement p
Definition linesymbollayer.cpp:27
int index
Position in m_quadRegions / m_quadReports.
Definition meshgenerator.cpp:153
Definition pollutantprovider.h:26
Definition openswmmvislayer.h:43
Definition aquiferprovider.h:21
QVector< int > parent
union-find
Definition pslgminsize.cpp:176