19 #ifndef QGSPROCESSINGWIDGETWRAPPERIMPL_H 20 #define QGSPROCESSINGWIDGETWRAPPERIMPL_H 26 #include <QAbstractButton> 38 class QgsProcessingMatrixParameterPanel;
67 QLabel *createLabel() override SIP_FACTORY;
72 QVariant widgetValue() const override;
74 QStringList compatibleParameterTypes() const override;
76 QStringList compatibleOutputTypes() const override;
78 QList<
int > compatibleDataTypes() const override;
82 QCheckBox *mCheckBox =
nullptr;
83 QComboBox *mComboBox =
nullptr;
85 friend class TestProcessingGui;
107 QVariant widgetValue() const override;
109 QStringList compatibleParameterTypes() const override;
110 QStringList compatibleOutputTypes() const override;
111 QList<
int > compatibleDataTypes() const override;
112 QString modelerExpressionFormatString() const override;
117 QCheckBox *mUseProjectCrsCheckBox =
nullptr;
119 friend class TestProcessingGui;
122 class GUI_EXPORT QgsProcessingStringWidgetWrapper : public QgsAbstractProcessingParameterWidgetWrapper, public QgsProcessingParameterWidgetFactoryInterface
141 QVariant widgetValue() const override;
143 QStringList compatibleParameterTypes() const override;
145 QStringList compatibleOutputTypes() const override;
147 QList<
int > compatibleDataTypes() const override;
151 QLineEdit *mLineEdit =
nullptr;
152 QPlainTextEdit *mPlainTextEdit =
nullptr;
154 friend class TestProcessingGui;
158 class GUI_EXPORT QgsProcessingAuthConfigWidgetWrapper : public QgsAbstractProcessingParameterWidgetWrapper, public QgsProcessingParameterWidgetFactoryInterface
177 QVariant widgetValue() const override;
179 QStringList compatibleParameterTypes() const override;
181 QStringList compatibleOutputTypes() const override;
183 QList<
int > compatibleDataTypes() const override;
189 friend class TestProcessingGui;
193 class GUI_EXPORT QgsProcessingNumericWidgetWrapper : public QgsAbstractProcessingParameterWidgetWrapper, public QgsProcessingParameterWidgetFactoryInterface
212 QVariant widgetValue() const override;
214 QStringList compatibleParameterTypes() const override;
216 QStringList compatibleOutputTypes() const override;
218 QList<
int > compatibleDataTypes() const override;
227 static
double calculateStep(
double minimum,
double maximum );
229 bool mAllowingNull = false;
231 friend class TestProcessingGui;
235 class GUI_EXPORT QgsProcessingDistanceWidgetWrapper : public QgsProcessingNumericWidgetWrapper
250 void postInitialize( const QList< QgsAbstractProcessingParameterWidgetWrapper * > &wrappers ) override;
253 void setUnitParameterValue( const QVariant &value );
258 QVariant widgetValue() const override;
263 QLabel *mLabel =
nullptr;
264 QWidget *mWarningLabel =
nullptr;
265 QComboBox *mUnitsCombo =
nullptr;
267 friend class TestProcessingGui;
271 class GUI_EXPORT QgsProcessingScaleWidgetWrapper : public QgsProcessingNumericWidgetWrapper
289 QVariant widgetValue() const override;
296 friend class TestProcessingGui;
299 class GUI_EXPORT QgsProcessingRangeWidgetWrapper : public QgsAbstractProcessingParameterWidgetWrapper, public QgsProcessingParameterWidgetFactoryInterface
318 QVariant widgetValue() const override;
319 QStringList compatibleParameterTypes() const override;
320 QStringList compatibleOutputTypes() const override;
321 QList<
int > compatibleDataTypes() const override;
322 QString modelerExpressionFormatString() const override;
331 int mBlockChangedSignal = 0;
333 friend class TestProcessingGui;
337 class GUI_EXPORT QgsProcessingMatrixWidgetWrapper : public QgsAbstractProcessingParameterWidgetWrapper, public QgsProcessingParameterWidgetFactoryInterface
356 QVariant widgetValue() const override;
358 QStringList compatibleParameterTypes() const override;
359 QStringList compatibleOutputTypes() const override;
360 QList<
int > compatibleDataTypes() const override;
361 QString modelerExpressionFormatString() const override;
365 QgsProcessingMatrixParameterPanel *mMatrixWidget =
nullptr;
367 friend class TestProcessingGui;
370 class GUI_EXPORT QgsProcessingFileWidgetWrapper : public QgsAbstractProcessingParameterWidgetWrapper, public QgsProcessingParameterWidgetFactoryInterface
389 QVariant widgetValue() const override;
391 QStringList compatibleParameterTypes() const override;
393 QStringList compatibleOutputTypes() const override;
395 QList<
int > compatibleDataTypes() const override;
396 QString modelerExpressionFormatString() const override;
402 friend class TestProcessingGui;
405 class GUI_EXPORT QgsProcessingExpressionWidgetWrapper : public QgsAbstractProcessingParameterWidgetWrapper, public QgsProcessingParameterWidgetFactoryInterface
420 void postInitialize( const QList< QgsAbstractProcessingParameterWidgetWrapper * > &wrappers ) override;
422 void setParentLayerWrapperValue( const QgsAbstractProcessingParameterWidgetWrapper *parentWrapper );
426 QVariant widgetValue() const override;
428 QStringList compatibleParameterTypes() const override;
430 QStringList compatibleOutputTypes() const override;
432 QList<
int > compatibleDataTypes() const override;
433 QString modelerExpressionFormatString() const override;
441 friend class TestProcessingGui;
445 class GUI_EXPORT QgsProcessingEnumCheckboxPanelWidget : public QWidget
451 QgsProcessingEnumCheckboxPanelWidget( QWidget *parent =
nullptr,
const QgsProcessingParameterEnum *param =
nullptr,
int columns = 2 );
452 QVariant value()
const;
453 void setValue(
const QVariant &value );
461 void showPopupMenu();
468 QMap< QVariant, QAbstractButton * > mButtons;
469 QButtonGroup *mButtonGroup =
nullptr;
471 bool mBlockChangedSignal =
false;
473 friend class TestProcessingGui;
476 class GUI_EXPORT QgsProcessingEnumPanelWidget :
public QWidget
483 QVariant value()
const {
return mValue; }
484 void setValue(
const QVariant &value );
496 void updateSummaryText();
499 QLineEdit *mLineEdit =
nullptr;
500 QToolButton *mToolButton =
nullptr;
504 friend class TestProcessingGui;
508 class GUI_EXPORT QgsProcessingEnumWidgetWrapper :
public QgsAbstractProcessingParameterWidgetWrapper,
public QgsProcessingParameterWidgetFactoryInterface
527 QVariant widgetValue() const override;
529 QStringList compatibleParameterTypes() const override;
531 QStringList compatibleOutputTypes() const override;
533 QList<
int > compatibleDataTypes() const override;
534 QString modelerExpressionFormatString() const override;
537 QComboBox *mComboBox =
nullptr;
538 QgsProcessingEnumPanelWidget *mPanel =
nullptr;
539 QgsProcessingEnumCheckboxPanelWidget *mCheckboxPanel =
nullptr;
541 friend class TestProcessingGui;
546 class GUI_EXPORT QgsProcessingLayoutWidgetWrapper : public QgsAbstractProcessingParameterWidgetWrapper, public QgsProcessingParameterWidgetFactoryInterface
565 QVariant widgetValue() const override;
567 QStringList compatibleParameterTypes() const override;
569 QStringList compatibleOutputTypes() const override;
571 QList<
int > compatibleDataTypes() const override;
572 QString modelerExpressionFormatString() const override;
576 QLineEdit *mLineEdit =
nullptr;
578 friend class TestProcessingGui;
582 class GUI_EXPORT QgsProcessingLayoutItemWidgetWrapper : public QgsAbstractProcessingParameterWidgetWrapper, public QgsProcessingParameterWidgetFactoryInterface
597 void postInitialize( const QList< QgsAbstractProcessingParameterWidgetWrapper * > &wrappers ) override;
601 void setLayoutParameterValue( const QVariant &value );
607 QVariant widgetValue() const override;
609 QStringList compatibleParameterTypes() const override;
611 QStringList compatibleOutputTypes() const override;
613 QList<
int > compatibleDataTypes() const override;
614 QString modelerExpressionFormatString() const override;
618 QLineEdit *mLineEdit =
nullptr;
620 friend class TestProcessingGui;
623 class GUI_EXPORT QgsProcessingPointMapTool : public
QgsMapTool 628 ~QgsProcessingPointMapTool()
override;
629 void deactivate()
override;
632 void keyPressEvent( QKeyEvent *e )
override;
641 std::unique_ptr<QgsSnapIndicator> mSnapIndicator;
642 friend class TestProcessingGui;
645 class GUI_EXPORT QgsProcessingPointPanel :
public QWidget
651 QgsProcessingPointPanel( QWidget *parent );
653 void setAllowNull(
bool allowNull );
655 QVariant value()
const;
661 void toggleDialogVisibility(
bool visible );
666 void selectOnCanvas();
673 QToolButton *mButton =
nullptr;
676 QPointer< QgsMapTool > mPrevTool;
677 std::unique_ptr< QgsProcessingPointMapTool > mTool;
678 friend class TestProcessingGui;
682 class GUI_EXPORT QgsProcessingPointWidgetWrapper :
public QgsAbstractProcessingParameterWidgetWrapper,
public QgsProcessingParameterWidgetFactoryInterface
698 void setDialog( QDialog *dialog ) override;
703 QVariant widgetValue() const override;
705 QStringList compatibleParameterTypes() const override;
707 QStringList compatibleOutputTypes() const override;
709 QList<
int > compatibleDataTypes() const override;
710 QString modelerExpressionFormatString() const override;
713 QgsProcessingPointPanel *mPanel =
nullptr;
714 QLineEdit *mLineEdit =
nullptr;
715 QDialog *mDialog =
nullptr;
717 friend class TestProcessingGui;
722 #endif // QGSPROCESSINGWIDGETWRAPPERIMPL_H The QgsSpinBox is a spin box with a clear button that will set the value to the defined clear value...
WidgetType
Types of dialogs which Processing widgets can be created for.
A class to represent a 2D point.
Helper functions for various unit types.
The QgsSpinBox is a spin box with a clear button that will set the value to the defined clear value...
A QgsMapMouseEvent is the result of a user interaction with the mouse on a QgsMapCanvas.
const QgsCoordinateReferenceSystem & crs
Map canvas is a class for displaying all GIS data types on a canvas.
The QgsLayoutItemComboBox class is a combo box which displays items of a matching type from a layout...
An enum based parameter for processing algorithms, allowing for selection from predefined values...
std::unique_ptr< GEOSGeometry, GeosDeleter > unique_ptr
Scoped GEOS pointer.
QLineEdit subclass with built in support for clearing the widget's value and handling custom null val...
Contains settings which reflect the context in which a Processing parameter widget is shown...
The QgsExpressionLineEdit widget includes a line edit for entering expressions together with a button...
This class represents a coordinate reference system (CRS).
Base class for the definition of processing parameters.
Class that shows snapping marker on map canvas for the current snapping match.
Print layout, a QgsLayout subclass for static or atlas-based layouts.
Represents a vector layer which manages a vector based data sets.
Contains information about the context in which a processing algorithm is executed.
The QgsLayoutComboBox class is a combo box which displays available layouts from a QgsLayoutManager...
Selector widget for authentication configs.
Standard algorithm dialog.