![]() |
SWMMVis
6.0.0-alpha.4
Qt6/C++ GIS-based graphical user interface for the SWMMVis engine (6.0.0-alpha.4)
|
#include <QVector>#include <QtGlobal>Go to the source code of this file.
Classes | |
| struct | openswmmvis::ui::RibbonGroupWidths |
Namespaces | |
| namespace | openswmmvis |
| namespace | openswmmvis::ui |
Enumerations | |
| enum class | openswmmvis::ui::RibbonMode { openswmmvis::ui::Collapsed = 0 , openswmmvis::ui::Compact = 1 , openswmmvis::ui::Full = 2 } |
Functions | |
| int | openswmmvis::ui::ribbonRowWidth (const QVector< RibbonGroupWidths > &groups, const QVector< RibbonMode > &modes, int spacing) |
| QVector< RibbonMode > | openswmmvis::ui::solveRibbonModes (int availableWidth, const QVector< RibbonGroupWidths > &groups, int spacing) |
| QVector< RibbonMode > | openswmmvis::ui::applyRibbonHysteresis (const QVector< RibbonMode > &previous, int availableWidth, const QVector< RibbonGroupWidths > &groups, int spacing, int deadBand=32) |
UI redesign iteration 2 (R2) — pure width solver for the captioned ribbon groups. Given how wide each group would be in each display mode, pick per-group modes that fit the available row width by demoting groups from the trailing end first (Full → Compact, then Compact → Collapsed), the way ArcGIS Pro sheds detail.
Pure functions over plain data — no widgets — so the demotion order, the two-pass shape and the promotion hysteresis are unit-testable headlessly.