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