Skip to content

Commit 9ba4143

Browse files
nyalldawsonalexbruy
authored andcommittedNov 9, 2017
Convert SAGA ParameterTableField parameters
1 parent 7953936 commit 9ba4143

File tree

66 files changed

+107
-103
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

66 files changed

+107
-103
lines changed
 

‎python/plugins/processing/algs/saga/SagaAlgorithm.py

Lines changed: 14 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -38,11 +38,13 @@
3838
QgsProcessingParameterBoolean,
3939
QgsProcessingParameterNumber,
4040
QgsProcessingParameterEnum,
41-
QgsProcessingParameterMultipleLayers)
41+
QgsProcessingParameterMultipleLayers,
42+
QgsProcessingParameterMatrix,
43+
QgsProcessingParameterString,
44+
QgsProcessingParameterField)
4245
from processing.core.ProcessingConfig import ProcessingConfig
4346
from processing.core.parameters import (getParameterFromString,
44-
ParameterExtent,
45-
ParameterFixedTable)
47+
ParameterExtent)
4648
from processing.core.outputs import (getOutputFromString,
4749
OutputVector,
4850
OutputRaster)
@@ -223,11 +225,11 @@ def processAlgorithm(self, parameters, context, feedback):
223225
command += ' -' + param.name().strip() + " true"
224226
else:
225227
command += ' -' + param.name().strip() + " false"
226-
elif isinstance(param, ParameterFixedTable):
228+
elif isinstance(param, QgsProcessingParameterMatrix):
227229
tempTableFile = getTempFilename('txt')
228230
with open(tempTableFile, 'w') as f:
229-
f.write('\t'.join([col for col in param.cols]) + '\n')
230-
values = parameters[param.name()].split(',')
231+
f.write('\t'.join([col for col in param.headers()]) + '\n')
232+
values = self.parameterAsMatrix(parameters, param.name(), context)
231233
for i in range(0, len(values), 3):
232234
s = values[i] + '\t' + values[i + 1] + '\t' + values[i + 2] + '\n'
233235
f.write(s)
@@ -241,10 +243,12 @@ def processAlgorithm(self, parameters, context, feedback):
241243
for i in range(4):
242244
command += ' -' + self.extentParamNames[i] + ' ' \
243245
+ str(float(values[i]) + offset[i])
244-
elif isinstance(param, (QgsProcessingParameterNumber, QgsProcessingParameterEnum)):
245-
command += ' -' + param.name() + ' ' + str(param.value)
246-
else:
247-
command += ' -' + param.name() + ' "' + str(param.value) + '"'
246+
elif isinstance(param, QgsProcessingParameterNumber):
247+
command += ' -' + param.name() + ' ' + str(self.parameterAsDouble(parameters, param.name(), context))
248+
elif isinstance(param, QgsProcessingParameterEnum):
249+
command += ' -' + param.name() + ' ' + str(self.parameterAsEnum(parameters, param.name(), context))
250+
elif isinstance(param, QgsProcessingParameterString, QgsProcessingParameterField):
251+
command += ' -' + param.name() + ' "' + self.parameterAsString(parameters, param.name(), context) + '"'
248252

249253
for out in self.outputs:
250254
command += ' -' + out.name + ' "' + out.getCompatibleFileName(self) + '"'

‎python/plugins/processing/algs/saga/description/AddPointAttributestoPolygons.txt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,6 @@ Add Point Attributes to Polygons
22
shapes_polygons
33
QgsProcessingParameterFeatureSource|INPUT|Polygons|2|None|False
44
QgsProcessingParameterFeatureSource|POINTS|Points|0|None|False
5-
ParameterTableField|FIELDS|Attributes|POINTS|-1|False
5+
QgsProcessingParameterField|FIELDS|Attributes|None|POINTS|-1|False|False
66
QgsProcessingParameterBoolean|ADD_LOCATION_INFO|Add location info|False
77
QgsProcessingParameterVectorDestination|OUTPUT|Result

0 commit comments

Comments
 (0)
Please sign in to comment.