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
streeteditordialog.h File Reference

Three-pane CRUD editor for SWMM street cross-sections ([STREETS]). More...

#include <QDialog>
#include <QPointer>
#include <QWidget>
Include dependency graph for streeteditordialog.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

class  openswmmvis::ui::StreetSectionPreview
 Lightweight schematic preview of a street cross-section. Draws the road crown, curb, depressed gutter and (optionally) backing from a StreetProvider's parameters. No Q_OBJECT — plain paintEvent widget. More...
 
class  openswmmvis::ui::StreetEditorDialog
 

Namespaces

namespace  openswmmvis
 
namespace  openswmmvis::street
 
namespace  openswmmvis::ui
 

Detailed Description

Three-pane CRUD editor for SWMM street cross-sections ([STREETS]).

Author
Caleb Buahin caleb.nosp@m..bua.nosp@m.hin@g.nosp@m.mail.nosp@m..com
Date
2026
License\n GPL-3.0-or-later

Mirrors TransectEditorDialog's role and entry points (createNew / pickStreet) but a street is parametric, so the middle pane is a field form (ten legacy TStreet parameters + sides) rather than a station table, and the right pane is a schematic section preview rather than a point chart.

Layout (left → right):

┌──────────────┬───────────────────────────┬────────────────────────┐ │ Streets │ Name (QLineEdit) │ Section preview │ │ list view │ Road Width / Curb Height │ (gutter + crown + │ │ │ Cross Slope / Roughness │ backing schematic) │ │ [+ New] │ Gutter Depression / Width│ │ │ [- Delete] │ Sides (1 / 2) │ │ │ │ Backing W / Slope / n │ │ └──────────────┴───────────────────────────┴────────────────────────┘

MVC contract — every mutation goes through StreetProvider; subscribed registry signals keep the list, field form, and preview in lock-step.

Legacy parity: EPA SWMM-GUI Dstreet.pas (TStreetEditorForm) + the combo/edit-button launch path in Dxsect.pas (TsectBtnClick).