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

Floating (non-modal) panel that collects the three things an inlet junction needs BEFORE it is created: an inlet design, a capture node, and a placement mode. More...

#include <QDialog>
#include <QPointer>
#include <QString>
#include <QVector>
#include <openswmm/engine/openswmm_callbacks.h>
Include dependency graph for inletjunctionsetupdialog.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

class  openswmmvis::ui::InletJunctionSetupDialog
 

Namespaces

namespace  openswmmvis
 
namespace  openswmmvis::ui
 

Detailed Description

Floating (non-modal) panel that collects the three things an inlet junction needs BEFORE it is created: an inlet design, a capture node, and a placement mode.

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

Decision D-G6 (INLET_EDITOR_AND_INLET_JUNCTION_GUI_PLAN_2026-09-05.md §5): ask first rather than insert-then-edit. The engine requires a design and a capture node for the node to be valid, so a half-configured inlet junction would fail validation on save — and the map tool has no way to "hold" an invalid node while the user fills in the property panel.

Non-modal (2026-09-10): the capture node can be picked ON THE MAP through the "…" button next to its combo (a NodePickSession swaps in a one-shot pick tool and restores the previous tool afterwards), which an application-modal dialog would block. Callers therefore allocate the dialog on the heap, connect accepted() and show() it; the split / convert runs from that slot, never inside a mouse handler.

The same dialog serves the Convert-To flow, which promotes an existing junction instead of splitting a conduit.