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
lidcontrollistmodel.h
Go to the documentation of this file.
1
8#ifndef OPENSWMMVIS_UI_MODELS_LIDCONTROLLISTMODEL_H
9#define OPENSWMMVIS_UI_MODELS_LIDCONTROLLISTMODEL_H
10
11#include <QAbstractListModel>
12#include <QPointer>
13
14namespace openswmmvis::lid {
15class LidControlProvider;
16class LidControlRegistry;
17}
18
19namespace openswmmvis::ui {
20
21class LidControlListModel : public QAbstractListModel
22{
23 Q_OBJECT
24public:
25 explicit LidControlListModel(QObject *parent = nullptr);
27
30
31 openswmmvis::lid::LidControlProvider *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::lid::LidControlProvider *p);
43 void onProviderAboutToBeRemoved_(openswmmvis::lid::LidControlProvider *p);
44 void onProviderRenamed_(openswmmvis::lid::LidControlProvider *p,
45 const QString &prev, const QString &now);
46 void onProviderParamsChanged_(openswmmvis::lid::LidControlProvider *p);
47
48private:
49 int indexOf_(openswmmvis::lid::LidControlProvider *p) const;
50
51 QPointer<openswmmvis::lid::LidControlRegistry> m_registry;
52};
53
54} // namespace openswmmvis::ui
55
56#endif // OPENSWMMVIS_UI_MODELS_LIDCONTROLLISTMODEL_H
Definition lidcontrolprovider.h:26
Definition lidcontrolregistry.h:26
Definition lidcontrollistmodel.h:22
int rowCount(const QModelIndex &parent={}) const override
Definition lidcontrollistmodel.cpp:66
openswmmvis::lid::LidControlRegistry * registry() const noexcept
Definition lidcontrollistmodel.cpp:54
QVariant headerData(int section, Qt::Orientation orientation, int role=Qt::DisplayRole) const override
Definition lidcontrollistmodel.cpp:88
QVariant data(const QModelIndex &index, int role=Qt::DisplayRole) const override
Definition lidcontrollistmodel.cpp:72
bool setData(const QModelIndex &index, const QVariant &value, int role=Qt::EditRole) override
Definition lidcontrollistmodel.cpp:102
Qt::ItemFlags flags(const QModelIndex &index) const override
Definition lidcontrollistmodel.cpp:96
void setRegistry(openswmmvis::lid::LidControlRegistry *registry)
Definition lidcontrollistmodel.cpp:35
openswmmvis::lid::LidControlProvider * providerAt(int row) const
Definition lidcontrollistmodel.cpp:59
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 lidcontrolprovider.h:23
Definition openswmmvislayer.h:43
Definition aquiferprovider.h:21
QVector< int > parent
union-find
Definition pslgminsize.cpp:176