QGIS API Documentation
3.16.0-Hannover (43b64b13f3)
|
Go to the documentation of this file.
23 , mParentLayerParameterName( parentLayerParameterName )
39 if ( !input.isValid() )
42 if ( input.type() != QVariant::List )
45 const QVariantList inputList = input.toList();
46 for (
const QVariant &inputItem : inputList )
48 if ( inputItem.type() != QVariant::Map )
51 const QVariantMap inputItemMap = inputItem.toMap();
53 if ( !inputItemMap.contains(
"name" ) )
55 if ( !inputItemMap.contains(
"type" ) )
57 if ( !inputItemMap.contains(
"expression" ) )
75 QString code = QStringLiteral(
"QgsProcessingParameterFieldMapping('%1', '%2'" ).arg(
name(),
description() );
76 if ( !mParentLayerParameterName.isEmpty() )
80 code += QLatin1String(
", optional=True" );
91 map.insert( QStringLiteral(
"parent_layer" ), mParentLayerParameterName );
98 mParentLayerParameterName = map.value( QStringLiteral(
"parent_layer" ) ).toString();
105 if ( !mParentLayerParameterName.isEmpty() )
106 depends << mParentLayerParameterName;
112 return mParentLayerParameterName;
117 mParentLayerParameterName =
name;
QString asPythonString(QgsProcessing::PythonOutputType outputType=QgsProcessing::PythonQgsProcessingAlgorithmSubclass) const override
Returns the parameter definition as a Python command which can be used within a Python Processing scr...
QString type() const override
Unique parameter type name.
virtual QVariantMap toVariantMap() const
Saves this parameter to a QVariantMap.
QString valueAsPythonString(const QVariant &value, QgsProcessingContext &context) const override
Returns a string version of the parameter input value, which is suitable for use as an input paramete...
QString description() const
Returns the description for the parameter.
Base class for the definition of processing parameters.
QString parentLayerParameterName() const
Returns the name of the parent layer parameter, or an empty string if this is not set.
static QString stringToPythonLiteral(const QString &string)
Converts a string to a Python string literal.
@ PythonQgsProcessingAlgorithmSubclass
Full Python QgsProcessingAlgorithm subclass.
virtual bool fromVariantMap(const QVariantMap &map)
Restores this parameter to a QVariantMap.
Flags mFlags
Parameter flags.
Contains information about the context in which a processing algorithm is executed.
QString name() const
Returns the name of the parameter.
bool fromVariantMap(const QVariantMap &map) override
Restores this parameter to a QVariantMap.
bool checkValueIsAcceptable(const QVariant &input, QgsProcessingContext *context=nullptr) const override
Checks whether the specified input value is acceptable for the parameter.
QStringList dependsOnOtherParameters() const override
Returns a list of other parameter names on which this parameter is dependent (e.g.
void setParentLayerParameterName(const QString &name)
Sets the name of the parent layer parameter.
QgsProcessingParameterFieldMapping(const QString &name, const QString &description=QString(), const QString &parentLayerParameterName=QString(), bool optional=false)
Constructor for QgsProcessingParameterFieldMapping.
static QString typeName()
Returns the type name for the parameter class.
QVariantMap toVariantMap() const override
Saves this parameter to a QVariantMap.
static QString variantToPythonLiteral(const QVariant &value)
Converts a variant to a Python literal.
@ FlagOptional
Parameter is optional.
PythonOutputType
Available Python output types.
QgsProcessingParameterDefinition * clone() const override
Creates a clone of the parameter definition.