@@ -288,6 +288,14 @@ class QgsProcessingParameterDefinition
288288 :rtype: bool
289289%End
290290
291+ virtual QString valueAsPythonString( const QVariant &value, QgsProcessingContext &context ) const;
292+ %Docstring
293+ Returns a string version of the parameter input ``value``, which is suitable for use as an input
294+ parameter value when running an algorithm directly from a Python command.
295+ The returned value must be correctly escaped - e.g. string values must be wrapped in ' 's.
296+ :rtype: str
297+ %End
298+
291299 protected:
292300
293301
@@ -517,6 +525,8 @@ class QgsProcessingParameterBoolean : QgsProcessingParameterDefinition
517525%End
518526
519527 virtual QString type() const;
528+ virtual QString valueAsPythonString( const QVariant &value, QgsProcessingContext &context ) const;
529+
520530};
521531
522532class QgsProcessingParameterCrs : QgsProcessingParameterDefinition
@@ -540,6 +550,8 @@ class QgsProcessingParameterCrs : QgsProcessingParameterDefinition
540550 virtual QString type() const;
541551 virtual bool checkValueIsAcceptable( const QVariant &input, QgsProcessingContext *context = 0 ) const;
542552
553+ virtual QString valueAsPythonString( const QVariant &value, QgsProcessingContext &context ) const;
554+
543555};
544556
545557class QgsProcessingParameterMapLayer : QgsProcessingParameterDefinition
@@ -563,6 +575,8 @@ class QgsProcessingParameterMapLayer : QgsProcessingParameterDefinition
563575 virtual QString type() const;
564576 virtual bool checkValueIsAcceptable( const QVariant &input, QgsProcessingContext *context = 0 ) const;
565577
578+ virtual QString valueAsPythonString( const QVariant &value, QgsProcessingContext &context ) const;
579+
566580};
567581
568582class QgsProcessingParameterExtent : QgsProcessingParameterDefinition
@@ -586,6 +600,8 @@ class QgsProcessingParameterExtent : QgsProcessingParameterDefinition
586600 virtual QString type() const;
587601 virtual bool checkValueIsAcceptable( const QVariant &input, QgsProcessingContext *context = 0 ) const;
588602
603+ virtual QString valueAsPythonString( const QVariant &value, QgsProcessingContext &context ) const;
604+
589605
590606};
591607
@@ -693,6 +709,8 @@ class QgsProcessingParameterMatrix : QgsProcessingParameterDefinition
693709 virtual QString type() const;
694710 virtual bool checkValueIsAcceptable( const QVariant &input, QgsProcessingContext *context = 0 ) const;
695711
712+ virtual QString valueAsPythonString( const QVariant &value, QgsProcessingContext &context ) const;
713+
696714
697715 QStringList headers() const;
698716%Docstring
@@ -763,6 +781,8 @@ class QgsProcessingParameterMultipleLayers : QgsProcessingParameterDefinition
763781 virtual QString type() const;
764782 virtual bool checkValueIsAcceptable( const QVariant &input, QgsProcessingContext *context = 0 ) const;
765783
784+ virtual QString valueAsPythonString( const QVariant &value, QgsProcessingContext &context ) const;
785+
766786
767787 QgsProcessingParameterDefinition::LayerType layerType() const;
768788%Docstring
@@ -826,6 +846,8 @@ class QgsProcessingParameterNumber : QgsProcessingParameterDefinition
826846 virtual QString type() const;
827847 virtual bool checkValueIsAcceptable( const QVariant &input, QgsProcessingContext *context = 0 ) const;
828848
849+ virtual QString valueAsPythonString( const QVariant &value, QgsProcessingContext &context ) const;
850+
829851
830852 double minimum() const;
831853%Docstring
@@ -891,6 +913,8 @@ class QgsProcessingParameterRange : QgsProcessingParameterDefinition
891913 virtual QString type() const;
892914 virtual bool checkValueIsAcceptable( const QVariant &input, QgsProcessingContext *context = 0 ) const;
893915
916+ virtual QString valueAsPythonString( const QVariant &value, QgsProcessingContext &context ) const;
917+
894918
895919 QgsProcessingParameterNumber::Type dataType() const;
896920%Docstring
@@ -928,6 +952,8 @@ class QgsProcessingParameterRasterLayer : QgsProcessingParameterDefinition
928952 virtual QString type() const;
929953 virtual bool checkValueIsAcceptable( const QVariant &input, QgsProcessingContext *context = 0 ) const;
930954
955+ virtual QString valueAsPythonString( const QVariant &value, QgsProcessingContext &context ) const;
956+
931957
932958};
933959
@@ -954,6 +980,8 @@ class QgsProcessingParameterEnum : QgsProcessingParameterDefinition
954980 virtual QString type() const;
955981 virtual bool checkValueIsAcceptable( const QVariant &input, QgsProcessingContext *context = 0 ) const;
956982
983+ virtual QString valueAsPythonString( const QVariant &value, QgsProcessingContext &context ) const;
984+
957985
958986 QStringList options() const;
959987%Docstring
@@ -1003,6 +1031,8 @@ class QgsProcessingParameterString : QgsProcessingParameterDefinition
10031031%End
10041032
10051033 virtual QString type() const;
1034+ virtual QString valueAsPythonString( const QVariant &value, QgsProcessingContext &context ) const;
1035+
10061036
10071037 bool multiLine() const;
10081038%Docstring
@@ -1039,6 +1069,8 @@ class QgsProcessingParameterExpression : QgsProcessingParameterDefinition
10391069%End
10401070
10411071 virtual QString type() const;
1072+ virtual QString valueAsPythonString( const QVariant &value, QgsProcessingContext &context ) const;
1073+
10421074
10431075 QString parentLayerParameter() const;
10441076%Docstring
@@ -1109,6 +1141,8 @@ class QgsProcessingParameterTableField : QgsProcessingParameterDefinition
11091141 virtual QString type() const;
11101142 virtual bool checkValueIsAcceptable( const QVariant &input, QgsProcessingContext *context = 0 ) const;
11111143
1144+ virtual QString valueAsPythonString( const QVariant &value, QgsProcessingContext &context ) const;
1145+
11121146
11131147 QString parentLayerParameter() const;
11141148%Docstring
@@ -1173,6 +1207,8 @@ class QgsProcessingParameterFeatureSource : QgsProcessingParameterDefinition
11731207 virtual QString type() const;
11741208 virtual bool checkValueIsAcceptable( const QVariant &input, QgsProcessingContext *context = 0 ) const;
11751209
1210+ virtual QString valueAsPythonString( const QVariant &value, QgsProcessingContext &context ) const;
1211+
11761212
11771213 QList< int > dataTypes() const;
11781214%Docstring
@@ -1214,6 +1250,8 @@ class QgsProcessingParameterFeatureSink : QgsProcessingParameterDefinition
12141250 virtual bool isDestination() const;
12151251 virtual bool checkValueIsAcceptable( const QVariant &input, QgsProcessingContext *context = 0 ) const;
12161252
1253+ virtual QString valueAsPythonString( const QVariant &value, QgsProcessingContext &context ) const;
1254+
12171255
12181256 QgsProcessingParameterDefinition::LayerType dataType() const;
12191257%Docstring
@@ -1260,6 +1298,8 @@ class QgsProcessingParameterRasterOutput : QgsProcessingParameterDefinition
12601298 virtual bool isDestination() const;
12611299 virtual bool checkValueIsAcceptable( const QVariant &input, QgsProcessingContext *context = 0 ) const;
12621300
1301+ virtual QString valueAsPythonString( const QVariant &value, QgsProcessingContext &context ) const;
1302+
12631303};
12641304
12651305class QgsProcessingParameterFileOutput : QgsProcessingParameterDefinition
@@ -1286,6 +1326,8 @@ class QgsProcessingParameterFileOutput : QgsProcessingParameterDefinition
12861326 virtual bool isDestination() const;
12871327 virtual bool checkValueIsAcceptable( const QVariant &input, QgsProcessingContext *context = 0 ) const;
12881328
1329+ virtual QString valueAsPythonString( const QVariant &value, QgsProcessingContext &context ) const;
1330+
12891331
12901332 QString fileFilter() const;
12911333%Docstring
0 commit comments