16 #ifndef QGSEXPRESSIONBUILDER_H
17 #define QGSEXPRESSIONBUILDER_H
20 #include "ui_qgsexpressionbuilder.h"
25 #include "QStandardItemModel"
26 #include "QStandardItem"
27 #include "QSortFilterProxyModel"
43 if ( source_parent == qobject_cast<QStandardItemModel*>(
sourceModel() )->invisibleRootItem()->
index() )
68 mExpressionText = expressionText;
78 mExpressionText = expressionText;
125 void loadFieldNames();
127 void loadFieldNames(
const QgsFields& fields );
137 void setExpressionText(
const QString& expression );
150 bool isExpressionValid();
152 void saveToRecent(
QString key );
154 void loadRecent(
QString key );
158 void newFunctionFile(
QString fileName =
"scratch" );
162 void saveFunctionFile(
QString fileName );
166 void loadCodeFromFile(
QString path );
170 void loadFunctionCode(
QString code );
174 void updateFunctionFileList(
QString path );
178 void on_btnRun_pressed();
179 void on_btnNewFile_pressed();
180 void on_cmbFileNames_currentIndexChanged(
int index );
181 void on_btnSaveFile_pressed();
182 void on_expressionTree_doubleClicked(
const QModelIndex &index );
183 void on_txtExpressionString_textChanged();
184 void on_txtSearchEdit_textChanged();
185 void on_lblPreview_linkActivated(
QString link );
187 void operatorButtonClicked();
188 void showContextMenu(
const QPoint & );
189 void loadSampleValues();
190 void loadAllValues();
193 void setExpressionState(
bool state );
201 void expressionParsed(
bool isValid );
204 void runPythonCode(
QString code );
205 void updateFunctionTree();
206 void fillFieldValues(
int fieldIndex,
int countLimit );
213 QString formatPreviewString(
const QString &previewString )
const;
222 bool mExpressionValid;
228 #endif // QGSEXPRESSIONBUILDER_H
virtual QModelIndex index(int row, int column, const QModelIndex &parent) const
void setFilterCaseSensitivity(Qt::CaseSensitivity cs)
void setHelpText(QString helpText)
Set the help text for the current item.
Container of fields for a vector layer.
bool filterAcceptsRow(int source_row, const QModelIndex &source_parent) const override
QString getExpressionText()
The feature class encapsulates a single feature including its id, geometry and a list of field/values...
QgsExpressionItemSearchProxy()
Search proxy used to filter the QgsExpressionBuilderWidget tree.
QgsExpressionItem(QString label, QString expressionText, QString helpText, QgsExpressionItem::ItemType itemType=ExpressionNode)
QgsExpressionItem::ItemType getItemType()
Get the type of expression item eg header, field, ExpressionNode.
General purpose distance and area calculator.
virtual bool filterAcceptsRow(int source_row, const QModelIndex &source_parent) const
An expression item that can be used in the QgsExpressionBuilderWidget tree.
QgsExpressionItem(QString label, QString expressionText, QgsExpressionItem::ItemType itemType=ExpressionNode)
QAbstractItemModel * sourceModel() const
Represents a vector layer which manages a vector based data sets.
QString getHelpText()
Get the help text that is associated with this expression item.