19#ifndef OPENSWMMVIS_UI_TREATMENTEXPRESSIONEDIT_H
20#define OPENSWMMVIS_UI_TREATMENTEXPRESSIONEDIT_H
24#include <QStyledItemDelegate>
25#include <QSyntaxHighlighter>
26#include <QTextCharFormat>
51 void rebuildFormats_();
54 QTextCharFormat m_fmtVariable;
55 QTextCharFormat m_fmtFunction;
56 QTextCharFormat m_fmtOperator;
57 QTextCharFormat m_fmtNumber;
58 QTextCharFormat m_fmtUnknown;
70 QWidget *
parent =
nullptr);
72 [[nodiscard]] QString
expression()
const {
return toPlainText(); }
90 void showCompleter_(
const QString &prefix);
91 void insertCompletion_(
const QString &completion);
92 [[nodiscard]] QString textUnderCursor_()
const;
94 void *m_engine =
nullptr;
96 QCompleter *m_completer =
nullptr;
97 class QTimer *m_debounce =
nullptr;
109 QObject *
parent =
nullptr);
112 const QModelIndex &
index)
const override;
114 void setModelData(QWidget *editor, QAbstractItemModel *model,
115 const QModelIndex &
index)
const override;
121 void *m_engine =
nullptr;
Definition treatmentexpressionedit.h:104
void setEditorData(QWidget *editor, const QModelIndex &index) const override
Definition treatmentexpressionedit.cpp:335
void validationChanged(bool ok, const QString &msg, int col) const
QWidget * createEditor(QWidget *parent, const QStyleOptionViewItem &option, const QModelIndex &index) const override
Definition treatmentexpressionedit.cpp:319
void setModelData(QWidget *editor, QAbstractItemModel *model, const QModelIndex &index) const override
Definition treatmentexpressionedit.cpp:345
Definition treatmentexpressionedit.h:65
void validateNow()
Definition treatmentexpressionedit.cpp:211
void focusInEvent(QFocusEvent *e) override
Definition treatmentexpressionedit.cpp:257
void keyPressEvent(QKeyEvent *e) override
Definition treatmentexpressionedit.cpp:263
void setExpression(const QString &text)
Definition treatmentexpressionedit.cpp:205
void validationChanged(bool ok, const QString &msg, int col)
void editingFinished()
Enter/Return pressed (single-line commit)
QString expression() const
Definition treatmentexpressionedit.h:72
Palette-driven highlighter for one treatment expression line.
Definition treatmentexpressionedit.h:35
static QStringList allKeywords()
variables + functions
Definition treatmentexpressionedit.cpp:43
void setPalette(const QPalette &palette)
Definition treatmentexpressionedit.cpp:54
void highlightBlock(const QString &text) override
Definition treatmentexpressionedit.cpp:94
static QStringList variableNames()
C R DT HRT Q V D AREA.
Definition treatmentexpressionedit.cpp:27
static QStringList functionNames()
exp log ln sqrt min max abs sgn step
Definition treatmentexpressionedit.cpp:34
int e
Definition inpmeshreader.cpp:41
bool ok
Definition inpmeshwriter.cpp:575
int index
Position in m_quadRegions / m_quadReports.
Definition meshgenerator.cpp:153
Definition openswmmvislayer.h:43
QVector< int > parent
union-find
Definition pslgminsize.cpp:176
QString text
Definition queryparser.cpp:35