![]() |
SWMMVis
6.0.0-alpha.4
Qt6/C++ GIS-based graphical user interface for the SWMMVis engine (6.0.0-alpha.4)
|
Slice BQ Phase 6.7.3.4 — QAbstractTableModel over N TimeseriesProvider siblings; drives the editor dialog's left-pane grid. More...
#include <QAbstractTableModel>#include <QPointer>#include <QVector>Go to the source code of this file.
Classes | |
| class | openswmmvis::ui::TimeseriesTableModel |
Namespaces | |
| namespace | openswmmvis |
| namespace | openswmmvis::timeseries |
| namespace | openswmmvis::ui |
Slice BQ Phase 6.7.3.4 — QAbstractTableModel over N TimeseriesProvider siblings; drives the editor dialog's left-pane grid.
Layout modes (auto-selected from the bound providers' time grids):
points() array shares the same count + same QDateTime at every index): wide table with [Time | V0 | V1 | ... | V(N-1)]. One row per shared time stamp; each value column edits a separate provider. This is the layout the user asked for (one CSV → multiple sibling Tseries).[Time | Value]. The dialog surfaces a status hint when this happens. A future sub-phase can extend with a union-of-times pivot.Mutations go through QUndoCommand subclasses pushed to the optional undo stack (setUndoStack). When no stack is bound, mutations apply directly to the provider — still subject to the strict-monotone-time invariant; rejections surface via the provider's mutationRejected signal.
Read-only when any bound provider is in ExternalFile source mode (per Phase 6.7.3.4 spec — "grid greys out and the user is prompted to click Convert-to-Inline").