mirror of
https://github.com/qgis/QGIS.git
synced 2025-10-16 00:05:45 -04:00
More responsive feedback when using iterate mode
This commit is contained in:
parent
b9e0b46f9f
commit
4b81630aa6
@ -79,7 +79,11 @@ def executeIterating(alg, parameters, paramToIter, context, feedback):
|
||||
|
||||
iter_source = QgsProcessingParameters.parameterAsSource(parameter_definition, parameters, context)
|
||||
sink_list = []
|
||||
for feat in iter_source.getFeatures():
|
||||
if iter_source.featureCount() == 0:
|
||||
return False
|
||||
|
||||
total = 100.0 / iter_source.featureCount()
|
||||
for current, feat in enumerate(iter_source.getFeatures()):
|
||||
if feedback.isCanceled():
|
||||
return False
|
||||
|
||||
@ -88,6 +92,8 @@ def executeIterating(alg, parameters, paramToIter, context, feedback):
|
||||
sink.addFeature(feat)
|
||||
del sink
|
||||
|
||||
feedback.setProgress(int(current * total))
|
||||
|
||||
# store output values to use them later as basenames for all outputs
|
||||
outputs = {}
|
||||
for out in alg.destinationParameterDefinitions():
|
||||
|
Loading…
x
Reference in New Issue
Block a user