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
56 explicit QgsProcessingPointCloudExpressionLineEdit( QWidget *parent
SIP_TRANSFERTHIS =
nullptr );
57 ~QgsProcessingPointCloudExpressionLineEdit()
override;
75 QString expression()
const;
83 void expressionChanged(
const QString &expression );
92 void setExpression(
const QString &expression );
96 void expressionEdited(
const QString &expression );
97 void expressionEdited();
100 void editExpression();
104 QToolButton *mButton =
nullptr;
114class GUI_EXPORT QgsProcessingPointCloudExpressionDialog :
public QDialog,
private Ui::QgsProcessingPointCloudExpressionDialogBase
122 QgsProcessingPointCloudExpressionDialog(
QgsPointCloudLayer *layer,
const QString &startExpression = QString(), QWidget *parent =
nullptr );
129 void setExpression(
const QString &text );
135 QString expression();
149 void lstAttributes_currentChanged(
const QModelIndex ¤t,
const QModelIndex &previous );
150 void lstAttributes_doubleClicked(
const QModelIndex &index );
151 void lstValues_doubleClicked(
const QModelIndex &index );
152 void btnEqual_clicked();
153 void btnLessThan_clicked();
154 void btnGreaterThan_clicked();
155 void btnIn_clicked();
156 void btnNotIn_clicked();
157 void btnLessEqual_clicked();
158 void btnGreaterEqual_clicked();
159 void btnNotEqual_clicked();
160 void btnAnd_clicked();
161 void btnOr_clicked();
165 void populateAttributes();
168 QStandardItemModel *mModelAttributes =
nullptr;
171 QStandardItemModel *mModelValues =
nullptr;
174 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.