Skip to content

Commit

Permalink
[processing] add groupId() method to algorithms to get unique ID of the
Browse files Browse the repository at this point in the history
algorithm group.

Adapt native algorithms
  • Loading branch information
alexbruy committed Dec 14, 2017
1 parent 0f6a5c8 commit 1d482cf
Show file tree
Hide file tree
Showing 97 changed files with 316 additions and 4 deletions.
Expand Up @@ -22,7 +22,7 @@ class QgsProcessingModelAlgorithm : QgsProcessingAlgorithm
%End
public:

QgsProcessingModelAlgorithm( const QString &name = QString(), const QString &group = QString() );
QgsProcessingModelAlgorithm( const QString &name = QString(), const QString &group = QString(), const QString &groupId = QString() );
%Docstring
Constructor for QgsProcessingModelAlgorithm.
%End
Expand All @@ -36,6 +36,8 @@ class QgsProcessingModelAlgorithm : QgsProcessingAlgorithm

virtual QString group() const;

virtual QString groupId() const;

virtual QIcon icon() const;

virtual QString svgIconPath() const;
Expand Down
10 changes: 10 additions & 0 deletions python/core/processing/qgsprocessingalgorithm.sip
Expand Up @@ -158,10 +158,20 @@ class QgsProcessingAlgorithm
%Docstring
Returns the name of the group this algorithm belongs to. This string
should be localised.
.. seealso:: :py:func:`groupId()`
.. seealso:: :py:func:`tags()`
:rtype: str
%End

virtual QString groupId() const;
%Docstring
Returns the unique ID of the group this algorithm belongs to. This string
should be fixed for the algorithm, and must not be localised. The group id
should be unique within each provider. Group id should contain lowercase
alphanumeric characters only and no spaces or other formatting characters.
.. seealso:: :py:func:`group()`
:rtype: str
%End
virtual Flags flags() const;
%Docstring
Returns the flags indicating how and when the algorithm operates and should be exposed to users.
Expand Down
5 changes: 5 additions & 0 deletions src/analysis/processing/qgsalgorithmaddincrementalfield.cpp
Expand Up @@ -49,6 +49,11 @@ QString QgsAddIncrementalFieldAlgorithm::group() const
return QObject::tr( "Vector table" );
}

QString QgsAddIncrementalFieldAlgorithm::groupId() const
{
return QStringLiteral( "vectortable" );
}

QString QgsAddIncrementalFieldAlgorithm::outputName() const
{
return QObject::tr( "Incremented" );
Expand Down
1 change: 1 addition & 0 deletions src/analysis/processing/qgsalgorithmaddincrementalfield.h
Expand Up @@ -38,6 +38,7 @@ class QgsAddIncrementalFieldAlgorithm : public QgsProcessingFeatureBasedAlgorith
QString displayName() const override;
virtual QStringList tags() const override;
QString group() const override;
QString groupId() const override;
QString shortHelpString() const override;
QList<int> inputLayerTypes() const override;
QgsAddIncrementalFieldAlgorithm *createInstance() const override SIP_FACTORY;
Expand Down
5 changes: 5 additions & 0 deletions src/analysis/processing/qgsalgorithmassignprojection.cpp
Expand Up @@ -39,6 +39,11 @@ QString QgsAssignProjectionAlgorithm::group() const
return QObject::tr( "Vector general" );
}

QString QgsAssignProjectionAlgorithm::groupId() const
{
return QStringLiteral( "vectorgeneral" );
}

QString QgsAssignProjectionAlgorithm::outputName() const
{
return QObject::tr( "Assigned CRS" );
Expand Down
1 change: 1 addition & 0 deletions src/analysis/processing/qgsalgorithmassignprojection.h
Expand Up @@ -38,6 +38,7 @@ class QgsAssignProjectionAlgorithm : public QgsProcessingFeatureBasedAlgorithm
QString displayName() const override;
virtual QStringList tags() const override;
QString group() const override;
QString groupId() const override;
QString shortHelpString() const override;
QgsAssignProjectionAlgorithm *createInstance() const override SIP_FACTORY;

Expand Down
5 changes: 5 additions & 0 deletions src/analysis/processing/qgsalgorithmboundary.cpp
Expand Up @@ -39,6 +39,11 @@ QString QgsBoundaryAlgorithm::group() const
return QObject::tr( "Vector geometry" );
}

QString QgsBoundaryAlgorithm::groupId() const
{
return QStringLiteral( "vectorgeometry" );
}

QString QgsBoundaryAlgorithm::outputName() const
{
return QObject::tr( "Boundary" );
Expand Down
1 change: 1 addition & 0 deletions src/analysis/processing/qgsalgorithmboundary.h
Expand Up @@ -38,6 +38,7 @@ class QgsBoundaryAlgorithm : public QgsProcessingFeatureBasedAlgorithm
QString displayName() const override;
QStringList tags() const override;
QString group() const override;
QString groupId() const override;
QString shortHelpString() const override;
QList<int> inputLayerTypes() const override;
QgsBoundaryAlgorithm *createInstance() const override SIP_FACTORY;
Expand Down
5 changes: 5 additions & 0 deletions src/analysis/processing/qgsalgorithmboundingbox.cpp
Expand Up @@ -39,6 +39,11 @@ QString QgsBoundingBoxAlgorithm::group() const
return QObject::tr( "Vector geometry" );
}

QString QgsBoundingBoxAlgorithm::groupId() const
{
return QStringLiteral( "vectorgeometry" );
}

QString QgsBoundingBoxAlgorithm::outputName() const
{
return QObject::tr( "Bounds" );
Expand Down
1 change: 1 addition & 0 deletions src/analysis/processing/qgsalgorithmboundingbox.h
Expand Up @@ -38,6 +38,7 @@ class QgsBoundingBoxAlgorithm : public QgsProcessingFeatureBasedAlgorithm
QString displayName() const override;
virtual QStringList tags() const override;
QString group() const override;
QString groupId() const override;
QString shortHelpString() const override;
QgsBoundingBoxAlgorithm *createInstance() const override SIP_FACTORY;

Expand Down
5 changes: 5 additions & 0 deletions src/analysis/processing/qgsalgorithmbuffer.cpp
Expand Up @@ -39,6 +39,11 @@ QString QgsBufferAlgorithm::group() const
return QObject::tr( "Vector geometry" );
}

QString QgsBufferAlgorithm::groupId() const
{
return QStringLiteral( "vectorgeometry" );
}

void QgsBufferAlgorithm::initAlgorithm( const QVariantMap & )
{
addParameter( new QgsProcessingParameterFeatureSource( QStringLiteral( "INPUT" ), QObject::tr( "Input layer" ) ) );
Expand Down
1 change: 1 addition & 0 deletions src/analysis/processing/qgsalgorithmbuffer.h
Expand Up @@ -40,6 +40,7 @@ class QgsBufferAlgorithm : public QgsProcessingAlgorithm
QString displayName() const override;
virtual QStringList tags() const override;
QString group() const override;
QString groupId() const override;
QString shortHelpString() const override;
QgsBufferAlgorithm *createInstance() const override SIP_FACTORY;

Expand Down
5 changes: 5 additions & 0 deletions src/analysis/processing/qgsalgorithmcentroid.cpp
Expand Up @@ -39,6 +39,11 @@ QString QgsCentroidAlgorithm::group() const
return QObject::tr( "Vector geometry" );
}

QString QgsCentroidAlgorithm::groupId() const
{
return QStringLiteral( "vectorgeometry" );
}

QString QgsCentroidAlgorithm::outputName() const
{
return QObject::tr( "Centroids" );
Expand Down
1 change: 1 addition & 0 deletions src/analysis/processing/qgsalgorithmcentroid.h
Expand Up @@ -39,6 +39,7 @@ class QgsCentroidAlgorithm : public QgsProcessingFeatureBasedAlgorithm
QString displayName() const override;
QStringList tags() const override;
QString group() const override;
QString groupId() const override;
QString shortHelpString() const override;
QgsCentroidAlgorithm *createInstance() const override SIP_FACTORY;

Expand Down
5 changes: 5 additions & 0 deletions src/analysis/processing/qgsalgorithmclip.cpp
Expand Up @@ -40,6 +40,11 @@ QString QgsClipAlgorithm::group() const
return QObject::tr( "Vector overlay" );
}

QString QgsClipAlgorithm::groupId() const
{
return QStringLiteral( "vectoroverlay" );
}

void QgsClipAlgorithm::initAlgorithm( const QVariantMap & )
{
addParameter( new QgsProcessingParameterFeatureSource( QStringLiteral( "INPUT" ), QObject::tr( "Input layer" ) ) );
Expand Down
1 change: 1 addition & 0 deletions src/analysis/processing/qgsalgorithmclip.h
Expand Up @@ -39,6 +39,7 @@ class QgsClipAlgorithm : public QgsProcessingAlgorithm
QString displayName() const override;
virtual QStringList tags() const override;
QString group() const override;
QString groupId() const override;
QString shortHelpString() const override;
QgsClipAlgorithm *createInstance() const override SIP_FACTORY;

Expand Down
5 changes: 5 additions & 0 deletions src/analysis/processing/qgsalgorithmconvexhull.cpp
Expand Up @@ -39,6 +39,11 @@ QString QgsConvexHullAlgorithm::group() const
return QObject::tr( "Vector geometry" );
}

QString QgsConvexHullAlgorithm::groupId() const
{
return QStringLiteral( "vectorgeometry" );
}

QString QgsConvexHullAlgorithm::outputName() const
{
return QObject::tr( "Convex hulls" );
Expand Down
1 change: 1 addition & 0 deletions src/analysis/processing/qgsalgorithmconvexhull.h
Expand Up @@ -39,6 +39,7 @@ class QgsConvexHullAlgorithm : public QgsProcessingFeatureBasedAlgorithm
QString displayName() const override;
virtual QStringList tags() const override;
QString group() const override;
QString groupId() const override;
QString shortHelpString() const override;
QgsConvexHullAlgorithm *createInstance() const override SIP_FACTORY;

Expand Down
10 changes: 10 additions & 0 deletions src/analysis/processing/qgsalgorithmdissolve.cpp
Expand Up @@ -181,6 +181,11 @@ QString QgsDissolveAlgorithm::group() const
return QObject::tr( "Vector geometry" );
}

QString QgsDissolveAlgorithm::groupId() const
{
return QStringLiteral( "vectorgeometry" );
}


void QgsDissolveAlgorithm::initAlgorithm( const QVariantMap & )
{
Expand Down Expand Up @@ -237,6 +242,11 @@ QString QgsCollectAlgorithm::group() const
return QObject::tr( "Vector geometry" );
}

QString QgsCollectAlgorithm::groupId() const
{
return QStringLiteral( "vectorgeometry" );
}

QVariantMap QgsCollectAlgorithm::processAlgorithm( const QVariantMap &parameters, QgsProcessingContext &context, QgsProcessingFeedback *feedback )
{
return processCollection( parameters, context, feedback, []( const QVector< QgsGeometry > &parts )->QgsGeometry
Expand Down
2 changes: 2 additions & 0 deletions src/analysis/processing/qgsalgorithmdissolve.h
Expand Up @@ -50,6 +50,7 @@ class QgsDissolveAlgorithm : public QgsCollectorAlgorithm
QString displayName() const override;
virtual QStringList tags() const override;
QString group() const override;
QString groupId() const override;
QString shortHelpString() const override;
QgsDissolveAlgorithm *createInstance() const override SIP_FACTORY;

Expand All @@ -74,6 +75,7 @@ class QgsCollectAlgorithm : public QgsCollectorAlgorithm
QString displayName() const override;
virtual QStringList tags() const override;
QString group() const override;
QString groupId() const override;
QString shortHelpString() const override;
QgsCollectAlgorithm *createInstance() const override SIP_FACTORY;

Expand Down
5 changes: 5 additions & 0 deletions src/analysis/processing/qgsalgorithmdropgeometry.cpp
Expand Up @@ -39,6 +39,11 @@ QString QgsDropGeometryAlgorithm::group() const
return QObject::tr( "Vector general" );
}

QString QgsDropGeometryAlgorithm::groupId() const
{
return QStringLiteral( "vectorgeneral" );
}

QString QgsDropGeometryAlgorithm::outputName() const
{
return QObject::tr( "Dropped geometries" );
Expand Down
1 change: 1 addition & 0 deletions src/analysis/processing/qgsalgorithmdropgeometry.h
Expand Up @@ -38,6 +38,7 @@ class QgsDropGeometryAlgorithm : public QgsProcessingFeatureBasedAlgorithm
QString displayName() const override;
QStringList tags() const override;
QString group() const override;
QString groupId() const override;
QString shortHelpString() const override;
QgsDropGeometryAlgorithm *createInstance() const override SIP_FACTORY;
QgsCoordinateReferenceSystem outputCrs( const QgsCoordinateReferenceSystem &inputCrs ) const override;
Expand Down
5 changes: 5 additions & 0 deletions src/analysis/processing/qgsalgorithmdropmzvalues.cpp
Expand Up @@ -39,6 +39,11 @@ QString QgsDropMZValuesAlgorithm::group() const
return QObject::tr( "Vector geometry" );
}

QString QgsDropMZValuesAlgorithm::groupId() const
{
return QStringLiteral( "vectorgeometry" );
}

QString QgsDropMZValuesAlgorithm::outputName() const
{
return QObject::tr( "Z/M Dropped" );
Expand Down
1 change: 1 addition & 0 deletions src/analysis/processing/qgsalgorithmdropmzvalues.h
Expand Up @@ -38,6 +38,7 @@ class QgsDropMZValuesAlgorithm : public QgsProcessingFeatureBasedAlgorithm
QString displayName() const override;
QStringList tags() const override;
QString group() const override;
QString groupId() const override;
QString shortHelpString() const override;
QgsDropMZValuesAlgorithm *createInstance() const override SIP_FACTORY;

Expand Down
1 change: 1 addition & 0 deletions src/analysis/processing/qgsalgorithmextenttolayer.h
Expand Up @@ -39,6 +39,7 @@ class QgsExtentToLayerAlgorithm : public QgsProcessingAlgorithm
QString displayName() const override { return QObject::tr( "Create layer from extent" ); }
virtual QStringList tags() const override { return QObject::tr( "extent,layer,polygon,create,new" ).split( ',' ); }
QString group() const override { return QObject::tr( "Vector geometry" ); }
QString groupId() const override { return QStringLiteral( "vectorgeometry" ); }
QString shortHelpString() const override;
QgsExtentToLayerAlgorithm *createInstance() const override SIP_FACTORY;

Expand Down
5 changes: 5 additions & 0 deletions src/analysis/processing/qgsalgorithmextractbyattribute.cpp
Expand Up @@ -39,6 +39,11 @@ QString QgsExtractByAttributeAlgorithm::group() const
return QObject::tr( "Vector selection" );
}

QString QgsExtractByAttributeAlgorithm::groupId() const
{
return QStringLiteral( "vectorselection" );
}

void QgsExtractByAttributeAlgorithm::initAlgorithm( const QVariantMap & )
{
addParameter( new QgsProcessingParameterFeatureSource( QStringLiteral( "INPUT" ), QObject::tr( "Input layer" ) ) );
Expand Down
1 change: 1 addition & 0 deletions src/analysis/processing/qgsalgorithmextractbyattribute.h
Expand Up @@ -54,6 +54,7 @@ class QgsExtractByAttributeAlgorithm : public QgsProcessingAlgorithm
QString displayName() const override;
virtual QStringList tags() const override;
QString group() const override;
QString groupId() const override;
QString shortHelpString() const override;
QgsExtractByAttributeAlgorithm *createInstance() const override SIP_FACTORY;

Expand Down
5 changes: 5 additions & 0 deletions src/analysis/processing/qgsalgorithmextractbyexpression.cpp
Expand Up @@ -39,6 +39,11 @@ QString QgsExtractByExpressionAlgorithm::group() const
return QObject::tr( "Vector selection" );
}

QString QgsExtractByExpressionAlgorithm::groupId() const
{
return QStringLiteral( "vectorselection" );
}

void QgsExtractByExpressionAlgorithm::initAlgorithm( const QVariantMap & )
{
addParameter( new QgsProcessingParameterFeatureSource( QStringLiteral( "INPUT" ), QObject::tr( "Input layer" ) ) );
Expand Down
1 change: 1 addition & 0 deletions src/analysis/processing/qgsalgorithmextractbyexpression.h
Expand Up @@ -39,6 +39,7 @@ class QgsExtractByExpressionAlgorithm : public QgsProcessingAlgorithm
QString displayName() const override;
virtual QStringList tags() const override;
QString group() const override;
QString groupId() const override;
QString shortHelpString() const override;
QgsExtractByExpressionAlgorithm *createInstance() const override SIP_FACTORY;

Expand Down
5 changes: 5 additions & 0 deletions src/analysis/processing/qgsalgorithmextractbyextent.cpp
Expand Up @@ -39,6 +39,11 @@ QString QgsExtractByExtentAlgorithm::group() const
return QObject::tr( "Vector overlay" );
}

QString QgsExtractByExtentAlgorithm::groupId() const
{
return QStringLiteral( "vectoroverlay" );
}

void QgsExtractByExtentAlgorithm::initAlgorithm( const QVariantMap & )
{
addParameter( new QgsProcessingParameterFeatureSource( QStringLiteral( "INPUT" ), QObject::tr( "Input layer" ) ) );
Expand Down
1 change: 1 addition & 0 deletions src/analysis/processing/qgsalgorithmextractbyextent.h
Expand Up @@ -39,6 +39,7 @@ class QgsExtractByExtentAlgorithm : public QgsProcessingAlgorithm
QString displayName() const override;
virtual QStringList tags() const override;
QString group() const override;
QString groupId() const override;
QString shortHelpString() const override;
QgsExtractByExtentAlgorithm *createInstance() const override SIP_FACTORY;

Expand Down
10 changes: 10 additions & 0 deletions src/analysis/processing/qgsalgorithmextractbylocation.cpp
Expand Up @@ -245,6 +245,11 @@ QString QgsSelectByLocationAlgorithm::group() const
return QObject::tr( "Vector selection" );
}

QString QgsSelectByLocationAlgorithm::groupId() const
{
return QStringLiteral( "vectorselection" );
}

QString QgsSelectByLocationAlgorithm::shortHelpString() const
{
return QObject::tr( "This algorithm creates a selection in a vector layer. The criteria for selecting "
Expand Down Expand Up @@ -313,6 +318,11 @@ QString QgsExtractByLocationAlgorithm::group() const
return QObject::tr( "Vector selection" );
}

QString QgsExtractByLocationAlgorithm::groupId() const
{
return QStringLiteral( "vectorselection" );
}

QString QgsExtractByLocationAlgorithm::shortHelpString() const
{
return QObject::tr( "This algorithm creates a new vector layer that only contains matching features from an "
Expand Down
2 changes: 2 additions & 0 deletions src/analysis/processing/qgsalgorithmextractbylocation.h
Expand Up @@ -67,6 +67,7 @@ class QgsSelectByLocationAlgorithm : public QgsLocationBasedAlgorithm
QString displayName() const override;
virtual QStringList tags() const override;
QString group() const override;
QString groupId() const override;
QString shortHelpString() const override;
QgsSelectByLocationAlgorithm *createInstance() const override SIP_FACTORY;

Expand All @@ -91,6 +92,7 @@ class QgsExtractByLocationAlgorithm : public QgsLocationBasedAlgorithm
QString displayName() const override;
virtual QStringList tags() const override;
QString group() const override;
QString groupId() const override;
QString shortHelpString() const override;
QgsExtractByLocationAlgorithm *createInstance() const override SIP_FACTORY;

Expand Down
5 changes: 5 additions & 0 deletions src/analysis/processing/qgsalgorithmextractnodes.cpp
Expand Up @@ -42,6 +42,11 @@ QString QgsExtractNodesAlgorithm::group() const
return QObject::tr( "Vector geometry" );
}

QString QgsExtractNodesAlgorithm::groupId() const
{
return QStringLiteral( "vectorgeometry" );
}

QString QgsExtractNodesAlgorithm::shortHelpString() const
{
return QObject::tr( "This algorithm takes a line or polygon layer and generates a point layer with points representing the nodes in the input lines or polygons. The attributes associated to each point are the same ones associated to the line or polygon that the point belongs to." ) +
Expand Down

0 comments on commit 1d482cf

Please sign in to comment.