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
attributedelegates.h
Go to the documentation of this file.
1
16#ifndef ATTRIBUTEDELEGATES_H
17#define ATTRIBUTEDELEGATES_H
18
19#include <QStyledItemDelegate>
20#include <QVariant>
21#include <QVariantList>
22#include <limits>
23
24namespace openswmmvis {
25
27class NumericDelegate : public QStyledItemDelegate
28{
29 Q_OBJECT
30public:
31 explicit NumericDelegate(QObject *parent = nullptr,
32 double minimum = -std::numeric_limits<double>::infinity(),
33 double maximum = std::numeric_limits<double>::infinity(),
34 int decimals = 4);
35
36 QWidget *createEditor(QWidget *parent, const QStyleOptionViewItem &opt,
37 const QModelIndex &index) const override;
38 void setEditorData(QWidget *editor, const QModelIndex &index) const override;
39 void setModelData(QWidget *editor, QAbstractItemModel *model,
40 const QModelIndex &index) const override;
41
42private:
43 double m_min;
44 double m_max;
45 int m_decimals;
46};
47
49class IntegerDelegate : public QStyledItemDelegate
50{
51 Q_OBJECT
52public:
53 explicit IntegerDelegate(QObject *parent = nullptr,
54 int minimum = std::numeric_limits<int>::min(),
55 int maximum = std::numeric_limits<int>::max());
56
57 QWidget *createEditor(QWidget *parent, const QStyleOptionViewItem &opt,
58 const QModelIndex &index) const override;
59 void setEditorData(QWidget *editor, const QModelIndex &index) const override;
60 void setModelData(QWidget *editor, QAbstractItemModel *model,
61 const QModelIndex &index) const override;
62
63private:
64 int m_min;
65 int m_max;
66};
67
79class CompoundEditDelegate : public QStyledItemDelegate
80{
81 Q_OBJECT
82public:
83 explicit CompoundEditDelegate(QObject *parent = nullptr);
84
85 QString displayText(const QVariant &value,
86 const QLocale &locale) const override;
87 QWidget *createEditor(QWidget *parent, const QStyleOptionViewItem &opt,
88 const QModelIndex &index) const override;
89 void setEditorData(QWidget *editor, const QModelIndex &index) const override;
90 void setModelData(QWidget *editor, QAbstractItemModel *model,
91 const QModelIndex &index) const override;
92};
93
96class EnumDelegate : public QStyledItemDelegate
97{
98 Q_OBJECT
99public:
102 EnumDelegate(QObject *parent, QVariantList values);
103
104 QWidget *createEditor(QWidget *parent, const QStyleOptionViewItem &opt,
105 const QModelIndex &index) const override;
106 void setEditorData(QWidget *editor, const QModelIndex &index) const override;
107 void setModelData(QWidget *editor, QAbstractItemModel *model,
108 const QModelIndex &index) const override;
109
113 static QVariantList makePairs(const QStringList &labels,
114 const QVariantList &data);
115
116private:
117 QVariantList m_values;
118};
119
124class IntervalDelegate : public QStyledItemDelegate
125{
126 Q_OBJECT
127public:
128 explicit IntervalDelegate(QObject *parent = nullptr);
129
130 QWidget *createEditor(QWidget *parent, const QStyleOptionViewItem &opt,
131 const QModelIndex &index) const override;
132 void setEditorData(QWidget *editor, const QModelIndex &index) const override;
133 void setModelData(QWidget *editor, QAbstractItemModel *model,
134 const QModelIndex &index) const override;
135};
136
142class FileBrowseDelegate : public QStyledItemDelegate
143{
144 Q_OBJECT
145public:
146 FileBrowseDelegate(QObject *parent, QString nameFilter);
147
148 QWidget *createEditor(QWidget *parent, const QStyleOptionViewItem &opt,
149 const QModelIndex &index) const override;
150 void setEditorData(QWidget *editor, const QModelIndex &index) const override;
151 void setModelData(QWidget *editor, QAbstractItemModel *model,
152 const QModelIndex &index) const override;
153
154private:
155 QString m_nameFilter;
156};
157
163class FileColumnDelegate : public QStyledItemDelegate
164{
165 Q_OBJECT
166public:
167 FileColumnDelegate(QObject *parent, int optionsRole);
168
169 QWidget *createEditor(QWidget *parent, const QStyleOptionViewItem &opt,
170 const QModelIndex &index) const override;
171 void setEditorData(QWidget *editor, const QModelIndex &index) const override;
172 void setModelData(QWidget *editor, QAbstractItemModel *model,
173 const QModelIndex &index) const override;
174
175private:
176 int m_optionsRole;
177};
178
179} // namespace openswmmvis
180
181#endif // ATTRIBUTEDELEGATES_H
Definition attributedelegates.h:80
void setEditorData(QWidget *editor, const QModelIndex &index) const override
Definition attributedelegates.cpp:265
QWidget * createEditor(QWidget *parent, const QStyleOptionViewItem &opt, const QModelIndex &index) const override
Definition attributedelegates.cpp:246
void setModelData(QWidget *editor, QAbstractItemModel *model, const QModelIndex &index) const override
Definition attributedelegates.cpp:296
QString displayText(const QVariant &value, const QLocale &locale) const override
Definition attributedelegates.cpp:208
Definition attributedelegates.h:97
void setEditorData(QWidget *editor, const QModelIndex &index) const override
Definition attributedelegates.cpp:143
static QVariantList makePairs(const QStringList &labels, const QVariantList &data)
Definition attributedelegates.cpp:330
void setModelData(QWidget *editor, QAbstractItemModel *model, const QModelIndex &index) const override
Definition attributedelegates.cpp:153
QWidget * createEditor(QWidget *parent, const QStyleOptionViewItem &opt, const QModelIndex &index) const override
Definition attributedelegates.cpp:130
Definition attributedelegates.h:143
QWidget * createEditor(QWidget *parent, const QStyleOptionViewItem &opt, const QModelIndex &index) const override
Definition attributedelegates.cpp:395
void setEditorData(QWidget *editor, const QModelIndex &index) const override
Definition attributedelegates.cpp:402
void setModelData(QWidget *editor, QAbstractItemModel *model, const QModelIndex &index) const override
Definition attributedelegates.cpp:409
Definition attributedelegates.h:164
void setModelData(QWidget *editor, QAbstractItemModel *model, const QModelIndex &index) const override
Definition attributedelegates.cpp:445
QWidget * createEditor(QWidget *parent, const QStyleOptionViewItem &opt, const QModelIndex &index) const override
Definition attributedelegates.cpp:426
void setEditorData(QWidget *editor, const QModelIndex &index) const override
Definition attributedelegates.cpp:437
Definition attributedelegates.h:50
void setEditorData(QWidget *editor, const QModelIndex &index) const override
Definition attributedelegates.cpp:101
QWidget * createEditor(QWidget *parent, const QStyleOptionViewItem &opt, const QModelIndex &index) const override
Definition attributedelegates.cpp:91
void setModelData(QWidget *editor, QAbstractItemModel *model, const QModelIndex &index) const override
Definition attributedelegates.cpp:111
Definition attributedelegates.h:125
void setModelData(QWidget *editor, QAbstractItemModel *model, const QModelIndex &index) const override
Definition attributedelegates.cpp:189
void setEditorData(QWidget *editor, const QModelIndex &index) const override
Definition attributedelegates.cpp:181
QWidget * createEditor(QWidget *parent, const QStyleOptionViewItem &opt, const QModelIndex &index) const override
Definition attributedelegates.cpp:170
Definition attributedelegates.h:28
void setModelData(QWidget *editor, QAbstractItemModel *model, const QModelIndex &index) const override
Definition attributedelegates.cpp:71
void setEditorData(QWidget *editor, const QModelIndex &index) const override
Definition attributedelegates.cpp:61
QWidget * createEditor(QWidget *parent, const QStyleOptionViewItem &opt, const QModelIndex &index) const override
Definition attributedelegates.cpp:49
int decimals
Definition meshcellparams.cpp:30
int index
Position in m_quadRegions / m_quadReports.
Definition meshgenerator.cpp:153
Definition aquiferprovider.h:21
QVector< int > parent
union-find
Definition pslgminsize.cpp:176