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
Go to the documentation of this file.
1
26#ifndef OPENSWMMVIS_UI_DIALOGS_INLETJUNCTIONSETUPDIALOG_H
27#define OPENSWMMVIS_UI_DIALOGS_INLETJUNCTIONSETUPDIALOG_H
28
29#include <QDialog>
30#include <QPointer>
31#include <QString>
32#include <QVector>
33
34#include <openswmm/engine/openswmm_callbacks.h> // SWMM_Engine
35
36class QComboBox;
37class QDialogButtonBox;
38class QLabel;
40class NodePickSession;
41class SWMMModelLayer;
42
43namespace openswmmvis::ui {
44
45class InletJunctionSetupDialog : public QDialog
46{
47 Q_OBJECT
48
49public:
58 QVector<int> excludeNodes,
59 QWidget *parent = nullptr);
61
63 [[nodiscard]] QString inletDesign() const;
65 [[nodiscard]] QString captureNode() const;
67 [[nodiscard]] int placement() const;
68
73 void endCaptureNodePick();
74 [[nodiscard]] bool isPickingCaptureNode() const;
75
76private slots:
79 void updateOkEnabled();
82 void onDesignPickerClicked();
85 void onCaptureNodePicked(SWMMModelLayer *layer, const QString &name, int nodeIdx);
86
87private:
88 void refreshDesignItems(const QString &selected = {});
89 void refreshCaptureItems();
90 void setPickHint(const QString &text);
91
92 SWMMModelLayer *m_layer = nullptr;
93 QVector<int> m_exclude;
94
95 LabeledPickerCombo *m_designPicker = nullptr;
96 LabeledPickerCombo *m_capturePicker = nullptr;
97 QComboBox *m_placement = nullptr;
98 QLabel *m_pickHint = nullptr;
99 QDialogButtonBox *m_buttons = nullptr;
100 QPointer<NodePickSession> m_pick;
101};
102
103} // namespace openswmmvis::ui
104
105#endif // OPENSWMMVIS_UI_DIALOGS_INLETJUNCTIONSETUPDIALOG_H
Definition labeledcontrols.h:146
Definition nodepicksession.h:34
Renders the SWMM network elements (nodes, links, subcatchments, rain gages) for one OpenSWMMEngine mo...
Definition swmmmodellayer.h:133
Definition inletjunctionsetupdialog.h:46
bool isPickingCaptureNode() const
Definition inletjunctionsetupdialog.cpp:204
~InletJunctionSetupDialog() override
Definition inletjunctionsetupdialog.cpp:102
QString inletDesign() const
Definition inletjunctionsetupdialog.cpp:235
QString captureNode() const
Definition inletjunctionsetupdialog.cpp:240
void startCaptureNodePick()
Definition inletjunctionsetupdialog.cpp:176
int placement() const
Definition inletjunctionsetupdialog.cpp:245
void endCaptureNodePick()
Definition inletjunctionsetupdialog.cpp:194
Definition openswmmvislayer.h:43
QVector< int > parent
union-find
Definition pslgminsize.cpp:176
QString text
Definition queryparser.cpp:35
QString name
Definition sectionmodelbuilders.cpp:474