18#ifndef QGSPROCESSINGPOINTCLOUDEXPRESSIONLINEEDIT_H
19#define QGSPROCESSINGPOINTCLOUDEXPRESSIONLINEEDIT_H
25#include <QStandardItemModel>
26#include <QStandardItem>
31#include "ui_qgsprocessingpointcloudexpressiondialogbase.h"
47class GUI_EXPORT QgsProcessingPointCloudExpressionLineEdit :
public QWidget
57 explicit QgsProcessingPointCloudExpressionLineEdit( QWidget *parent
SIP_TRANSFERTHIS =
nullptr );
58 ~QgsProcessingPointCloudExpressionLineEdit()
override;
76 QString expression()
const;
84 void expressionChanged(
const QString &expression );
93 void setExpression(
const QString &expression );
97 void expressionEdited(
const QString &expression );
98 void expressionEdited();
101 void editExpression();
105 QToolButton *mButton =
nullptr;
115class GUI_EXPORT QgsProcessingPointCloudExpressionDialog :
public QDialog,
private Ui::QgsProcessingPointCloudExpressionDialogBase
124 QgsProcessingPointCloudExpressionDialog(
QgsPointCloudLayer *layer,
const QString &startExpression = QString(), QWidget *parent =
nullptr );
131 void setExpression(
const QString &text );
137 QString expression();
151 void lstAttributes_currentChanged(
const QModelIndex ¤t,
const QModelIndex &previous );
152 void lstAttributes_doubleClicked(
const QModelIndex &index );
153 void lstValues_doubleClicked(
const QModelIndex &index );
154 void btnEqual_clicked();
155 void btnLessThan_clicked();
156 void btnGreaterThan_clicked();
157 void btnIn_clicked();
158 void btnNotIn_clicked();
159 void btnLessEqual_clicked();
160 void btnGreaterEqual_clicked();
161 void btnNotEqual_clicked();
162 void btnAnd_clicked();
163 void btnOr_clicked();
167 void populateAttributes();
170 QStandardItemModel *mModelAttributes =
nullptr;
173 QStandardItemModel *mModelValues =
nullptr;
176 const QString mInitialText;
QLineEdit subclass with built in support for clearing the widget's value and handling custom null val...
Represents a map layer supporting display of point clouds.