Nyall Dawson
ec44e60308
[processing] Allow encoding crs into text definitions of points
2017-09-24 12:46:32 +10:00
Nyall Dawson
e1eef7ed19
Allow use of QgsPointXY/QgsReferencedPointXY for point parameter values
2017-09-24 12:09:38 +10:00
Alexander Bruy
f60d8885c9
[processing] more fixes for tests creation
2017-09-24 07:49:55 +10:00
Nyall Dawson
92e481e7c3
Fix creation of SAGA tests
2017-09-24 07:48:46 +10:00
Nyall Dawson
dd441f6154
[processing] A non-optional multiple enum parameter must have at
...
least one choice selected to be valid
2017-09-16 09:59:13 +10:00
Nyall Dawson
9b112284c7
Add method to recover extent parameter CRS
2017-09-15 14:09:27 +10:00
Nyall Dawson
cfdc3c71e7
Use geometry of reproject extent parameters for more accurate clipping
2017-09-15 08:35:42 +10:00
Nyall Dawson
74565e22de
Nicer display of rectangle parameter values
2017-09-15 08:34:13 +10:00
Nyall Dawson
ae8bc04b6c
Allow use of Qgs(Referenced)Rectangle for processing extent parameter values
...
And add a new target CRS argument to parameterAsExtent. If set, and
the source CRS of the rectangle parameter can be determined, then
the returned value will be the rectangle automatically reprojected
to the desired target CRS.
2017-09-15 08:33:45 +10:00
Nyall Dawson
b468ab3ee5
Simplify boolean expressions
...
By applying clang-tidy readability-simplify-boolean-expr fixit
2017-09-11 17:11:50 +10:00
Nyall Dawson
2612c39578
[processing] A non optional, multiple field input must have at least
...
one selected field to be considered valid
2017-09-08 09:10:17 +10:00
Nyall Dawson
ce4ac074cd
Don't use .lower() to perform case-insensitive string operations
...
Use the faster versions with Qt::CaseInsensitive instead. These
don't require a string copy and conversion to lowercase.
Thanks to Clazy
2017-08-29 18:04:30 +10:00
Nyall Dawson
4b009f96ec
Use std::round instead of qRound
...
Now that our minimum VS studio version allowed supports std::round,
we should use that in place of Qt's qRound method.
Because:
- it doesn't truncate to int, resulting in unpredictable
behaviour (refs #16925 )
- better to stick to standard c++ methods wherever possible,
since they're likely better supported and optimised by the
compilers
- it's a tiny reduction to the barrier for entry to QGIS
development (I'm sick of pointing out the need to use
qRound during PR reviews!)
2017-08-25 02:35:27 +10:00
Nyall Dawson
cb70aad7a3
Fix restricting model algorithm input types to valid types for alg (refs #17030 )
2017-08-23 17:34:08 +10:00
Nyall Dawson
d2a90f40e3
Fix conversion of direct vector layer parameters to python strings
2017-08-20 18:21:02 +10:00
Nyall Dawson
ebda2fd212
Rename some enum values for clarity
2017-08-19 02:46:22 +10:00
Nyall Dawson
7879c0a20b
Fix processing rendering styles for output dialog, functionality
2017-08-19 00:47:21 +10:00
Nyall Dawson
37b899fb99
Add a pure virtual clone method to processing parameter definitions
...
And use it when we need to clone parameters (instead of more fragile
conversion to and from variants)
This fixes model loading which use algorithms which create python
subclasses of parameter definitions
2017-08-18 01:22:07 +10:00
Nyall Dawson
c54667c3b1
Handle mixed lists of values and lists when evaluating multilayer
...
parameters
This can happen when running models with mixed input types
for multilayer parameters
2017-08-17 05:00:47 +10:00
Nyall Dawson
e1b0f78619
Fix default layer sometimes inserted into multi layer parameter values
2017-08-17 04:38:36 +10:00
Nyall Dawson
479106ad80
An empty string parameter should not fallback to default value
...
Since we need to allow empty strings to override defaults in
some circumstances
2017-08-14 04:56:24 +10:00
Nyall Dawson
5177972806
Improve conversion of processing parameters to Python code
...
- Use layer paths instead of layer ids where possible, since they are persistent
- Don't wrap in QgsProcessingFeatureSourceDefinition/QgsProcessingOutputLayerDefinition
if we can avoid it
2017-08-13 16:56:58 +10:00
Mario Baranzini
558b8d3395
Protect processing parameters from segfault
2017-08-06 21:40:12 +02:00
Alexander Bruy
9fe326dee2
[processing] more consistent naming for class members, setters and
...
getters
2017-08-04 13:21:26 +03:00
Alexander Bruy
49bfe69823
[processing] add parameter representing raster band
2017-08-04 11:27:35 +03:00
Nyall Dawson
f7b25a17b1
Allow setting layer type filter for QgsProcessingParameterVectorLayer
...
Turns out this is required for some algorithms
2017-07-27 14:30:04 +10:00
Nyall Dawson
1342f4d9ac
Add API to set optional destination parameters as not created by default
...
This allows optional outputs (such as null geometry features detected
by the Remove Null Geometries algorithm) to be skipped by default
when desirable.
2017-07-16 18:19:24 +10:00
Nyall Dawson
b7ae44fb30
Move method to evaluate a variant to a feature source to QgsProcessingUtils
2017-07-13 20:51:47 +10:00
Nyall Dawson
f49b603443
Split QgsProcessingModelAlgorithm into separate components
...
The cpp/h file was getting too large, so split off the individual
subcomponents into their own h/cpp files to keep code
maintainable.
2017-07-08 20:49:17 +10:00
Nyall Dawson
9d04f87249
Rename "output" style parameters for clarity
...
The previous naming was too easily confused with processing outputs.
Rename them to QgsProcessingParameterFileDestination, etc... to
make it clearer what they are used for.
2017-07-08 20:49:17 +10:00
Nyall Dawson
f82b41e001
Move an enum to new QgsProcessing class
2017-07-08 20:49:17 +10:00
Nyall Dawson
febf0a0e6e
Rename method to more generic name - it's usable by vector layer outputs too
2017-07-08 20:49:17 +10:00
Nyall Dawson
9e184feaed
Add method to evaluate parameters to compatible vector layers
...
of a specified type
2017-07-08 20:49:17 +10:00
Nyall Dawson
d8086e549d
Use c++ method for available sources
2017-07-07 11:35:31 +10:00
Nyall Dawson
bdaba00a01
Fix incorrect layer names used when loading result layers from models
2017-07-03 17:08:52 +10:00
Nyall Dawson
a259d9fff1
Fix silly logic error identified by Coverity
2017-07-03 12:22:59 +10:00
Nyall Dawson
6483984d0b
Add method to retrieve dependent parameters for a parameter
2017-07-03 10:45:15 +10:00
Nyall Dawson
d2b9652d4b
Fix use of direct map layers as inputs for source parameters
2017-06-29 08:00:47 +10:00
Nyall Dawson
aeecda3707
Fix crash when no options are selected in a multiple-enum parameter
2017-06-27 21:27:59 +10:00
Nyall Dawson
46b4f2468c
Allow storing multiple status in field script code
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
3fb1b4809d
Export QgsProcessingFeatureSource to Python
2017-06-26 12:44:26 +10:00
Nyall Dawson
76a9844949
Add folder output type
2017-06-22 18:21:33 +10:00
Nyall Dawson
f304828f59
Allow storing arbitrary metadata in parameter definitions
2017-06-22 18:18:51 +10:00
Nyall Dawson
1d69939dde
Fix build
2017-06-22 06:58:31 +10:00
Nyall Dawson
780f4331cc
Add method to generate temporary destination parameter value
2017-06-22 06:49:09 +10:00
Nyall Dawson
e8a03b918b
Move default file extension code to c++
2017-06-22 06:48:25 +10:00
Nyall Dawson
b1879df34b
Destination parameters track whether they support non-file based outputs
2017-06-22 06:48:19 +10:00
Nyall Dawson
47f2cc895c
Fix generation of outputs for models
2017-06-22 06:47:11 +10:00