![]() |
SWMMVis
6.0.0-alpha.4
Qt6/C++ GIS-based graphical user interface for the SWMMVis engine (6.0.0-alpha.4)
|
#include <QAbstractListModel>#include <QAbstractTableModel>#include <QObject>#include <QString>Go to the source code of this file.
Classes | |
| class | HydrographGroupListModel |
| class | HydrographRtkTableModel |
| class | HydrographIaTableModel |
| class | HydrographDecayTableModel |
Slice BS Phase 6.9.2 — hydrograph MVC layer.
Four QAbstractItem/Table/ListModel subclasses owned by SWMMModelLayer. Each is a thin Qt view onto the engine's [HYDROGRAPHS] / [RDII_DECAY] state and listens to SWMMModelLayer::hydrographChanged(name) so every subscribed view (HydrographGroupEditor, SWMMHydrographPropertyAdapter, Object Browser, NewDataObjectDialog, NodeCompoundEditDialog) stays in sync without polling.
Mutation is one-way: views call layer->applyHydrograph*() / applyRdiiDecay*(); the layer wraps the BS-02 C API and emits hydrographChanged(). The models themselves are read-only with respect to engine state — their setData() implementations forward to those apply* helpers and rely on the resulting signal for the refresh.
Per-(name, month) rebinding uses setContext() rather than per-key cached instances; only the editor needs (name, month)-specific views and only one at a time per tab.
See: docs/GUI_IMPLEMENTATION_PLAN.md Slice BS Phase 6.9.2.