129 Commits

Author SHA1 Message Date
Nyall Dawson
7cebe7a343 Fix some grammar 2017-08-07 17:45:33 +10:00
Nyall Dawson
82ef7d2a89 Create specific expression context scope for child algorithms
Contains variables for model parameters, algorithm results for
other child algorithms which are not dependent on the
algorithm.

Allows removal of final pieces of ModelerAlgorithm code
2017-07-07 11:35:31 +10:00
Nyall Dawson
3bf9ea3682 Restore ability to run script algorithms 2017-06-27 08:33:13 +10:00
Nyall Dawson
d16f117b6c Port conversion to/from script code to c++ 2017-06-27 08:33:13 +10:00
Nyall Dawson
178a415c9f Port parameter conversion to script code to c++ 2017-06-27 08:33:13 +10:00
Nyall Dawson
63611b1d8f Port script code functions to c++ classes
Restore logging executed algorithms
2017-06-12 15:59:56 +10:00
Nyall Dawson
ea18e8e9db Resurrect grid polygon algorithm 2017-06-12 07:26:02 +10:00
Nyall Dawson
2f28736e8e Remove some unused code 2017-06-06 14:38:52 +10:00
Nyall Dawson
7683b25f81 Move getFileFilter from params to gui wrappers 2017-06-06 07:41:20 +10:00
Nyall Dawson
0c3ad14c79 Adapt more python code to new API 2017-06-06 07:41:19 +10:00
Nyall Dawson
28f7a8b7e1 Move expression context generation out of parameters 2017-06-06 07:41:19 +10:00
Nyall Dawson
416770b197 Remove no longer required _resolveLayers method 2017-06-06 07:41:19 +10:00
Nyall Dawson
ba03f1a13a Move minimum layer extent calculation to c++ 2017-06-06 07:41:19 +10:00
Nyall Dawson
189f804714 Adapt more code to c++ API 2017-06-06 07:41:19 +10:00
Nyall Dawson
49c688bbe4 Fix use of QgsProcessingUtils.mapLayerFromString 2017-05-02 13:40:49 +10:00
Nyall Dawson
f84d703234 Add method QgsProcessingUtils::mapLayerFromString
Algorithms and other processing code should use this method
(instead of dataobjects.getLayerFromString) to
retrieve layers from a string, as it considers the processing
context and allows resolving strings to temporarily stored layers.

This permits processing models to function correctly when
intermediate results are stored as memory layers. Subsequent
model algorithms can then access these temporary layers as inputs.
All temporary layers will be removed when the context object
is destroyed after the model algorithm is run.
2017-05-02 12:33:04 +10:00
Nyall Dawson
79d79d6c07 [processing] Fix some regressions following algorithm refactoring 2017-05-01 17:29:40 +10:00
Nyall Dawson
86002f3b6f Move createContext to dataobjects 2017-04-26 12:53:35 +10:00
Nyall Dawson
427c3b1684 Remove vector.features
Use QgsProcessingUtils.getFeatures instead
2017-04-26 12:53:35 +10:00
Nyall Dawson
adc7cf0ec2 Add context argument to vector.features 2017-04-26 12:53:35 +10:00
Nyall Dawson
377b181c4e Port more processing dataobjects methods to c++
Also
- simplify and add tests
- remove large memory leak (persistant store of all non-project layers)
- remove broken support for direct loading postgres/virtual layers
by string (Python version was very broken and would never match
a postgres/virtual layer)
2017-04-05 19:50:46 +10:00
Nyall Dawson
8ffdb362cc Port some processing dataobjects routines to c++ 2017-04-05 15:27:17 +10:00
Nyall Dawson
6987d7b37c Port handling of algorithm names to QgsProcessingAlgorithm 2017-04-03 21:17:45 +10:00
Nyall Dawson
26495dbd81 [processing] Move dataobjects.getSupportedOutputVectorLayerExtensions
to QgsVectorFileWriter
2017-04-03 15:41:32 +10:00
Alexander Bruy
1a46ddbf28 [processing][API] rename runalg() and runandload() to improve
readability
2017-03-22 19:17:12 +02:00
Alexander Bruy
c1e6ba0f40 [processing] rename AlgorithmExecutor's runalg() and runalgIterating()
to avoid overlapping with general functions and improve readability
2017-03-22 19:11:36 +02:00
Matteo Ghetta
3bcf287a7e Processing tests (#4259)
* [processing] qgis regular points test

* [processing] qgis shape buffer variable tests

* [processing] qgis create grid lines test

* [processing] qgis convert geometry test

* [processing] qgis extract by location test

* [processing] qgis add field test

* [processing] trying to fix travis failing

* [processing] trying to fix travis failing/2

* trying to fix travis failing/3

* [processing] Add new default option "ProjectCrs" to ParameterCrs

* [processing] RegularPoints tests shouldn't rely on iface

* [processing] Fix regular points test

* [processing] RandmPointsExtent new CRS parameter

* [processing] qgis random point in extent test

* [processing] qgis random point in extent test/2

* [processing] remove qgis random point in extent test

* no output random points in extent test

* remove useless output
2017-03-16 16:42:53 +01:00
Juergen E. Fischer
c77172ed3d fix more flake8 warnings 2017-03-05 10:21:24 +01:00
Juergen E. Fischer
f00a87cb8a update translation strings 2017-03-05 10:21:24 +01:00
volaya
cdb35d6288 Merge pull request #4119 from arnaud-morvan/processing_postgis_wrappers
[processing] Add PostGIS widget wrappers
2017-02-16 11:12:30 +01:00
Nyall Dawson
3ecafb3472 [processing] Allow extent parameters to avoid matching layer CRS check 2017-02-14 05:49:23 +10:00
arnaud.morvan@camptocamp.com
482aadc495 [processing] Add possibility to pass additionnal parameters to widget wrapper 2017-02-09 16:12:16 +01:00
Martin Dobias
63d1cfddc8 Fix QgsExpressionContextUtils::projectScope() usage in processing 2017-01-06 11:34:55 +08:00
Alexander Bruy
69e9d99c49 [processing] fix GRASS provider (follow up a1642a37) 2016-12-29 14:09:02 +02:00
Matthias Kuhn
3fba3ac775 [processing] Quote and escape script exported ParameterString 2016-12-22 11:26:28 +01:00
Matthias Kuhn
55e3ea033a [processing] Fix some script parameter export/import issues 2016-12-22 11:21:32 +01:00
Matthias Kuhn
0a686c4fca [processing] Make ParameterFixedTable scriptable 2016-12-21 14:21:36 +01:00
Matthias Kuhn
2af00beddc [processing] Don't hide errors when resolving script paramters 2016-12-21 13:17:31 +01:00
Alexander Bruy
97780b6be6 [processing] fix incorrect parameter construction 2016-12-20 14:41:58 +02:00
volaya
0035c97f5b Merge pull request #3725 from arnaud-morvan/processing_geometry_predicate
[processing] Remove parameter geometry predicate
2016-12-13 15:58:16 +01:00
arnaud.morvan@camptocamp.com
322a565b8b [processing] Remove ParameterGeometryPredicate 2016-12-12 15:21:16 +01:00
arnaud.morvan@camptocamp.com
65a4e97a75 [processing] Support options as (value, text) in ParameterSelection 2016-12-12 15:12:55 +01:00
Nyall Dawson
bef5b5ed68 [processing][heatmap] custom parameter/widget for output resolution
Matches current behaviour of c++ heatmap plugin
2016-12-07 12:23:58 +10:00
volaya
420b7ec902 [processing] removed incompatible basestring check 2016-12-01 14:37:36 +01:00
volaya
fcc343724e [processing] some fixes and changes in parameters and parameters panel 2016-12-01 12:50:27 +01:00
Nyall Dawson
08505b388a [processing] Allow restricting fields to date/time types 2016-11-30 15:04:21 +10:00
Nyall Dawson
86ab3022b5 Remove layer extent and statistic variables from processing contexts
These variables take a lot of time to calculate and cause lots of
lengthy hangs in processing. (Eg add some moderately large rasters
to a project, then try to run any processing algorithm and QGIS
will freeze).

The layer extent can already be used in expressions via the
layer_property function, which only evalutes the extent if required
and only for layers it is used for.

The band stats for raster layers should be moved to a
band_statistic function in core which behaves the same way.
2016-11-22 11:17:38 +10:00
Nyall Dawson
377cba0b74 [processing] Use real map settings scope instead of custom canvasextent variables 2016-11-22 11:17:38 +10:00
Nyall Dawson
f24cda4402 [processing] Add unit tests for retrieving param from script code
And fix number param retrieving from script code
2016-11-13 20:34:35 +10:00
Nyall Dawson
28d7ceaef5 Some fixes to processing expression parameters 2016-11-11 20:13:12 +10:00