18#ifndef QGSPROCESSINGMODELCOMPONENT_H 
   19#define QGSPROCESSINGMODELCOMPONENT_H 
   27class QgsProcessingModelComment;
 
   36class CORE_EXPORT QgsProcessingModelComponent
 
   40    virtual ~QgsProcessingModelComponent() = 
default;
 
   46    QString description() 
const;
 
   52    void setDescription( 
const QString &description );
 
   58    QPointF position() 
const;
 
   64    void setPosition( QPointF position );
 
   78    void setSize( QSizeF size );
 
   97    void setColor( 
const QColor &color );
 
  103    bool linksCollapsed( Qt::Edge edge ) 
const;
 
  110    void setLinksCollapsed( Qt::Edge edge, 
bool collapsed );
 
  116    SIP_SKIP virtual const QgsProcessingModelComment *comment()
 const { 
return nullptr; }
 
  122    virtual QgsProcessingModelComment *comment() { 
return nullptr; }
 
  128    virtual void setComment( 
const QgsProcessingModelComment &comment );
 
  135    virtual QgsProcessingModelComponent *clone() 
const = 0 
SIP_FACTORY;
 
  140    QgsProcessingModelComponent( 
const QString &description = QString() );
 
  143    QgsProcessingModelComponent( 
const QgsProcessingModelComponent &other ) = 
default;
 
  146    QgsProcessingModelComponent &operator=( 
const QgsProcessingModelComponent &other ) = 
default;
 
  152    void saveCommonProperties( QVariantMap &map ) 
const;
 
  158    void restoreCommonProperties( 
const QVariantMap &map );
 
  168    void copyNonDefinitionProperties( 
const QgsProcessingModelComponent &other );
 
  172    static constexpr double DEFAULT_COMPONENT_WIDTH = 200;
 
  173    static constexpr double DEFAULT_COMPONENT_HEIGHT = 30;
 
  178    QString mDescription;
 
  180    QSizeF mSize = QSizeF( DEFAULT_COMPONENT_WIDTH, DEFAULT_COMPONENT_HEIGHT );
 
  183    bool mTopEdgeLinksCollapsed = 
true;
 
  184    bool mBottomEdgeLinksCollapsed = 
true;