16 #ifndef QGSPROCESSINGMESHDATASETWIDGET_H
17 #define QGSPROCESSINGMESHDATASETWIDGET_H
25 #include "ui_qgsprocessingmeshdatasettimewidget.h"
31 class GUI_EXPORT QgsProcessingMeshDatasetGroupsWidget :
public QWidget
42 void setMeshLayer(
QgsMeshLayer *layer,
bool layerFromProject =
false );
43 void setValue(
const QVariant &value );
44 QVariant value()
const;
51 void selectCurrentActiveDatasetGroup();
57 QPointer<QLineEdit> mLineEdit =
nullptr;
58 QPointer<QToolButton> mToolButton =
nullptr;
59 QPointer<QAction> mActionCurrentActiveDatasetGroups =
nullptr;
60 QPointer<QAction> mActionAvailableDatasetGroups =
nullptr;
62 QMap<int, QString> mDatasetGroupsNames;
64 QStringList datasetGroupsNames();
65 void updateSummaryText();
67 friend class TestProcessingGui;
79 QString parameterType()
const override;
81 void postInitialize(
const QList<QgsAbstractProcessingParameterWidgetWrapper *> &wrappers )
override;
87 QStringList compatibleParameterTypes()
const override;
88 QStringList compatibleOutputTypes()
const override;
89 QWidget *createWidget()
override;
91 QVariant widgetValue()
const override;
94 QgsProcessingMeshDatasetGroupsWidget *mWidget =
nullptr;
95 std::unique_ptr<QgsMeshLayer> mTemporarytMeshLayer;
97 friend class TestProcessingGui;
101 class GUI_EXPORT QgsProcessingMeshDatasetTimeWidget :
public QWidget,
private Ui::QgsProcessingMeshDatasetTimeWidgetBase
105 QgsProcessingMeshDatasetTimeWidget( QWidget *parent =
nullptr,
114 void setMeshLayer(
QgsMeshLayer *layer,
bool layerFromProject =
false );
115 void setDatasetGroupIndexes(
const QList<int> datasetGroupIndexes );
117 void setValue(
const QVariant &value );
118 QVariant value()
const;
131 QLineEdit *mLineEdit =
nullptr;
132 QToolButton *mToolButton =
nullptr;
134 QList<int> mDatasetGroupIndexes;
135 QDateTime mReferenceTime;
137 void populateTimeSteps();
138 bool hasTemporalDataset()
const;
140 void populateTimeStepsFromLayer();
143 QMap<int, QList<qint64>> mDatasetTimeSteps;
148 friend class TestProcessingGui;
159 QString parameterType()
const override;
161 void postInitialize(
const QList<QgsAbstractProcessingParameterWidgetWrapper *> &wrappers )
override;
170 QStringList compatibleParameterTypes()
const override;
171 QStringList compatibleOutputTypes()
const override;
172 QWidget *createWidget()
override;
174 QVariant widgetValue()
const override;
177 QgsProcessingMeshDatasetTimeWidget *mWidget =
nullptr;
178 std::unique_ptr<QgsMeshLayer> mTemporarytMeshLayer;
179 friend class TestProcessingGui;
Map canvas is a class for displaying all GIS data types on a canvas.
Represents a mesh layer supporting display of data on structured or unstructured meshes.
Contains information about the context in which a processing algorithm is executed.
WidgetType
Types of dialogs which Processing widgets can be created for.
@ Standard
Standard algorithm dialog.
Base class for the definition of processing parameters.
A parameter for processing algorithms that need a list of mesh dataset groups.
A parameter for processing algorithms that need a list of mesh dataset index from time parameter.
Contains settings which reflect the context in which a Processing parameter widget is shown,...