19#ifndef QGSPROCESSINGWIDGETWRAPPERIMPL_H
20#define QGSPROCESSINGWIDGETWRAPPERIMPL_H
22#include "ui_qgsheatmappixelsizewidgetbase.h"
23#include "ui_qgsprocessingreliefcolorswidgetbase.h"
36#include <QAbstractButton>
50class QgsProcessingMatrixParameterPanel;
72class QgsProcessingEnumModelerWidget;
73class QgsProcessingMatrixModelerWidget;
74class QgsProcessingMapLayerComboBox;
77class QgsProcessingLayerOutputDestinationWidget;
80class QgsProcessingPointCloudExpressionLineEdit;
81class QgsProcessingRasterCalculatorExpressionLineEdit;
94 QgsProcessingBooleanParameterDefinitionWidget(
104 QCheckBox *mDefaultCheckBox =
nullptr;
115 QString parameterType()
const override;
116 QgsAbstractProcessingParameterWidgetWrapper *createWidgetWrapper(
const QgsProcessingParameterDefinition *parameter,
Qgis::ProcessingMode type )
override;
117 QgsProcessingAbstractParameterDefinitionWidget *createParameterDefinitionWidget(
118 QgsProcessingContext &context,
const QgsProcessingParameterWidgetContext &widgetContext,
const QgsProcessingParameterDefinition *definition =
nullptr,
const QgsProcessingAlgorithm *
algorithm =
nullptr
126 void setWidgetValue( const QVariant &value, QgsProcessingContext &context ) override;
127 QVariant widgetValue() const override;
130 QCheckBox *mCheckBox =
nullptr;
131 QComboBox *mComboBox =
nullptr;
133 friend class TestProcessingGui;
137class GUI_EXPORT QgsProcessingCrsParameterDefinitionWidget : public QgsProcessingAbstractParameterDefinitionWidget
141 QgsProcessingCrsParameterDefinitionWidget(
142 QgsProcessingContext &context,
143 const QgsProcessingParameterWidgetContext &widgetContext,
144 const QgsProcessingParameterDefinition *definition =
nullptr,
145 const QgsProcessingAlgorithm *
algorithm =
nullptr,
151 QgsProjectionSelectionWidget *mCrsSelector =
nullptr;
154class GUI_EXPORT QgsProcessingCrsWidgetWrapper :
public QgsAbstractProcessingParameterWidgetWrapper,
public QgsProcessingParameterWidgetFactoryInterface
162 QString parameterType()
const override;
163 QgsAbstractProcessingParameterWidgetWrapper *createWidgetWrapper(
const QgsProcessingParameterDefinition *parameter,
Qgis::ProcessingMode type )
override;
164 QgsProcessingAbstractParameterDefinitionWidget *createParameterDefinitionWidget(
165 QgsProcessingContext &context,
const QgsProcessingParameterWidgetContext &widgetContext,
const QgsProcessingParameterDefinition *definition =
nullptr,
const QgsProcessingAlgorithm *
algorithm =
nullptr
172 void setWidgetValue( const QVariant &value, QgsProcessingContext &context ) override;
173 QVariant widgetValue() const override;
175 QString modelerExpressionFormatString() const override;
178 QgsProjectionSelectionWidget *mProjectionSelectionWidget =
nullptr;
179 QCheckBox *mUseProjectCrsCheckBox =
nullptr;
181 friend class TestProcessingGui;
185class GUI_EXPORT QgsProcessingStringParameterDefinitionWidget : public QgsProcessingAbstractParameterDefinitionWidget
189 QgsProcessingStringParameterDefinitionWidget(
190 QgsProcessingContext &context,
191 const QgsProcessingParameterWidgetContext &widgetContext,
192 const QgsProcessingParameterDefinition *definition =
nullptr,
193 const QgsProcessingAlgorithm *
algorithm =
nullptr,
199 QLineEdit *mDefaultLineEdit =
nullptr;
200 QCheckBox *mMultiLineCheckBox =
nullptr;
203class GUI_EXPORT QgsProcessingStringWidgetWrapper :
public QgsAbstractProcessingParameterWidgetWrapper,
public QgsProcessingParameterWidgetFactoryInterface
211 QString parameterType()
const override;
212 QgsAbstractProcessingParameterWidgetWrapper *createWidgetWrapper(
const QgsProcessingParameterDefinition *parameter,
Qgis::ProcessingMode type )
override;
213 QgsProcessingAbstractParameterDefinitionWidget *createParameterDefinitionWidget(
214 QgsProcessingContext &context,
const QgsProcessingParameterWidgetContext &widgetContext,
const QgsProcessingParameterDefinition *definition =
nullptr,
const QgsProcessingAlgorithm *
algorithm =
nullptr
221 void setWidgetValue( const QVariant &value, QgsProcessingContext &context ) override;
222 QVariant widgetValue() const override;
225 QLineEdit *mLineEdit =
nullptr;
226 QComboBox *mComboBox =
nullptr;
227 QPlainTextEdit *mPlainTextEdit =
nullptr;
229 friend class TestProcessingGui;
233class GUI_EXPORT QgsProcessingAuthConfigWidgetWrapper : public QgsAbstractProcessingParameterWidgetWrapper, public QgsProcessingParameterWidgetFactoryInterface
241 QString parameterType()
const override;
242 QgsAbstractProcessingParameterWidgetWrapper *createWidgetWrapper(
const QgsProcessingParameterDefinition *parameter,
Qgis::ProcessingMode type )
override;
248 void setWidgetValue( const QVariant &value, QgsProcessingContext &context ) override;
249 QVariant widgetValue() const override;
252 QgsAuthConfigSelect *mAuthConfigSelect =
nullptr;
254 friend class TestProcessingGui;
258class GUI_EXPORT QgsProcessingNumberParameterDefinitionWidget : public QgsProcessingAbstractParameterDefinitionWidget
262 QgsProcessingNumberParameterDefinitionWidget(
263 QgsProcessingContext &context,
264 const QgsProcessingParameterWidgetContext &widgetContext,
265 const QgsProcessingParameterDefinition *definition =
nullptr,
266 const QgsProcessingAlgorithm *
algorithm =
nullptr,
272 QComboBox *mTypeComboBox =
nullptr;
273 QLineEdit *mMinLineEdit =
nullptr;
274 QLineEdit *mMaxLineEdit =
nullptr;
275 QLineEdit *mDefaultLineEdit =
nullptr;
279class GUI_EXPORT QgsProcessingNumericWidgetWrapper :
public QgsAbstractProcessingParameterWidgetWrapper,
public QgsProcessingParameterWidgetFactoryInterface
287 QString parameterType()
const override;
288 QgsAbstractProcessingParameterWidgetWrapper *createWidgetWrapper(
const QgsProcessingParameterDefinition *parameter,
Qgis::ProcessingMode type )
override;
289 QgsProcessingAbstractParameterDefinitionWidget *createParameterDefinitionWidget(
290 QgsProcessingContext &context,
const QgsProcessingParameterWidgetContext &widgetContext,
const QgsProcessingParameterDefinition *definition =
nullptr,
const QgsProcessingAlgorithm *
algorithm =
nullptr
297 void setWidgetValue( const QVariant &value, QgsProcessingContext &context ) override;
298 QVariant widgetValue() const override;
301 QgsSpinBox *mSpinBox =
nullptr;
302 QgsDoubleSpinBox *mDoubleSpinBox =
nullptr;
305 static
double calculateStep(
double minimum,
double maximum );
307 bool mAllowingNull = false;
309 friend class TestProcessingGui;
313class GUI_EXPORT QgsProcessingDistanceParameterDefinitionWidget : public QgsProcessingAbstractParameterDefinitionWidget
317 QgsProcessingDistanceParameterDefinitionWidget(
318 QgsProcessingContext &context,
319 const QgsProcessingParameterWidgetContext &widgetContext,
320 const QgsProcessingParameterDefinition *definition =
nullptr,
321 const QgsProcessingAlgorithm *
algorithm =
nullptr,
327 QComboBox *mParentLayerComboBox =
nullptr;
328 QLineEdit *mMinLineEdit =
nullptr;
329 QLineEdit *mMaxLineEdit =
nullptr;
330 QLineEdit *mDefaultLineEdit =
nullptr;
333class GUI_EXPORT QgsProcessingDistanceWidgetWrapper :
public QgsProcessingNumericWidgetWrapper
341 QString parameterType()
const override;
342 QgsAbstractProcessingParameterWidgetWrapper *createWidgetWrapper(
const QgsProcessingParameterDefinition *parameter,
Qgis::ProcessingMode type )
override;
343 QgsProcessingAbstractParameterDefinitionWidget *createParameterDefinitionWidget(
344 QgsProcessingContext &context,
const QgsProcessingParameterWidgetContext &widgetContext,
const QgsProcessingParameterDefinition *definition =
nullptr,
const QgsProcessingAlgorithm *
algorithm =
nullptr
349 void postInitialize( const QList<QgsAbstractProcessingParameterWidgetWrapper *> &wrappers ) override;
352 void setUnitParameterValue( const QVariant &value, const QgsAbstractProcessingParameterWidgetWrapper *unitParameterWrapper =
nullptr );
353 void setUnits( Qgis::DistanceUnit unit );
356 QVariant widgetValue() const override;
359 Qgis::DistanceUnit mBaseUnit = Qgis::DistanceUnit::Unknown;
360 QLabel *mLabel =
nullptr;
361 QWidget *mWarningLabel =
nullptr;
362 QComboBox *mUnitsCombo =
nullptr;
364 friend class TestProcessingGui;
367class GUI_EXPORT QgsProcessingAreaParameterDefinitionWidget : public QgsProcessingAbstractParameterDefinitionWidget
371 QgsProcessingAreaParameterDefinitionWidget(
372 QgsProcessingContext &context,
373 const QgsProcessingParameterWidgetContext &widgetContext,
374 const QgsProcessingParameterDefinition *definition =
nullptr,
375 const QgsProcessingAlgorithm *
algorithm =
nullptr,
381 QComboBox *mParentLayerComboBox =
nullptr;
382 QLineEdit *mMinLineEdit =
nullptr;
383 QLineEdit *mMaxLineEdit =
nullptr;
384 QLineEdit *mDefaultLineEdit =
nullptr;
387class GUI_EXPORT QgsProcessingAreaWidgetWrapper :
public QgsProcessingNumericWidgetWrapper
395 QString parameterType()
const override;
396 QgsAbstractProcessingParameterWidgetWrapper *createWidgetWrapper(
const QgsProcessingParameterDefinition *parameter,
Qgis::ProcessingMode type )
override;
397 QgsProcessingAbstractParameterDefinitionWidget *createParameterDefinitionWidget(
398 QgsProcessingContext &context,
const QgsProcessingParameterWidgetContext &widgetContext,
const QgsProcessingParameterDefinition *definition =
nullptr,
const QgsProcessingAlgorithm *
algorithm =
nullptr
403 void postInitialize( const QList<QgsAbstractProcessingParameterWidgetWrapper *> &wrappers ) override;
406 void setUnitParameterValue( const QVariant &value, const QgsAbstractProcessingParameterWidgetWrapper *unitParameterWrapper =
nullptr );
407 void setUnits( Qgis::AreaUnit unit );
410 QVariant widgetValue() const override;
413 Qgis::AreaUnit mBaseUnit = Qgis::AreaUnit::Unknown;
414 QLabel *mLabel =
nullptr;
415 QWidget *mWarningLabel =
nullptr;
416 QComboBox *mUnitsCombo =
nullptr;
418 friend class TestProcessingGui;
422class GUI_EXPORT QgsProcessingVolumeParameterDefinitionWidget : public QgsProcessingAbstractParameterDefinitionWidget
426 QgsProcessingVolumeParameterDefinitionWidget(
427 QgsProcessingContext &context,
428 const QgsProcessingParameterWidgetContext &widgetContext,
429 const QgsProcessingParameterDefinition *definition =
nullptr,
430 const QgsProcessingAlgorithm *
algorithm =
nullptr,
436 QComboBox *mParentLayerComboBox =
nullptr;
437 QLineEdit *mMinLineEdit =
nullptr;
438 QLineEdit *mMaxLineEdit =
nullptr;
439 QLineEdit *mDefaultLineEdit =
nullptr;
442class GUI_EXPORT QgsProcessingVolumeWidgetWrapper :
public QgsProcessingNumericWidgetWrapper
450 QString parameterType()
const override;
451 QgsAbstractProcessingParameterWidgetWrapper *createWidgetWrapper(
const QgsProcessingParameterDefinition *parameter,
Qgis::ProcessingMode type )
override;
452 QgsProcessingAbstractParameterDefinitionWidget *createParameterDefinitionWidget(
453 QgsProcessingContext &context,
const QgsProcessingParameterWidgetContext &widgetContext,
const QgsProcessingParameterDefinition *definition =
nullptr,
const QgsProcessingAlgorithm *
algorithm =
nullptr
458 void postInitialize( const QList<QgsAbstractProcessingParameterWidgetWrapper *> &wrappers ) override;
461 void setUnitParameterValue( const QVariant &value, const QgsAbstractProcessingParameterWidgetWrapper *unitParameterWrapper =
nullptr );
462 void setUnits( Qgis::VolumeUnit unit );
465 QVariant widgetValue() const override;
468 Qgis::VolumeUnit mBaseUnit = Qgis::VolumeUnit::Unknown;
469 QLabel *mLabel =
nullptr;
470 QWidget *mWarningLabel =
nullptr;
471 QComboBox *mUnitsCombo =
nullptr;
473 friend class TestProcessingGui;
477class GUI_EXPORT QgsProcessingDurationParameterDefinitionWidget : public QgsProcessingAbstractParameterDefinitionWidget
481 QgsProcessingDurationParameterDefinitionWidget(
482 QgsProcessingContext &context,
483 const QgsProcessingParameterWidgetContext &widgetContext,
484 const QgsProcessingParameterDefinition *definition =
nullptr,
485 const QgsProcessingAlgorithm *
algorithm =
nullptr,
491 QLineEdit *mMinLineEdit =
nullptr;
492 QLineEdit *mMaxLineEdit =
nullptr;
493 QLineEdit *mDefaultLineEdit =
nullptr;
494 QComboBox *mUnitsCombo =
nullptr;
497class GUI_EXPORT QgsProcessingDurationWidgetWrapper :
public QgsProcessingNumericWidgetWrapper
505 QString parameterType()
const override;
506 QgsAbstractProcessingParameterWidgetWrapper *createWidgetWrapper(
const QgsProcessingParameterDefinition *parameter,
Qgis::ProcessingMode type )
override;
507 QgsProcessingAbstractParameterDefinitionWidget *createParameterDefinitionWidget(
508 QgsProcessingContext &context,
const QgsProcessingParameterWidgetContext &widgetContext,
const QgsProcessingParameterDefinition *definition =
nullptr,
const QgsProcessingAlgorithm *
algorithm =
nullptr
516 QVariant widgetValue() const override;
517 void setWidgetValue( const QVariant &value, QgsProcessingContext &context ) override;
520 Qgis::TemporalUnit mBaseUnit = Qgis::TemporalUnit::Milliseconds;
521 QComboBox *mUnitsCombo =
nullptr;
523 friend class TestProcessingGui;
526class GUI_EXPORT QgsProcessingScaleParameterDefinitionWidget : public QgsProcessingAbstractParameterDefinitionWidget
530 QgsProcessingScaleParameterDefinitionWidget(
531 QgsProcessingContext &context,
532 const QgsProcessingParameterWidgetContext &widgetContext,
533 const QgsProcessingParameterDefinition *definition =
nullptr,
534 const QgsProcessingAlgorithm *
algorithm =
nullptr,
540 QLineEdit *mDefaultLineEdit =
nullptr;
543class GUI_EXPORT QgsProcessingScaleWidgetWrapper :
public QgsProcessingNumericWidgetWrapper
551 QString parameterType()
const override;
552 QgsAbstractProcessingParameterWidgetWrapper *createWidgetWrapper(
const QgsProcessingParameterDefinition *parameter,
Qgis::ProcessingMode type )
override;
553 QgsProcessingAbstractParameterDefinitionWidget *createParameterDefinitionWidget(
554 QgsProcessingContext &context,
const QgsProcessingParameterWidgetContext &widgetContext,
const QgsProcessingParameterDefinition *definition =
nullptr,
const QgsProcessingAlgorithm *
algorithm =
nullptr
559 void setWidgetContext( const QgsProcessingParameterWidgetContext &context ) override;
562 QVariant widgetValue() const override;
563 void setWidgetValue( const QVariant &value, QgsProcessingContext &context ) override;
566 QgsScaleWidget *mScaleWidget =
nullptr;
568 friend class TestProcessingGui;
572class GUI_EXPORT QgsProcessingRangeParameterDefinitionWidget : public QgsProcessingAbstractParameterDefinitionWidget
576 QgsProcessingRangeParameterDefinitionWidget(
577 QgsProcessingContext &context,
578 const QgsProcessingParameterWidgetContext &widgetContext,
579 const QgsProcessingParameterDefinition *definition =
nullptr,
580 const QgsProcessingAlgorithm *
algorithm =
nullptr,
586 QComboBox *mTypeComboBox =
nullptr;
587 QLineEdit *mMinLineEdit =
nullptr;
588 QLineEdit *mMaxLineEdit =
nullptr;
591class GUI_EXPORT QgsProcessingRangeWidgetWrapper :
public QgsAbstractProcessingParameterWidgetWrapper,
public QgsProcessingParameterWidgetFactoryInterface
599 QString parameterType()
const override;
600 QgsAbstractProcessingParameterWidgetWrapper *createWidgetWrapper(
const QgsProcessingParameterDefinition *parameter,
Qgis::ProcessingMode type )
override;
601 QgsProcessingAbstractParameterDefinitionWidget *createParameterDefinitionWidget(
602 QgsProcessingContext &context,
const QgsProcessingParameterWidgetContext &widgetContext,
const QgsProcessingParameterDefinition *definition =
nullptr,
const QgsProcessingAlgorithm *
algorithm =
nullptr
609 void setWidgetValue( const QVariant &value, QgsProcessingContext &context ) override;
610 QVariant widgetValue() const override;
611 QString modelerExpressionFormatString() const override;
614 QgsDoubleSpinBox *mMinSpinBox =
nullptr;
615 QgsDoubleSpinBox *mMaxSpinBox =
nullptr;
618 int mBlockChangedSignal = 0;
619 bool mAllowingNull = false;
621 friend class TestProcessingGui;
624class GUI_EXPORT QgsProcessingMatrixParameterDefinitionWidget : public QgsProcessingAbstractParameterDefinitionWidget
628 QgsProcessingMatrixParameterDefinitionWidget(
629 QgsProcessingContext &context,
630 const QgsProcessingParameterWidgetContext &widgetContext,
631 const QgsProcessingParameterDefinition *definition =
nullptr,
632 const QgsProcessingAlgorithm *
algorithm =
nullptr,
638 QgsProcessingMatrixModelerWidget *mMatrixWidget =
nullptr;
641class GUI_EXPORT QgsProcessingMatrixWidgetWrapper :
public QgsAbstractProcessingParameterWidgetWrapper,
public QgsProcessingParameterWidgetFactoryInterface
649 QString parameterType()
const override;
650 QgsAbstractProcessingParameterWidgetWrapper *createWidgetWrapper(
const QgsProcessingParameterDefinition *parameter,
Qgis::ProcessingMode type )
override;
651 QgsProcessingAbstractParameterDefinitionWidget *createParameterDefinitionWidget(
652 QgsProcessingContext &context,
const QgsProcessingParameterWidgetContext &widgetContext,
const QgsProcessingParameterDefinition *definition =
nullptr,
const QgsProcessingAlgorithm *
algorithm =
nullptr
659 void setWidgetValue( const QVariant &value, QgsProcessingContext &context ) override;
660 QVariant widgetValue() const override;
662 QString modelerExpressionFormatString() const override;
665 QgsProcessingMatrixParameterPanel *mMatrixWidget =
nullptr;
667 friend class TestProcessingGui;
670class GUI_EXPORT QgsProcessingFileParameterDefinitionWidget : public QgsProcessingAbstractParameterDefinitionWidget
674 QgsProcessingFileParameterDefinitionWidget(
675 QgsProcessingContext &context,
676 const QgsProcessingParameterWidgetContext &widgetContext,
677 const QgsProcessingParameterDefinition *definition =
nullptr,
678 const QgsProcessingAlgorithm *
algorithm =
nullptr,
684 QComboBox *mTypeComboBox =
nullptr;
685 QComboBox *mFilterComboBox =
nullptr;
686 QgsFileWidget *mDefaultFileWidget =
nullptr;
689class GUI_EXPORT QgsProcessingFileWidgetWrapper :
public QgsAbstractProcessingParameterWidgetWrapper,
public QgsProcessingParameterWidgetFactoryInterface
697 QString parameterType()
const override;
698 QgsAbstractProcessingParameterWidgetWrapper *createWidgetWrapper(
const QgsProcessingParameterDefinition *parameter,
Qgis::ProcessingMode type )
override;
699 QgsProcessingAbstractParameterDefinitionWidget *createParameterDefinitionWidget(
700 QgsProcessingContext &context,
const QgsProcessingParameterWidgetContext &widgetContext,
const QgsProcessingParameterDefinition *definition =
nullptr,
const QgsProcessingAlgorithm *
algorithm =
nullptr
707 void setWidgetValue( const QVariant &value, QgsProcessingContext &context ) override;
708 QVariant widgetValue() const override;
710 QString modelerExpressionFormatString() const override;
713 QgsFileWidget *mFileWidget =
nullptr;
715 friend class TestProcessingGui;
719class GUI_EXPORT QgsProcessingExpressionParameterDefinitionWidget : public QgsProcessingAbstractParameterDefinitionWidget
723 QgsProcessingExpressionParameterDefinitionWidget(
724 QgsProcessingContext &context,
725 const QgsProcessingParameterWidgetContext &widgetContext,
726 const QgsProcessingParameterDefinition *definition =
nullptr,
727 const QgsProcessingAlgorithm *
algorithm =
nullptr,
733 QComboBox *mParentLayerComboBox =
nullptr;
734 QgsExpressionLineEdit *mDefaultQgisLineEdit =
nullptr;
735 QgsProcessingPointCloudExpressionLineEdit *mDefaultPointCloudLineEdit =
nullptr;
736 QgsProcessingRasterCalculatorExpressionLineEdit *mDefaultRasterCalculatorLineEdit =
nullptr;
737 QComboBox *mExpressionTypeComboBox =
nullptr;
740class GUI_EXPORT QgsProcessingExpressionWidgetWrapper :
public QgsAbstractProcessingParameterWidgetWrapper,
public QgsProcessingParameterWidgetFactoryInterface
748 QString parameterType()
const override;
749 QgsAbstractProcessingParameterWidgetWrapper *createWidgetWrapper(
const QgsProcessingParameterDefinition *parameter,
Qgis::ProcessingMode type )
override;
750 QgsProcessingAbstractParameterDefinitionWidget *createParameterDefinitionWidget(
751 QgsProcessingContext &context,
const QgsProcessingParameterWidgetContext &widgetContext,
const QgsProcessingParameterDefinition *definition =
nullptr,
const QgsProcessingAlgorithm *
algorithm =
nullptr
756 void postInitialize( const QList<QgsAbstractProcessingParameterWidgetWrapper *> &wrappers ) override;
757 void registerProcessingContextGenerator( QgsProcessingContextGenerator *generator ) override;
760 void setParentLayerWrapperValue( const QgsAbstractProcessingParameterWidgetWrapper *parentWrapper );
763 void setWidgetValue( const QVariant &value, QgsProcessingContext &context ) override;
764 QVariant widgetValue() const override;
766 QString modelerExpressionFormatString() const override;
767 const QgsVectorLayer *linkedVectorLayer() const override;
770 QgsFieldExpressionWidget *mFieldExpWidget =
nullptr;
771 QgsExpressionBuilderWidget *mExpBuilderWidget =
nullptr;
772 QgsExpressionLineEdit *mExpLineEdit =
nullptr;
773 QgsProcessingPointCloudExpressionLineEdit *mPointCloudExpLineEdit =
nullptr;
774 QgsProcessingRasterCalculatorExpressionLineEdit *mRasterCalculatorExpLineEdit =
nullptr;
775 std::unique_ptr<QgsMapLayer> mParentLayer;
777 friend class TestProcessingGui;
781class GUI_EXPORT QgsProcessingEnumCheckboxPanelWidget : public QWidget
786 QgsProcessingEnumCheckboxPanelWidget( QWidget *parent =
nullptr,
const QgsProcessingParameterEnum *param =
nullptr,
int columns = 2 );
787 QVariant value()
const;
788 void setValue(
const QVariant &value );
796 void showPopupMenu();
801 const QgsProcessingParameterEnum *mParam =
nullptr;
802 QMap<QVariant, QAbstractButton *> mButtons;
803 QButtonGroup *mButtonGroup =
nullptr;
805 bool mBlockChangedSignal =
false;
807 friend class TestProcessingGui;
810class GUI_EXPORT QgsProcessingEnumPanelWidget :
public QWidget
815 QgsProcessingEnumPanelWidget( QWidget *parent =
nullptr,
const QgsProcessingParameterEnum *param =
nullptr );
816 QVariant value()
const {
return mValue; }
817 void setValue(
const QVariant &value );
828 void updateSummaryText();
830 const QgsProcessingParameterEnum *mParam =
nullptr;
831 QLineEdit *mLineEdit =
nullptr;
832 QToolButton *mToolButton =
nullptr;
836 friend class TestProcessingGui;
839class GUI_EXPORT QgsProcessingEnumParameterDefinitionWidget :
public QgsProcessingAbstractParameterDefinitionWidget
843 QgsProcessingEnumParameterDefinitionWidget(
844 QgsProcessingContext &context,
845 const QgsProcessingParameterWidgetContext &widgetContext,
846 const QgsProcessingParameterDefinition *definition =
nullptr,
847 const QgsProcessingAlgorithm *
algorithm =
nullptr,
853 QgsProcessingEnumModelerWidget *mEnumWidget =
nullptr;
856class GUI_EXPORT QgsProcessingEnumWidgetWrapper :
public QgsAbstractProcessingParameterWidgetWrapper,
public QgsProcessingParameterWidgetFactoryInterface
864 QString parameterType()
const override;
865 QgsAbstractProcessingParameterWidgetWrapper *createWidgetWrapper(
const QgsProcessingParameterDefinition *parameter,
Qgis::ProcessingMode type )
override;
866 QgsProcessingAbstractParameterDefinitionWidget *createParameterDefinitionWidget(
867 QgsProcessingContext &context,
const QgsProcessingParameterWidgetContext &widgetContext,
const QgsProcessingParameterDefinition *definition =
nullptr,
const QgsProcessingAlgorithm *
algorithm =
nullptr
874 void setWidgetValue( const QVariant &value, QgsProcessingContext &context ) override;
875 QVariant widgetValue() const override;
877 QString modelerExpressionFormatString() const override;
880 QComboBox *mComboBox =
nullptr;
881 QgsProcessingEnumPanelWidget *mPanel =
nullptr;
882 QgsProcessingEnumCheckboxPanelWidget *mCheckboxPanel =
nullptr;
884 friend class TestProcessingGui;
888class GUI_EXPORT QgsProcessingLayoutWidgetWrapper : public QgsAbstractProcessingParameterWidgetWrapper, public QgsProcessingParameterWidgetFactoryInterface
896 QString parameterType()
const override;
897 QgsAbstractProcessingParameterWidgetWrapper *createWidgetWrapper(
const QgsProcessingParameterDefinition *parameter,
Qgis::ProcessingMode type )
override;
903 void setWidgetValue( const QVariant &value, QgsProcessingContext &context ) override;
904 QVariant widgetValue() const override;
905 void setWidgetContext( const QgsProcessingParameterWidgetContext &context ) override;
907 QString modelerExpressionFormatString() const override;
910 QgsLayoutComboBox *mComboBox =
nullptr;
911 QComboBox *mPlainComboBox =
nullptr;
913 friend class TestProcessingGui;
917class GUI_EXPORT QgsProcessingLayoutItemParameterDefinitionWidget : public QgsProcessingAbstractParameterDefinitionWidget
921 QgsProcessingLayoutItemParameterDefinitionWidget(
922 QgsProcessingContext &context,
923 const QgsProcessingParameterWidgetContext &widgetContext,
924 const QgsProcessingParameterDefinition *definition =
nullptr,
925 const QgsProcessingAlgorithm *
algorithm =
nullptr,
931 QComboBox *mParentLayoutComboBox =
nullptr;
934class GUI_EXPORT QgsProcessingLayoutItemWidgetWrapper :
public QgsAbstractProcessingParameterWidgetWrapper,
public QgsProcessingParameterWidgetFactoryInterface
942 QString parameterType()
const override;
943 QgsAbstractProcessingParameterWidgetWrapper *createWidgetWrapper(
const QgsProcessingParameterDefinition *parameter,
Qgis::ProcessingMode type )
override;
944 QgsProcessingAbstractParameterDefinitionWidget *createParameterDefinitionWidget(
945 QgsProcessingContext &context,
const QgsProcessingParameterWidgetContext &widgetContext,
const QgsProcessingParameterDefinition *definition =
nullptr,
const QgsProcessingAlgorithm *
algorithm =
nullptr
950 void postInitialize( const QList<QgsAbstractProcessingParameterWidgetWrapper *> &wrappers ) override;
954 void setLayoutParameterValue( const QVariant &value );
955 void setLayout( QgsPrintLayout *layout );
958 void setWidgetValue( const QVariant &value, QgsProcessingContext &context ) override;
959 QVariant widgetValue() const override;
961 QString modelerExpressionFormatString() const override;
964 QgsLayoutItemComboBox *mComboBox =
nullptr;
965 QLineEdit *mLineEdit =
nullptr;
967 friend class TestProcessingGui;
970class GUI_EXPORT QgsProcessingPointMapTool : public QgsMapTool
974 QgsProcessingPointMapTool( QgsMapCanvas *canvas );
975 ~QgsProcessingPointMapTool()
override;
976 void deactivate()
override;
977 void canvasMoveEvent( QgsMapMouseEvent *e )
override;
978 void canvasPressEvent( QgsMapMouseEvent *e )
override;
979 void keyPressEvent( QKeyEvent *e )
override;
983 void clicked(
const QgsPointXY &point );
987 std::unique_ptr<QgsSnapIndicator> mSnapIndicator;
988 friend class TestProcessingGui;
991class GUI_EXPORT QgsProcessingPointPanel :
public QWidget
996 QgsProcessingPointPanel( QWidget *parent );
997 ~QgsProcessingPointPanel()
override;
998 void setMapCanvas( QgsMapCanvas *canvas );
999 void setAllowNull(
bool allowNull );
1000 void setShowPointOnCanvas(
bool show );
1001 void setAllowSelectOnCanvas(
bool allow );
1003 QVariant value()
const;
1005 void setValue(
const QgsPointXY &point,
const QgsCoordinateReferenceSystem &crs );
1006 void showEvent( QShowEvent *event )
override;
1010 void toggleDialogVisibility(
bool visible );
1015 void selectOnCanvas();
1016 void updatePoint(
const QgsPointXY &point );
1018 void textChanged(
const QString &text );
1021 void updateRubberBand();
1023 QgsFilterLineEdit *mLineEdit =
nullptr;
1024 bool mShowPointOnCanvas =
false;
1025 bool mFirstShow =
true;
1026 bool mAllowSelectOnCanvas =
true;
1027 QToolButton *mButton =
nullptr;
1028 QgsMapCanvas *mCanvas =
nullptr;
1029 QgsCoordinateReferenceSystem mCrs;
1030 QPointer<QgsMapTool> mPrevTool;
1031 std::unique_ptr<QgsProcessingPointMapTool> mTool;
1033 QObjectUniquePtr<QgsRubberBand> mMapPointRubberBand;
1034 friend class TestProcessingGui;
1038class GUI_EXPORT QgsProcessingPointParameterDefinitionWidget :
public QgsProcessingAbstractParameterDefinitionWidget
1042 QgsProcessingPointParameterDefinitionWidget(
1043 QgsProcessingContext &context,
1044 const QgsProcessingParameterWidgetContext &widgetContext,
1045 const QgsProcessingParameterDefinition *definition =
nullptr,
1046 const QgsProcessingAlgorithm *
algorithm =
nullptr,
1052 QLineEdit *mDefaultLineEdit =
nullptr;
1055class GUI_EXPORT QgsProcessingPointWidgetWrapper :
public QgsAbstractProcessingParameterWidgetWrapper,
public QgsProcessingParameterWidgetFactoryInterface
1063 QString parameterType()
const override;
1064 QgsAbstractProcessingParameterWidgetWrapper *createWidgetWrapper(
const QgsProcessingParameterDefinition *parameter,
Qgis::ProcessingMode type )
override;
1065 QgsProcessingAbstractParameterDefinitionWidget *createParameterDefinitionWidget(
1066 QgsProcessingContext &context,
const QgsProcessingParameterWidgetContext &widgetContext,
const QgsProcessingParameterDefinition *definition =
nullptr,
const QgsProcessingAlgorithm *
algorithm =
nullptr
1071 void setWidgetContext( const QgsProcessingParameterWidgetContext &context ) override;
1072 void setDialog( QWidget *dialog ) override;
1075 void setWidgetValue( const QVariant &value, QgsProcessingContext &context ) override;
1076 QVariant widgetValue() const override;
1078 QString modelerExpressionFormatString() const override;
1081 QgsProcessingPointPanel *mPanel =
nullptr;
1082 QLineEdit *mLineEdit =
nullptr;
1083 QWidget *mDialog =
nullptr;
1085 friend class TestProcessingGui;
1088class GUI_EXPORT QgsProcessingGeometryParameterDefinitionWidget : public QgsProcessingAbstractParameterDefinitionWidget
1092 QgsProcessingGeometryParameterDefinitionWidget(
1093 QgsProcessingContext &context,
1094 const QgsProcessingParameterWidgetContext &widgetContext,
1095 const QgsProcessingParameterDefinition *definition =
nullptr,
1096 const QgsProcessingAlgorithm *
algorithm =
nullptr,
1102 QgsGeometryWidget *mGeometryWidget =
nullptr;
1105class GUI_EXPORT QgsProcessingGeometryWidgetWrapper :
public QgsAbstractProcessingParameterWidgetWrapper,
public QgsProcessingParameterWidgetFactoryInterface
1113 QString parameterType()
const override;
1114 QgsAbstractProcessingParameterWidgetWrapper *createWidgetWrapper(
const QgsProcessingParameterDefinition *parameter,
Qgis::ProcessingMode type )
override;
1115 QgsProcessingAbstractParameterDefinitionWidget *createParameterDefinitionWidget(
1116 QgsProcessingContext &context,
const QgsProcessingParameterWidgetContext &widgetContext,
const QgsProcessingParameterDefinition *definition =
nullptr,
const QgsProcessingAlgorithm *
algorithm =
nullptr
1123 void setWidgetValue( const QVariant &value, QgsProcessingContext &context ) override;
1124 QVariant widgetValue() const override;
1126 QString modelerExpressionFormatString() const override;
1129 QgsGeometryWidget *mGeometryWidget =
nullptr;
1131 friend class TestProcessingGui;
1134class GUI_EXPORT QgsProcessingExtentParameterDefinitionWidget : public QgsProcessingAbstractParameterDefinitionWidget
1138 QgsProcessingExtentParameterDefinitionWidget(
1139 QgsProcessingContext &context,
1140 const QgsProcessingParameterWidgetContext &widgetContext,
1141 const QgsProcessingParameterDefinition *definition =
nullptr,
1142 const QgsProcessingAlgorithm *
algorithm =
nullptr,
1148 QgsExtentWidget *mDefaultWidget =
nullptr;
1151class GUI_EXPORT QgsProcessingExtentWidgetWrapper :
public QgsAbstractProcessingParameterWidgetWrapper,
public QgsProcessingParameterWidgetFactoryInterface
1159 QString parameterType()
const override;
1160 QgsAbstractProcessingParameterWidgetWrapper *createWidgetWrapper(
const QgsProcessingParameterDefinition *parameter,
Qgis::ProcessingMode type )
override;
1161 QgsProcessingAbstractParameterDefinitionWidget *createParameterDefinitionWidget(
1162 QgsProcessingContext &context,
const QgsProcessingParameterWidgetContext &widgetContext,
const QgsProcessingParameterDefinition *definition =
nullptr,
const QgsProcessingAlgorithm *
algorithm =
nullptr
1167 void setWidgetContext( const QgsProcessingParameterWidgetContext &context ) override;
1168 void setDialog( QWidget *dialog ) override;
1171 void setWidgetValue( const QVariant &value, QgsProcessingContext &context ) override;
1172 QVariant widgetValue() const override;
1174 QString modelerExpressionFormatString() const override;
1177 QgsExtentWidget *mExtentWidget =
nullptr;
1178 QWidget *mDialog =
nullptr;
1180 friend class TestProcessingGui;
1183class GUI_EXPORT QgsProcessingColorParameterDefinitionWidget : public QgsProcessingAbstractParameterDefinitionWidget
1187 QgsProcessingColorParameterDefinitionWidget(
1188 QgsProcessingContext &context,
1189 const QgsProcessingParameterWidgetContext &widgetContext,
1190 const QgsProcessingParameterDefinition *definition =
nullptr,
1191 const QgsProcessingAlgorithm *
algorithm =
nullptr,
1197 QgsColorButton *mDefaultColorButton =
nullptr;
1198 QCheckBox *mAllowOpacity =
nullptr;
1201class GUI_EXPORT QgsProcessingColorWidgetWrapper :
public QgsAbstractProcessingParameterWidgetWrapper,
public QgsProcessingParameterWidgetFactoryInterface
1209 QString parameterType()
const override;
1210 QgsAbstractProcessingParameterWidgetWrapper *createWidgetWrapper(
const QgsProcessingParameterDefinition *parameter,
Qgis::ProcessingMode type )
override;
1211 QgsProcessingAbstractParameterDefinitionWidget *createParameterDefinitionWidget(
1212 QgsProcessingContext &context,
const QgsProcessingParameterWidgetContext &widgetContext,
const QgsProcessingParameterDefinition *definition =
nullptr,
const QgsProcessingAlgorithm *
algorithm =
nullptr
1219 void setWidgetValue( const QVariant &value, QgsProcessingContext &context ) override;
1220 QVariant widgetValue() const override;
1222 QString modelerExpressionFormatString() const override;
1225 QgsColorButton *mColorButton =
nullptr;
1226 friend class TestProcessingGui;
1230class GUI_EXPORT QgsProcessingCoordinateOperationParameterDefinitionWidget : public QgsProcessingAbstractParameterDefinitionWidget
1234 QgsProcessingCoordinateOperationParameterDefinitionWidget(
1235 QgsProcessingContext &context,
1236 const QgsProcessingParameterWidgetContext &widgetContext,
1237 const QgsProcessingParameterDefinition *definition =
nullptr,
1238 const QgsProcessingAlgorithm *
algorithm =
nullptr,
1244 QLineEdit *mDefaultLineEdit =
nullptr;
1246 QComboBox *mSourceParamComboBox =
nullptr;
1247 QComboBox *mDestParamComboBox =
nullptr;
1249 QgsProjectionSelectionWidget *mStaticSourceWidget =
nullptr;
1250 QgsProjectionSelectionWidget *mStaticDestWidget =
nullptr;
1253class GUI_EXPORT QgsProcessingCoordinateOperationWidgetWrapper :
public QgsAbstractProcessingParameterWidgetWrapper,
public QgsProcessingParameterWidgetFactoryInterface
1261 QString parameterType()
const override;
1262 QgsAbstractProcessingParameterWidgetWrapper *createWidgetWrapper(
const QgsProcessingParameterDefinition *parameter,
Qgis::ProcessingMode type )
override;
1263 QgsProcessingAbstractParameterDefinitionWidget *createParameterDefinitionWidget(
1264 QgsProcessingContext &context,
const QgsProcessingParameterWidgetContext &widgetContext,
const QgsProcessingParameterDefinition *definition =
nullptr,
const QgsProcessingAlgorithm *
algorithm =
nullptr
1269 void postInitialize( const QList<QgsAbstractProcessingParameterWidgetWrapper *> &wrappers ) override;
1270 void setWidgetContext( const QgsProcessingParameterWidgetContext &context ) override;
1273 void setWidgetValue( const QVariant &value, QgsProcessingContext &context ) override;
1274 QVariant widgetValue() const override;
1276 QString modelerExpressionFormatString() const override;
1279 void setSourceCrsParameterValue( const QVariant &value );
1280 void setDestinationCrsParameterValue( const QVariant &value );
1282 QgsCoordinateOperationWidget *mOperationWidget =
nullptr;
1283 QgsMapCanvas *mCanvas =
nullptr;
1284 QLineEdit *mLineEdit =
nullptr;
1285 QgsCoordinateReferenceSystem mSourceCrs;
1286 QgsCoordinateReferenceSystem mDestCrs;
1287 friend class TestProcessingGui;
1290class GUI_EXPORT QgsProcessingFieldPanelWidget : public QWidget
1295 QgsProcessingFieldPanelWidget( QWidget *parent =
nullptr,
const QgsProcessingParameterField *param =
nullptr );
1297 void setFields(
const QgsFields &fields );
1299 QgsFields fields()
const {
return mFields; }
1301 QVariant value()
const {
return mValue; }
1302 void setValue(
const QVariant &value );
1313 void updateSummaryText();
1317 const QgsProcessingParameterField *mParam =
nullptr;
1318 QLineEdit *mLineEdit =
nullptr;
1319 QToolButton *mToolButton =
nullptr;
1321 QVariantList mValue;
1323 friend class TestProcessingGui;
1326class GUI_EXPORT QgsProcessingFieldParameterDefinitionWidget :
public QgsProcessingAbstractParameterDefinitionWidget
1330 QgsProcessingFieldParameterDefinitionWidget(
1331 QgsProcessingContext &context,
1332 const QgsProcessingParameterWidgetContext &widgetContext,
1333 const QgsProcessingParameterDefinition *definition =
nullptr,
1334 const QgsProcessingAlgorithm *
algorithm =
nullptr,
1340 QComboBox *mParentLayerComboBox =
nullptr;
1341 QComboBox *mDataTypeComboBox =
nullptr;
1342 QLineEdit *mDefaultLineEdit =
nullptr;
1343 QCheckBox *mAllowMultipleCheckBox =
nullptr;
1344 QCheckBox *mDefaultToAllCheckBox =
nullptr;
1347class GUI_EXPORT QgsProcessingFieldWidgetWrapper :
public QgsAbstractProcessingParameterWidgetWrapper,
public QgsProcessingParameterWidgetFactoryInterface
1355 QString parameterType()
const override;
1356 QgsAbstractProcessingParameterWidgetWrapper *createWidgetWrapper(
const QgsProcessingParameterDefinition *parameter,
Qgis::ProcessingMode type )
override;
1357 QgsProcessingAbstractParameterDefinitionWidget *createParameterDefinitionWidget(
1358 QgsProcessingContext &context,
const QgsProcessingParameterWidgetContext &widgetContext,
const QgsProcessingParameterDefinition *definition =
nullptr,
const QgsProcessingAlgorithm *
algorithm =
nullptr
1363 void postInitialize( const QList<QgsAbstractProcessingParameterWidgetWrapper *> &wrappers ) override;
1366 void setParentLayerWrapperValue( const QgsAbstractProcessingParameterWidgetWrapper *parentWrapper );
1369 void setWidgetValue( const QVariant &value, QgsProcessingContext &context ) override;
1370 QVariant widgetValue() const override;
1372 QString modelerExpressionFormatString() const override;
1373 const QgsVectorLayer *linkedVectorLayer() const override;
1376 QgsFieldComboBox *mComboBox =
nullptr;
1377 QgsProcessingFieldPanelWidget *mPanel =
nullptr;
1378 QLineEdit *mLineEdit =
nullptr;
1380 std::unique_ptr<QgsVectorLayer> mParentLayer;
1382 QgsFields filterFields( const QgsFields &fields ) const;
1384 friend class TestProcessingGui;
1388class GUI_EXPORT QgsProcessingMapThemeParameterDefinitionWidget : public QgsProcessingAbstractParameterDefinitionWidget
1392 QgsProcessingMapThemeParameterDefinitionWidget(
1393 QgsProcessingContext &context,
1394 const QgsProcessingParameterWidgetContext &widgetContext,
1395 const QgsProcessingParameterDefinition *definition =
nullptr,
1396 const QgsProcessingAlgorithm *
algorithm =
nullptr,
1402 QComboBox *mDefaultComboBox =
nullptr;
1405class GUI_EXPORT QgsProcessingMapThemeWidgetWrapper :
public QgsAbstractProcessingParameterWidgetWrapper,
public QgsProcessingParameterWidgetFactoryInterface
1413 QString parameterType()
const override;
1414 QgsAbstractProcessingParameterWidgetWrapper *createWidgetWrapper(
const QgsProcessingParameterDefinition *parameter,
Qgis::ProcessingMode type )
override;
1415 QgsProcessingAbstractParameterDefinitionWidget *createParameterDefinitionWidget(
1416 QgsProcessingContext &context,
const QgsProcessingParameterWidgetContext &widgetContext,
const QgsProcessingParameterDefinition *definition =
nullptr,
const QgsProcessingAlgorithm *
algorithm =
nullptr
1423 void setWidgetValue( const QVariant &value, QgsProcessingContext &context ) override;
1424 QVariant widgetValue() const override;
1426 QString modelerExpressionFormatString() const override;
1429 QComboBox *mComboBox =
nullptr;
1431 friend class TestProcessingGui;
1435class GUI_EXPORT QgsProcessingDateTimeParameterDefinitionWidget : public QgsProcessingAbstractParameterDefinitionWidget
1439 QgsProcessingDateTimeParameterDefinitionWidget(
1440 QgsProcessingContext &context,
1441 const QgsProcessingParameterWidgetContext &widgetContext,
1442 const QgsProcessingParameterDefinition *definition =
nullptr,
1443 const QgsProcessingAlgorithm *
algorithm =
nullptr,
1449 QComboBox *mTypeComboBox =
nullptr;
1452class GUI_EXPORT QgsProcessingDateTimeWidgetWrapper :
public QgsAbstractProcessingParameterWidgetWrapper,
public QgsProcessingParameterWidgetFactoryInterface
1460 QString parameterType()
const override;
1461 QgsAbstractProcessingParameterWidgetWrapper *createWidgetWrapper(
const QgsProcessingParameterDefinition *parameter,
Qgis::ProcessingMode type )
override;
1465 QgsProcessingAbstractParameterDefinitionWidget *createParameterDefinitionWidget(
1466 QgsProcessingContext &context, const QgsProcessingParameterWidgetContext &widgetContext, const QgsProcessingParameterDefinition *definition =
nullptr, const QgsProcessingAlgorithm *
algorithm =
nullptr
1470 void setWidgetValue( const QVariant &value, QgsProcessingContext &context ) override;
1471 QVariant widgetValue() const override;
1473 QString modelerExpressionFormatString() const override;
1476 QgsDateTimeEdit *mDateTimeEdit =
nullptr;
1477 QgsDateEdit *mDateEdit =
nullptr;
1478 QgsTimeEdit *mTimeEdit =
nullptr;
1480 friend class TestProcessingGui;
1488class GUI_EXPORT QgsProcessingProviderConnectionParameterDefinitionWidget : public QgsProcessingAbstractParameterDefinitionWidget
1492 QgsProcessingProviderConnectionParameterDefinitionWidget(
1493 QgsProcessingContext &context,
1494 const QgsProcessingParameterWidgetContext &widgetContext,
1495 const QgsProcessingParameterDefinition *definition =
nullptr,
1496 const QgsProcessingAlgorithm *
algorithm =
nullptr,
1502 QComboBox *mProviderComboBox =
nullptr;
1503 QLineEdit *mDefaultEdit =
nullptr;
1506class GUI_EXPORT QgsProcessingProviderConnectionWidgetWrapper :
public QgsAbstractProcessingParameterWidgetWrapper,
public QgsProcessingParameterWidgetFactoryInterface
1514 QString parameterType()
const override;
1515 QgsAbstractProcessingParameterWidgetWrapper *createWidgetWrapper(
const QgsProcessingParameterDefinition *parameter,
Qgis::ProcessingMode type )
override;
1520 QgsProcessingAbstractParameterDefinitionWidget *createParameterDefinitionWidget(
1521 QgsProcessingContext &context, const QgsProcessingParameterWidgetContext &widgetContext, const QgsProcessingParameterDefinition *definition =
nullptr, const QgsProcessingAlgorithm *
algorithm =
nullptr
1525 void setWidgetValue( const QVariant &value, QgsProcessingContext &context ) override;
1526 QVariant widgetValue() const override;
1528 QString modelerExpressionFormatString() const override;
1531 QgsProviderConnectionComboBox *mProviderComboBox =
nullptr;
1532 int mBlockSignals = 0;
1534 friend class TestProcessingGui;
1538class GUI_EXPORT QgsProcessingDatabaseSchemaParameterDefinitionWidget : public QgsProcessingAbstractParameterDefinitionWidget
1542 QgsProcessingDatabaseSchemaParameterDefinitionWidget(
1543 QgsProcessingContext &context,
1544 const QgsProcessingParameterWidgetContext &widgetContext,
1545 const QgsProcessingParameterDefinition *definition =
nullptr,
1546 const QgsProcessingAlgorithm *
algorithm =
nullptr,
1552 QComboBox *mConnectionParamComboBox =
nullptr;
1553 QLineEdit *mDefaultEdit =
nullptr;
1556class GUI_EXPORT QgsProcessingDatabaseSchemaWidgetWrapper :
public QgsAbstractProcessingParameterWidgetWrapper,
public QgsProcessingParameterWidgetFactoryInterface
1564 QString parameterType()
const override;
1565 QgsAbstractProcessingParameterWidgetWrapper *createWidgetWrapper(
const QgsProcessingParameterDefinition *parameter,
Qgis::ProcessingMode type )
override;
1566 void postInitialize(
const QList<QgsAbstractProcessingParameterWidgetWrapper *> &wrappers )
override;
1571 QgsProcessingAbstractParameterDefinitionWidget *createParameterDefinitionWidget(
1572 QgsProcessingContext &context, const QgsProcessingParameterWidgetContext &widgetContext, const QgsProcessingParameterDefinition *definition =
nullptr, const QgsProcessingAlgorithm *
algorithm =
nullptr
1576 void setParentConnectionWrapperValue( const QgsAbstractProcessingParameterWidgetWrapper *parentWrapper );
1579 void setWidgetValue( const QVariant &value, QgsProcessingContext &context ) override;
1580 QVariant widgetValue() const override;
1582 QString modelerExpressionFormatString() const override;
1585 QgsDatabaseSchemaComboBox *mSchemaComboBox =
nullptr;
1586 int mBlockSignals = 0;
1588 friend class TestProcessingGui;
1592class GUI_EXPORT QgsProcessingDatabaseTableParameterDefinitionWidget : public QgsProcessingAbstractParameterDefinitionWidget
1596 QgsProcessingDatabaseTableParameterDefinitionWidget(
1597 QgsProcessingContext &context,
1598 const QgsProcessingParameterWidgetContext &widgetContext,
1599 const QgsProcessingParameterDefinition *definition =
nullptr,
1600 const QgsProcessingAlgorithm *
algorithm =
nullptr,
1606 QComboBox *mConnectionParamComboBox =
nullptr;
1607 QComboBox *mSchemaParamComboBox =
nullptr;
1608 QLineEdit *mDefaultEdit =
nullptr;
1611class GUI_EXPORT QgsProcessingDatabaseTableWidgetWrapper :
public QgsAbstractProcessingParameterWidgetWrapper,
public QgsProcessingParameterWidgetFactoryInterface
1619 QString parameterType()
const override;
1620 QgsAbstractProcessingParameterWidgetWrapper *createWidgetWrapper(
const QgsProcessingParameterDefinition *parameter,
Qgis::ProcessingMode type )
override;
1621 void postInitialize(
const QList<QgsAbstractProcessingParameterWidgetWrapper *> &wrappers )
override;
1626 QgsProcessingAbstractParameterDefinitionWidget *createParameterDefinitionWidget(
1627 QgsProcessingContext &context, const QgsProcessingParameterWidgetContext &widgetContext, const QgsProcessingParameterDefinition *definition =
nullptr, const QgsProcessingAlgorithm *
algorithm =
nullptr
1631 void setParentConnectionWrapperValue( const QgsAbstractProcessingParameterWidgetWrapper *parentWrapper );
1632 void setParentSchemaWrapperValue( const QgsAbstractProcessingParameterWidgetWrapper *parentWrapper );
1635 void setWidgetValue( const QVariant &value, QgsProcessingContext &context ) override;
1636 QVariant widgetValue() const override;
1638 QString modelerExpressionFormatString() const override;
1641 QgsDatabaseTableComboBox *mTableComboBox =
nullptr;
1642 int mBlockSignals = 0;
1643 QString mConnection;
1647 friend class TestProcessingGui;
1650class GUI_EXPORT QgsProcessingMapLayerParameterDefinitionWidget : public QgsProcessingAbstractParameterDefinitionWidget
1654 QgsProcessingMapLayerParameterDefinitionWidget(
1655 QgsProcessingContext &context,
1656 const QgsProcessingParameterWidgetContext &widgetContext,
1657 const QgsProcessingParameterDefinition *definition =
nullptr,
1658 const QgsProcessingAlgorithm *
algorithm =
nullptr,
1664 QgsCheckableComboBox *mLayerTypeComboBox =
nullptr;
1667class GUI_EXPORT QgsProcessingMapLayerWidgetWrapper :
public QgsAbstractProcessingParameterWidgetWrapper,
public QgsProcessingParameterWidgetFactoryInterface
1675 QString parameterType()
const override;
1676 QgsAbstractProcessingParameterWidgetWrapper *createWidgetWrapper(
const QgsProcessingParameterDefinition *parameter,
Qgis::ProcessingMode type )
override;
1677 QgsProcessingAbstractParameterDefinitionWidget *createParameterDefinitionWidget(
1678 QgsProcessingContext &context,
const QgsProcessingParameterWidgetContext &widgetContext,
const QgsProcessingParameterDefinition *definition =
nullptr,
const QgsProcessingAlgorithm *
algorithm =
nullptr
1681 void setWidgetContext(
const QgsProcessingParameterWidgetContext &context )
override;
1686 void setWidgetValue( const QVariant &value, QgsProcessingContext &context ) override;
1687 QVariant widgetValue() const override;
1689 QString modelerExpressionFormatString() const override;
1690 Qgis::ProcessingModelChildParameterSource defaultModelSource( const QgsProcessingParameterDefinition *parameter ) const override;
1693 QPointer<QgsProcessingMapLayerComboBox> mComboBox;
1694 int mBlockSignals = 0;
1696 friend class TestProcessingGui;
1700class GUI_EXPORT QgsProcessingRasterLayerWidgetWrapper : public QgsProcessingMapLayerWidgetWrapper
1708 QString parameterType()
const override;
1709 QgsAbstractProcessingParameterWidgetWrapper *createWidgetWrapper(
const QgsProcessingParameterDefinition *parameter,
Qgis::ProcessingMode type )
override;
1710 QgsProcessingAbstractParameterDefinitionWidget *createParameterDefinitionWidget(
1711 QgsProcessingContext &context,
const QgsProcessingParameterWidgetContext &widgetContext,
const QgsProcessingParameterDefinition *definition =
nullptr,
const QgsProcessingAlgorithm *
algorithm =
nullptr
1715 QString modelerExpressionFormatString()
const override;
1719class GUI_EXPORT QgsProcessingVectorLayerParameterDefinitionWidget :
public QgsProcessingAbstractParameterDefinitionWidget
1723 QgsProcessingVectorLayerParameterDefinitionWidget(
1724 QgsProcessingContext &context,
1725 const QgsProcessingParameterWidgetContext &widgetContext,
1726 const QgsProcessingParameterDefinition *definition =
nullptr,
1727 const QgsProcessingAlgorithm *
algorithm =
nullptr,
1733 QgsCheckableComboBox *mGeometryTypeComboBox =
nullptr;
1736class GUI_EXPORT QgsProcessingVectorLayerWidgetWrapper :
public QgsProcessingMapLayerWidgetWrapper
1744 QString parameterType()
const override;
1745 QgsAbstractProcessingParameterWidgetWrapper *createWidgetWrapper(
const QgsProcessingParameterDefinition *parameter,
Qgis::ProcessingMode type )
override;
1746 QgsProcessingAbstractParameterDefinitionWidget *createParameterDefinitionWidget(
1747 QgsProcessingContext &context,
const QgsProcessingParameterWidgetContext &widgetContext,
const QgsProcessingParameterDefinition *definition =
nullptr,
const QgsProcessingAlgorithm *
algorithm =
nullptr
1751 QString modelerExpressionFormatString()
const override;
1755class GUI_EXPORT QgsProcessingFeatureSourceParameterDefinitionWidget :
public QgsProcessingAbstractParameterDefinitionWidget
1759 QgsProcessingFeatureSourceParameterDefinitionWidget(
1760 QgsProcessingContext &context,
1761 const QgsProcessingParameterWidgetContext &widgetContext,
1762 const QgsProcessingParameterDefinition *definition =
nullptr,
1763 const QgsProcessingAlgorithm *
algorithm =
nullptr,
1769 QgsCheckableComboBox *mGeometryTypeComboBox =
nullptr;
1772class GUI_EXPORT QgsProcessingFeatureSourceWidgetWrapper :
public QgsProcessingMapLayerWidgetWrapper
1780 QString parameterType()
const override;
1781 QgsAbstractProcessingParameterWidgetWrapper *createWidgetWrapper(
const QgsProcessingParameterDefinition *parameter,
Qgis::ProcessingMode type )
override;
1782 QgsProcessingAbstractParameterDefinitionWidget *createParameterDefinitionWidget(
1783 QgsProcessingContext &context,
const QgsProcessingParameterWidgetContext &widgetContext,
const QgsProcessingParameterDefinition *definition =
nullptr,
const QgsProcessingAlgorithm *
algorithm =
nullptr
1787 QString modelerExpressionFormatString()
const override;
1791class GUI_EXPORT QgsProcessingMeshLayerWidgetWrapper :
public QgsProcessingMapLayerWidgetWrapper
1799 QString parameterType()
const override;
1800 QgsAbstractProcessingParameterWidgetWrapper *createWidgetWrapper(
const QgsProcessingParameterDefinition *parameter,
Qgis::ProcessingMode type )
override;
1801 QgsProcessingAbstractParameterDefinitionWidget *createParameterDefinitionWidget(
1802 QgsProcessingContext &context,
const QgsProcessingParameterWidgetContext &widgetContext,
const QgsProcessingParameterDefinition *definition =
nullptr,
const QgsProcessingAlgorithm *
algorithm =
nullptr
1806 QString modelerExpressionFormatString()
const override;
1810class GUI_EXPORT QgsProcessingRasterBandPanelWidget :
public QWidget
1815 QgsProcessingRasterBandPanelWidget( QWidget *parent =
nullptr,
const QgsProcessingParameterBand *param =
nullptr );
1817 void setBands(
const QList<int> &bands );
1818 void setBandNames(
const QHash<int, QString> &names );
1819 QList<int> bands()
const {
return mBands; }
1821 QVariant value()
const {
return mValue; }
1822 void setValue(
const QVariant &value );
1833 void updateSummaryText();
1836 QHash<int, QString> mBandNames;
1838 const QgsProcessingParameterBand *mParam =
nullptr;
1839 QLineEdit *mLineEdit =
nullptr;
1840 QToolButton *mToolButton =
nullptr;
1842 QVariantList mValue;
1844 friend class TestProcessingGui;
1847class GUI_EXPORT QgsProcessingBandParameterDefinitionWidget :
public QgsProcessingAbstractParameterDefinitionWidget
1851 QgsProcessingBandParameterDefinitionWidget(
1852 QgsProcessingContext &context,
1853 const QgsProcessingParameterWidgetContext &widgetContext,
1854 const QgsProcessingParameterDefinition *definition =
nullptr,
1855 const QgsProcessingAlgorithm *
algorithm =
nullptr,
1861 QComboBox *mParentLayerComboBox =
nullptr;
1862 QLineEdit *mDefaultLineEdit =
nullptr;
1863 QCheckBox *mAllowMultipleCheckBox =
nullptr;
1866class GUI_EXPORT QgsProcessingBandWidgetWrapper :
public QgsAbstractProcessingParameterWidgetWrapper,
public QgsProcessingParameterWidgetFactoryInterface
1874 QString parameterType()
const override;
1875 QgsAbstractProcessingParameterWidgetWrapper *createWidgetWrapper(
const QgsProcessingParameterDefinition *parameter,
Qgis::ProcessingMode type )
override;
1876 QgsProcessingAbstractParameterDefinitionWidget *createParameterDefinitionWidget(
1877 QgsProcessingContext &context,
const QgsProcessingParameterWidgetContext &widgetContext,
const QgsProcessingParameterDefinition *definition =
nullptr,
const QgsProcessingAlgorithm *
algorithm =
nullptr
1882 void postInitialize( const QList<QgsAbstractProcessingParameterWidgetWrapper *> &wrappers ) override;
1885 void setParentLayerWrapperValue( const QgsAbstractProcessingParameterWidgetWrapper *parentWrapper );
1888 void setWidgetValue( const QVariant &value, QgsProcessingContext &context ) override;
1889 QVariant widgetValue() const override;
1891 QString modelerExpressionFormatString() const override;
1894 QgsRasterBandComboBox *mComboBox =
nullptr;
1895 QgsProcessingRasterBandPanelWidget *mPanel =
nullptr;
1896 QLineEdit *mLineEdit =
nullptr;
1898 std::unique_ptr<QgsRasterLayer> mParentLayer;
1900 friend class TestProcessingGui;
1904class GUI_EXPORT QgsProcessingMultipleLayerLineEdit : public QgsHighlightableLineEdit
1909 QgsProcessingMultipleLayerLineEdit( QWidget *parent =
nullptr,
const QgsProcessingParameterMultipleLayers *param =
nullptr );
1910 void dragEnterEvent( QDragEnterEvent *event )
override;
1911 void dragLeaveEvent( QDragLeaveEvent *event )
override;
1912 void dropEvent( QDropEvent *event )
override;
1916 void layersDropped(
const QVariantList &value );
1919 const QgsProcessingParameterMultipleLayers *mParam =
nullptr;
1922class GUI_EXPORT QgsProcessingMultipleLayerPanelWidget :
public QWidget
1927 QgsProcessingMultipleLayerPanelWidget( QWidget *parent =
nullptr,
const QgsProcessingParameterMultipleLayers *param =
nullptr );
1929 QVariant value()
const {
return mValue; }
1930 void setValue(
const QVariant &value );
1932 void setProject( QgsProject *project );
1933 void setModel( QgsProcessingModelAlgorithm *model,
const QString &modelChildAlgorithmID );
1944 void updateSummaryText();
1946 const QgsProcessingParameterMultipleLayers *mParam =
nullptr;
1947 QgsProcessingMultipleLayerLineEdit *mLineEdit =
nullptr;
1948 QToolButton *mToolButton =
nullptr;
1950 QVariantList mValue;
1951 QList<QgsProcessingModelChildParameterSource> mModelSources;
1952 QgsProcessingModelAlgorithm *mModel =
nullptr;
1954 QgsProject *mProject =
nullptr;
1956 friend class TestProcessingGui;
1959class GUI_EXPORT QgsProcessingMultipleLayerParameterDefinitionWidget :
public QgsProcessingAbstractParameterDefinitionWidget
1963 QgsProcessingMultipleLayerParameterDefinitionWidget(
1964 QgsProcessingContext &context,
1965 const QgsProcessingParameterWidgetContext &widgetContext,
1966 const QgsProcessingParameterDefinition *definition =
nullptr,
1967 const QgsProcessingAlgorithm *
algorithm =
nullptr,
1973 QComboBox *mLayerTypeComboBox =
nullptr;
1976class GUI_EXPORT QgsProcessingMultipleLayerWidgetWrapper :
public QgsAbstractProcessingParameterWidgetWrapper,
public QgsProcessingParameterWidgetFactoryInterface
1984 QString parameterType()
const override;
1985 QgsAbstractProcessingParameterWidgetWrapper *createWidgetWrapper(
const QgsProcessingParameterDefinition *parameter,
Qgis::ProcessingMode type )
override;
1986 QgsProcessingAbstractParameterDefinitionWidget *createParameterDefinitionWidget(
1987 QgsProcessingContext &context,
const QgsProcessingParameterWidgetContext &widgetContext,
const QgsProcessingParameterDefinition *definition =
nullptr,
const QgsProcessingAlgorithm *
algorithm =
nullptr
1992 void setWidgetContext( const QgsProcessingParameterWidgetContext &context ) override;
1995 void setWidgetValue( const QVariant &value, QgsProcessingContext &context ) override;
1996 QVariant widgetValue() const override;
1998 QString modelerExpressionFormatString() const override;
2001 QgsProcessingMultipleLayerPanelWidget *mPanel =
nullptr;
2003 friend class TestProcessingGui;
2007class GUI_EXPORT QgsProcessingOutputWidgetWrapper : public QgsAbstractProcessingParameterWidgetWrapper, public QgsProcessingParameterWidgetFactoryInterface
2018 void setWidgetValue( const QVariant &value, QgsProcessingContext &context ) override;
2019 QVariant widgetValue() const override;
2020 QVariantMap customProperties() const override;
2023 QgsProcessingLayerOutputDestinationWidget *mOutputWidget =
nullptr;
2024 int mBlockSignals = 0;
2026 friend class TestProcessingGui;
2030class GUI_EXPORT QgsProcessingFeatureSinkWidgetWrapper : public QgsProcessingOutputWidgetWrapper
2038 QString parameterType()
const override;
2039 QgsAbstractProcessingParameterWidgetWrapper *createWidgetWrapper(
const QgsProcessingParameterDefinition *parameter,
Qgis::ProcessingMode type )
override;
2042 QString modelerExpressionFormatString()
const override;
2045 QgsProcessingContext mContext;
2048class GUI_EXPORT QgsProcessingVectorDestinationWidgetWrapper :
public QgsProcessingOutputWidgetWrapper
2056 QString parameterType()
const override;
2057 QgsAbstractProcessingParameterWidgetWrapper *createWidgetWrapper(
const QgsProcessingParameterDefinition *parameter,
Qgis::ProcessingMode type )
override;
2060 QString modelerExpressionFormatString()
const override;
2063class GUI_EXPORT QgsProcessingRasterDestinationWidgetWrapper :
public QgsProcessingOutputWidgetWrapper
2071 QString parameterType()
const override;
2072 QgsAbstractProcessingParameterWidgetWrapper *createWidgetWrapper(
const QgsProcessingParameterDefinition *parameter,
Qgis::ProcessingMode type )
override;
2075 QString modelerExpressionFormatString()
const override;
2078class GUI_EXPORT QgsProcessingPointCloudDestinationWidgetWrapper :
public QgsProcessingOutputWidgetWrapper
2086 QString parameterType()
const override;
2087 QgsAbstractProcessingParameterWidgetWrapper *createWidgetWrapper(
const QgsProcessingParameterDefinition *parameter,
Qgis::ProcessingMode type )
override;
2090 QString modelerExpressionFormatString()
const override;
2093class GUI_EXPORT QgsProcessingFileDestinationWidgetWrapper :
public QgsProcessingOutputWidgetWrapper
2101 QString parameterType()
const override;
2102 QgsAbstractProcessingParameterWidgetWrapper *createWidgetWrapper(
const QgsProcessingParameterDefinition *parameter,
Qgis::ProcessingMode type )
override;
2105 QString modelerExpressionFormatString()
const override;
2108class GUI_EXPORT QgsProcessingFolderDestinationWidgetWrapper :
public QgsProcessingOutputWidgetWrapper
2116 QString parameterType()
const override;
2117 QgsAbstractProcessingParameterWidgetWrapper *createWidgetWrapper(
const QgsProcessingParameterDefinition *parameter,
Qgis::ProcessingMode type )
override;
2120 QString modelerExpressionFormatString()
const override;
2123class GUI_EXPORT QgsProcessingPointCloudLayerWidgetWrapper :
public QgsProcessingMapLayerWidgetWrapper
2131 QString parameterType()
const override;
2132 QgsAbstractProcessingParameterWidgetWrapper *createWidgetWrapper(
const QgsProcessingParameterDefinition *parameter,
Qgis::ProcessingMode type )
override;
2133 QgsProcessingAbstractParameterDefinitionWidget *createParameterDefinitionWidget(
2134 QgsProcessingContext &context,
const QgsProcessingParameterWidgetContext &widgetContext,
const QgsProcessingParameterDefinition *definition =
nullptr,
const QgsProcessingAlgorithm *
algorithm =
nullptr
2138 QString modelerExpressionFormatString()
const override;
2142class GUI_EXPORT QgsProcessingAnnotationLayerWidgetWrapper :
public QgsAbstractProcessingParameterWidgetWrapper,
public QgsProcessingParameterWidgetFactoryInterface
2150 QString parameterType()
const override;
2151 QgsAbstractProcessingParameterWidgetWrapper *createWidgetWrapper(
const QgsProcessingParameterDefinition *parameter,
Qgis::ProcessingMode type )
override;
2152 QgsProcessingAbstractParameterDefinitionWidget *createParameterDefinitionWidget(
2153 QgsProcessingContext &context,
const QgsProcessingParameterWidgetContext &widgetContext,
const QgsProcessingParameterDefinition *definition =
nullptr,
const QgsProcessingAlgorithm *
algorithm =
nullptr
2155 void setWidgetContext(
const QgsProcessingParameterWidgetContext &context )
override;
2160 void setWidgetValue( const QVariant &value, QgsProcessingContext &context ) override;
2161 QVariant widgetValue() const override;
2163 QString modelerExpressionFormatString() const override;
2166 QPointer<QgsMapLayerComboBox> mComboBox;
2167 int mBlockSignals = 0;
2169 friend class TestProcessingGui;
2173class GUI_EXPORT QgsProcessingPointCloudAttributePanelWidget : public QWidget
2178 QgsProcessingPointCloudAttributePanelWidget( QWidget *parent =
nullptr,
const QgsProcessingParameterPointCloudAttribute *param =
nullptr );
2180 void setAttributes(
const QgsPointCloudAttributeCollection &attributes );
2182 QgsPointCloudAttributeCollection attributes()
const {
return mAttributes; }
2184 QVariant value()
const {
return mValue; }
2185 void setValue(
const QVariant &value );
2196 void updateSummaryText();
2198 QgsPointCloudAttributeCollection mAttributes;
2200 const QgsProcessingParameterPointCloudAttribute *mParam =
nullptr;
2201 QLineEdit *mLineEdit =
nullptr;
2202 QToolButton *mToolButton =
nullptr;
2204 QVariantList mValue;
2206 friend class TestProcessingGui;
2209class GUI_EXPORT QgsProcessingPointCloudAttributeParameterDefinitionWidget :
public QgsProcessingAbstractParameterDefinitionWidget
2213 QgsProcessingPointCloudAttributeParameterDefinitionWidget(
2214 QgsProcessingContext &context,
2215 const QgsProcessingParameterWidgetContext &widgetContext,
2216 const QgsProcessingParameterDefinition *definition =
nullptr,
2217 const QgsProcessingAlgorithm *
algorithm =
nullptr,
2223 QComboBox *mParentLayerComboBox =
nullptr;
2224 QLineEdit *mDefaultLineEdit =
nullptr;
2225 QCheckBox *mAllowMultipleCheckBox =
nullptr;
2226 QCheckBox *mDefaultToAllCheckBox =
nullptr;
2229class GUI_EXPORT QgsProcessingPointCloudAttributeWidgetWrapper :
public QgsAbstractProcessingParameterWidgetWrapper,
public QgsProcessingParameterWidgetFactoryInterface
2237 QString parameterType()
const override;
2238 QgsAbstractProcessingParameterWidgetWrapper *createWidgetWrapper(
const QgsProcessingParameterDefinition *parameter,
Qgis::ProcessingMode type )
override;
2239 QgsProcessingAbstractParameterDefinitionWidget *createParameterDefinitionWidget(
2240 QgsProcessingContext &context,
const QgsProcessingParameterWidgetContext &widgetContext,
const QgsProcessingParameterDefinition *definition =
nullptr,
const QgsProcessingAlgorithm *
algorithm =
nullptr
2245 void postInitialize( const QList<QgsAbstractProcessingParameterWidgetWrapper *> &wrappers ) override;
2248 void setParentLayerWrapperValue( const QgsAbstractProcessingParameterWidgetWrapper *parentWrapper );
2251 void setWidgetValue( const QVariant &value, QgsProcessingContext &context ) override;
2252 QVariant widgetValue() const override;
2254 QString modelerExpressionFormatString() const override;
2257 QgsPointCloudAttributeComboBox *mComboBox =
nullptr;
2258 QgsProcessingPointCloudAttributePanelWidget *mPanel =
nullptr;
2259 QLineEdit *mLineEdit =
nullptr;
2261 std::unique_ptr<QgsPointCloudLayer> mParentLayer;
2263 friend class TestProcessingGui;
2266class GUI_EXPORT QgsProcessingVectorTileDestinationWidgetWrapper : public QgsProcessingOutputWidgetWrapper
2274 QString parameterType()
const override;
2275 QgsAbstractProcessingParameterWidgetWrapper *createWidgetWrapper(
const QgsProcessingParameterDefinition *parameter,
Qgis::ProcessingMode type )
override;
2278 QString modelerExpressionFormatString()
const override;
2282class GUI_EXPORT QgsHeatmapPixelSizeWidget :
public QgsPanelWidget,
private Ui::QgsHeatmapPixelSizeWidgetBase
2286 QgsHeatmapPixelSizeWidget( QWidget *parent =
nullptr );
2288 void setLayer( QgsVectorLayer *layer );
2289 QgsVectorLayer *layer();
2290 void setRadius(
double radius );
2291 void setRadiusField(
const QString &radiusField );
2293 double value()
const;
2294 void setValue(
double value );
2297 void valueChanged();
2300 void pixelSizeChanged();
2302 void columnsChanged();
2305 void recalculateBounds();
2307 QPointer<QgsVectorLayer> mLayer;
2308 QgsRectangle mLayerBounds;
2309 QgsRectangle mRasterBounds;
2310 double mRadius = 100.0;
2311 QString mRadiusField;
2313 friend class TestProcessingGui;
2316class GUI_EXPORT QgsProcessingHeatmapPixelSizeWidgetWrapper :
public QgsAbstractProcessingParameterWidgetWrapper,
public QgsProcessingParameterWidgetFactoryInterface
2323 QString parameterType()
const override;
2324 QgsAbstractProcessingParameterWidgetWrapper *createWidgetWrapper(
const QgsProcessingParameterDefinition *parameter,
Qgis::ProcessingMode type )
override;
2325 QgsProcessingAbstractParameterDefinitionWidget *createParameterDefinitionWidget(
2326 QgsProcessingContext &context,
const QgsProcessingParameterWidgetContext &widgetContext,
const QgsProcessingParameterDefinition *definition =
nullptr,
const QgsProcessingAlgorithm *
algorithm =
nullptr
2330 QWidget *createWidget()
override;
2331 void postInitialize(
const QList<QgsAbstractProcessingParameterWidgetWrapper *> &wrappers )
override;
2334 void setParentLayerWrapperValue(
const QgsAbstractProcessingParameterWidgetWrapper *parentWrapper );
2337 void setWidgetValue(
const QVariant &value, QgsProcessingContext &context )
override;
2338 QVariant widgetValue()
const override;
2339 const QgsVectorLayer *linkedVectorLayer()
const override;
2342 void radiusChanged( QgsAbstractProcessingParameterWidgetWrapper *wrapper );
2343 void radiusFieldChanged( QgsAbstractProcessingParameterWidgetWrapper *wrapper );
2346 QgsHeatmapPixelSizeWidget *mWidget =
nullptr;
2347 QgsDoubleSpinBox *mFallbackSpinBox =
nullptr;
2349 std::unique_ptr<QgsMapLayer> mParentLayer;
2351 friend class TestProcessingGui;
2355class GUI_EXPORT QgsReliefColorsWidget :
public QgsPanelWidget,
private Ui::QgsProcessingReliefColorsWidgetBase
2359 QgsReliefColorsWidget( QWidget *parent =
nullptr );
2361 void setLayer( QgsRasterLayer *layer );
2362 QgsRasterLayer *layer();
2364 QList< QgsRasterReliefColor > colors()
const;
2366 void setColors(
const QList< QgsRasterReliefColor > &colors );
2370 void autoCalculate();
2373 void valueChanged();
2377 void removeClicked();
2382 void itemDoubleClicked( QTreeWidgetItem *item,
int column );
2385 QPointer<QgsRasterLayer> mLayer;
2389class GUI_EXPORT QgsProcessingReliefColorsWidgetWrapper :
public QgsAbstractProcessingParameterWidgetWrapper,
public QgsProcessingParameterWidgetFactoryInterface
2396 QString parameterType()
const override;
2397 QgsAbstractProcessingParameterWidgetWrapper *createWidgetWrapper(
const QgsProcessingParameterDefinition *parameter,
Qgis::ProcessingMode type )
override;
2398 QgsProcessingAbstractParameterDefinitionWidget *createParameterDefinitionWidget(
2399 QgsProcessingContext &context,
const QgsProcessingParameterWidgetContext &widgetContext,
const QgsProcessingParameterDefinition *definition =
nullptr,
const QgsProcessingAlgorithm *
algorithm =
nullptr
2403 QWidget *createWidget()
override;
2404 void postInitialize(
const QList<QgsAbstractProcessingParameterWidgetWrapper *> &wrappers )
override;
2407 void setParentLayerWrapperValue(
const QgsAbstractProcessingParameterWidgetWrapper *parentWrapper );
2410 void setWidgetValue(
const QVariant &value, QgsProcessingContext &context )
override;
2411 QVariant widgetValue()
const override;
2412 QString modelerExpressionFormatString()
const override;
2415 QgsReliefColorsWidget *mWidget =
nullptr;
2416 QLineEdit *mFallbackLineEdit =
nullptr;
2418 std::unique_ptr<QgsRasterLayer> mParentLayer;
2420 friend class TestProcessingGui;
ProcessingMode
Types of modes which Processing widgets can be created for.
@ Standard
Standard (single-run) algorithm mode.
QFlags< ProcessingParameterFlag > ProcessingParameterFlags
Flags which dictate the behavior of Processing parameters.
Selector widget for authentication configs.
QComboBox subclass which allows selecting multiple items.
A combo box which displays the list of schemas for a specific database connection.
A combobox which displays the list of tables for a specific database connection.
A QDateEdit widget with the capability of setting/reading null dates.
A QDateTimeEdit with the capability of setting/reading null date/times.
The QgsSpinBox is a spin box with a clear button that will set the value to the defined clear value.
A widget which includes a line edit for entering expressions together with a button to open the expre...
A combobox which displays the list of fields of a given layer.
QLineEdit subclass with built in support for clearing the widget's value and handling custom null val...
A QgsFilterLineEdit subclass with the ability to "highlight" the edges of the widget.
A combobox which displays available layouts from a QgsLayoutManager.
A combo box which displays items of a matching type from a layout.
A combobox which displays a dynamic list of layers from a QGIS project.
A combobox which displays the list of attributes of a given point cloud layer.
Print layout, a QgsLayout subclass for static or atlas-based layouts.
Abstract base class for processing algorithms.
Contains information about the context in which a processing algorithm is executed.
Base class for the definition of processing parameters.
An enum based parameter for processing algorithms, allowing for selection from predefined values.
Contains settings which reflect the context in which a Processing parameter widget is shown.
A combo box which displays the list of connections registered for a given provider.
A combobox widget which displays the bands present in a raster layer.
Responsible for drawing transient features (e.g.
Shows a snapping marker on map canvas for the current snapping match.
A spin box with a clear button that will set the value to the defined clear value.
A QTimeEdit widget with the capability of setting/reading null date/times.
As part of the API refactoring and improvements which landed in the Processing API was substantially reworked from the x version This was done in order to allow much of the underlying Processing framework to be ported into allowing algorithms to be written in pure substantial changes are required in order to port existing x Processing algorithms for QGIS x The most significant changes are outlined not GeoAlgorithm For algorithms which operate on features one by consider subclassing the QgsProcessingFeatureBasedAlgorithm class This class allows much of the boilerplate code for looping over features from a vector layer to be bypassed and instead requires implementation of a processFeature method Ensure that your algorithm(or algorithm 's parent class) implements the new pure virtual createInstance(self) call