19 #ifndef QGSPROCESSINGMODELERPARAMETERWIDGET_H
20 #define QGSPROCESSINGMODELERPARAMETERWIDGET_H
27 #include "processing/models/qgsprocessingmodelchildparametersource.h"
32 class QgsProcessingModelAlgorithm;
81 const QString &childId,
115 void populateSources(
const QStringList &compatibleParameterTypes,
116 const QStringList &compatibleOutputTypes,
117 const QList< int > &compatibleDataTypes );
124 void setExpressionHelpText(
const QString &text );
143 virtual
void setWidgetValue( const QgsProcessingModelChildParameterSource &value );
151 void setWidgetValue( const QList< QgsProcessingModelChildParameterSource > &values );
160 void setToModelOutput( const QString &value );
169 bool isModelOutput() const;
178 QString modelOutputName() const;
185 virtual QVariant value() const;
192 void setDialog( QDialog *dialog );
198 void sourceMenuAboutToShow();
199 void sourceMenuActionTriggered( QAction *action );
213 SourceType currentSourceType()
const;
215 void setSourceType( QgsProcessingModelChildParameterSource::Source type );
218 QgsProcessingModelAlgorithm *mModel =
nullptr;
219 const QString mChildId;
223 QVariant mStaticValue;
224 QString mModelInputParameterName;
225 QString mOutputChildId;
229 QToolButton *mSourceButton =
nullptr;
230 QMenu *mSourceMenu =
nullptr;
231 QStackedWidget *mStackedWidget =
nullptr;
233 bool mHasStaticWrapper =
false;
234 std::unique_ptr< QgsAbstractProcessingParameterWidgetWrapper > mStaticWidgetWrapper;
236 QComboBox *mModelInputCombo =
nullptr;
237 QComboBox *mChildOutputCombo =
nullptr;
240 friend class TestProcessingGui;
244 #endif // QGSPROCESSINGMODELERPARAMETERWIDGET_H