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
profileoptionsdialog.h
Go to the documentation of this file.
1
12#ifndef PROFILE_OPTIONS_DIALOG_H
13#define PROFILE_OPTIONS_DIALOG_H
14
15#include <QDialog>
16#include <QPointer>
17
23class QAbstractItemDelegate;
24class QAbstractItemModel;
25class QStandardItemModel;
26class QTabWidget;
27class QTreeView;
28
29class ProfileOptionsDialog : public QDialog
30{
31 Q_OBJECT
32public:
34 AnimationController *anim = nullptr,
35 SWMMVisProjectWindow *projectWindow = nullptr,
36 QWidget *parent = nullptr);
37
42
43public slots:
46 void refreshSources();
47
48signals:
55
61 void addOutputFileRequested(const QString &path);
62
63private:
64 void buildDisplayTab();
65 void buildSourcesTab();
66 void refreshSourcesModel();
67 void persistSourcesState() const;
68 void restoreSourcesState();
69
70 [[nodiscard]] QString persistenceKey() const;
71
72 QPointer<ProfilePlotOptions> m_options;
73 QPointer<AnimationController> m_anim;
74 QPointer<SWMMVisProjectWindow> m_projectWindow;
75
76 QTabWidget *m_tabs = nullptr;
77 QTreeView *m_tree = nullptr;
78 QAbstractItemModel *m_model = nullptr;
79 QAbstractItemDelegate *m_delegate = nullptr;
80
81 QTreeView *m_sourcesView = nullptr;
82 QStandardItemModel *m_sourcesModel = nullptr;
83 // Right-pane editor on the Sources tab — a QPropertyModel-backed
84 // QTreeView bound to a ProfileSourceStyleAdapter that proxies the
85 // selected layer's profile-style Q_PROPERTYs. Empty (disabled) when
86 // no source row is selected.
87 QTreeView *m_styleView = nullptr;
88 QAbstractItemModel *m_styleModel = nullptr;
89 QAbstractItemDelegate *m_styleDelegate = nullptr;
90 ProfileSourceStyleAdapter *m_styleAdapter = nullptr;
91};
92
93#endif // PROFILE_OPTIONS_DIALOG_H
Central coordinator for result-layer time-stepping and playback.
Definition animationcontroller.h:43
Definition profileattributetrackoptions.h:35
Definition profileoptionsdialog.h:30
void refreshSources()
Definition profileoptionsdialog.cpp:361
void setTrackOptions(ProfileAttributeTrackOptions *trackOptions)
Definition profileoptionsdialog.cpp:147
void addOutputFileRequested(const QString &path)
Emitted when the user picks an external .out file. The host should construct an SWMMResultsLayer for ...
void sourcesChanged()
Emitted when the user toggles visibility, edits a colour, or renames a source. The host dialog should...
Definition profileplotoptions.h:28
Definition profilesourcestyleadapter.h:36
MDI sub-window owning a MapCanvas, SWMMModelLayer, and map tools.
Definition swmmvisprojectwindow.h:58
int path
Definition pslgminsize.cpp:234
QVector< int > parent
union-find
Definition pslgminsize.cpp:176