1184 Commits

Author SHA1 Message Date
Alexander Bruy
e8a74f4537 [processing][needs-docs] allow to switch from batch dialog to single UI
(fix #16893)
2019-05-24 08:51:34 +10:00
Bas Couwenberg
2628c480c5 Don't include revision in sources.
Prevent changes to files that weren't changed between releases.
This eases review of the changes between releases significantly.
2019-05-17 16:47:47 +02:00
rldhont
943c7d5d90 [Processing] Define boolean output
In processing, if an algorithm has a boolean as an output, it cannot be defined as boolean but as a number.

To be more precise in algorithms description, the commit add QgsProcessingOutputBoolean.
2019-05-17 08:21:57 +10:00
Alexander Bruy
5844a0fc90 [processing] allow selecting input from open layers only if input is a
layer-type (e.g. raster, vector, mesh). All other inputs can be selected
only from filesystem
2019-05-14 15:36:48 +03:00
Alexander Bruy
f085f55276 rename method so API is compatible with recent changes and other wrappers 2019-05-09 08:14:12 +10:00
Alexander Bruy
f8890d8f04 [processing] populate batch interface with rows when multiple layers
selected (fix #21859)
2019-05-09 08:14:12 +10:00
Nyall Dawson
af6d3d773d [processing] Fix exception when running batch alg after loading parameters 2019-05-08 20:13:07 +10:00
Nyall Dawson
070de69e30 [processing] Fix incorrect columns hidden when toggling advanced params in batch mode 2019-04-30 14:43:58 +10:00
Nyall Dawson
1d80fe8a19 Review comments 2019-04-30 14:43:58 +10:00
Nyall Dawson
c12fd877ed [processing] Remove selected rows from batch table, not always last row 2019-04-30 14:43:58 +10:00
Nyall Dawson
9f43f2f608 [FEATURE][processing] New "Add values by expression" option for
populating batch processing dialog

This option adds news rows using the values from an expression
which returns an array. (As opposed to "Calculate by Expression",
which works only on existing rows).

The intended use case is to allow populating the batch dialog
using complex numeric series, e.g. those created by the "generate_series"
expression function.

For example, adding rows for a batch buffer using the expression

    generate_series(100, 1000, 50)

(results in new rows with values 100, 150, 200, .... 1000)
2019-04-30 14:43:58 +10:00
Nyall Dawson
ee7daa8db7 [FEATURE][processing] Add option to calculate parameter values by expression in batch dialog
This new option is available under the Autofill menu for a column. Selecting it allows users
to create a new QGIS expression to use to update the value inside that column. Existing
parameter values (including those from other columns) are available for use inside
the expression via @variables.

E.g. this allows setting output file names to complex expressions like
'/home/me/stuff/buffer_' || left(@input, 30) || '_' || @distance || '.shp'
2019-04-30 14:43:58 +10:00
Nyall Dawson
185172a946 Refactor creation of batch dialog row algorithm parameters 2019-04-30 14:43:58 +10:00
Nyall Dawson
e6e39173b2 [FEATURE][processing] In batch mode, allow population of file/layer
input columns by searching for files matching a specified pattern

With optional recursive search!
2019-04-30 14:43:58 +10:00
Nyall Dawson
5edf06a5bc [processing][needs-docs] Move batch execution double-click-to-fill-down
to an explicit widget in the table

The double-click-header action is very hidden, and many users will
not stumble upon this. By moving it to an explicit "Autofill" widget at the
top of the table, we make this important action much more user
discoverable.

It also gives the possibility of other, parameter specific, autofill
actions (e.g. fill by expression, fill by file pattern)
2019-04-30 14:43:58 +10:00
Nyall Dawson
149b35ead2 Indentation 2019-04-27 07:27:54 +10:00
Nyall Dawson
b0ad13fbbd Remove some unused code 2019-04-27 07:27:54 +10:00
Nyall Dawson
0ff5820573 [processing] Correctly reset progress bar after completing batch execution 2019-04-27 07:27:54 +10:00
Nyall Dawson
66eabdd40c [processing] Fix exception on completion of batch execution of
algorithm which has string or numeric outputs
2019-04-27 07:27:54 +10:00
Nyall Dawson
933559b655 [processing] Report provider version string alongside QGIS version in log
Helpful for debugging and reproducability of results
2019-04-08 16:59:15 +10:00
Nyall Dawson
7674e1657b [processing] Include version information at start of log
Start the log text with QGIS/Qt/GEOS/GDAL version information strings.
This is helpful for debugging and accountability.
2019-04-02 06:16:45 +10:00
Nyall Dawson
f5a3485eae Fix some Python warnings, avoid accidently hiding all deprecation warnings 2019-03-28 11:47:23 +10:00
Nyall Dawson
234c1718c4 Mark some Processing methods as deprecated 2019-03-28 11:47:23 +10:00
Nyall Dawson
ef8d893393 More QgsMapLayer python fixes 2019-03-27 09:11:15 +10:00
Nyall Dawson
ac651ee0d9 Followup 8d51a693, fix broken plugins 2019-03-27 07:20:43 +10:00
Denis Rouzaud
8d51a693a1 missing changes of QgsMapLayer::Type => QgsMapLayerType 2019-03-26 14:09:19 -05:00
Nyall Dawson
af06cf0cd2 [processing] Fix exception when creating unit tests 2019-03-21 16:08:42 +10:00
Nyall Dawson
c66159bd2d [processing] Fix warning when loading algorithm dialog and no layers
are present

Fixes #21631
2019-03-21 15:10:30 +10:00
Rashad Kanavath
46da10a1e8 Revert "fixes #21374: ignore optional output parameters"
This reverts commit af2421541c78742a233b3c5a00cbbd6c11ceaaab.
2019-03-21 04:44:59 +10:00
Rashad Kanavath
f6ad4745bd fixes #21374: ignore optional output parameters 2019-03-21 04:44:59 +10:00
Nyall Dawson
719a225bca [processing] Port point widget wrapper to new API
And switch to a snapping canvas tool when selecting points from canvas
2019-03-17 16:19:40 +10:00
Nyall Dawson
db1645cf12 [processing] Fix processing.runAndLoadResults
Fixes #21551
2019-03-15 08:37:43 +10:00
Nyall Dawson
5ec43cfdc1 [processing] Add project to QgsProcessingParameterWidgetContext 2019-03-12 08:16:52 +10:00
Alexander Bruy
0fcf567fb0 [processing] fix handling of the multiple layers parameter when inputs
are plain files
2019-03-11 08:29:03 +10:00
Alexander Bruy
80dd6d5203 [processing] add missed imports to batch panel (fix #21486) 2019-03-09 20:34:15 +02:00
Nyall Dawson
63d648738d [processing][needs-docs] By default, hide algorithms with known issues from toolbox
And add a Processing setting to allow these to be shown. When shown, they
are highlighted in red with a tooltip explaining that the algorithm
has known issues
2019-03-06 06:33:06 +10:00
Nyall Dawson
e09b97f91e [processing] Fix missing vector polygon to lines menu item
Fixes #21475
2019-03-05 14:34:42 +10:00
Alessandro Pasotti
a9652316af Tiny cosmetic fix: error by 1 on iteration counter text 2019-02-23 15:30:57 +01:00
Víctor Olaya
13bff9620c [processing] do not allow using unsupported file formats
Show warning message if user selects incompatible output file format

fixes #21089
2019-02-23 05:24:56 +10:00
Alessandro Pasotti
ff9a65c1b4
Merge pull request #9193 from elpaso/bugfix-21270-processing-algrunner-crash
Processing: fix crash in alg runner task with bad scripts
2019-02-20 07:43:50 +01:00
Nyall Dawson
7acfefadad Fix infinite progress when an algorithm could not be created 2019-02-20 13:05:13 +10:00
Nyall Dawson
521ebdc973 [processing] Wrappers built off old API can still take advantage of the full widget context 2019-02-20 05:39:04 +10:00
Nyall Dawson
29fa7b6e7b Fix build, indentation 2019-02-13 07:59:30 +10:00
Nyall Dawson
60a1d6306f Fix some missing expression context variables in processing expression based widgets 2019-02-13 07:59:30 +10:00
Nyall Dawson
7f3640d8a1 [processing] Fix evaluation of linked parameters in batch mode
e.g. missing fields after selecting a layer parameter
2019-02-08 06:38:49 +11:00
Nyall Dawson
f77cf4fae4 [processing] Formalise object design for ContextAction, allow icons to be set 2019-02-01 17:54:28 +11:00
Nyall Dawson
5bfec27938 [processing] do not show geometryless layers in extent selector
Fixes #21129
2019-01-31 17:52:29 +11:00
Víctor Olaya
6eaa511eed [processing] show warning when file-based layer could not be loaded and dependent params updated
For algorithms with multiple parameters depending on a vector layer parameter, the code that loads the layer in the background is called repeatedly, impacting performance. A small layer cache is implemented with these changes, so the dialog only tries to load the layer once.
2019-01-29 11:12:23 +11:00
Nyall Dawson
431861a468 [processing] Add a better API for specifying that outputs are temporary
Instead of requiring clients to generate temporary file names themselves,
(or use the cryptic "memory:" string!), this PR adds a static constant

    QgsProcessing.TEMPORARY_OUTPUT

If a layer/sink output parameter is set to QgsProcessing.TEMPORARY_OUTPUT,
then the temporary output filename will be generated automatically at
algorithm run time. This means callers don't need to mess around with
finding appropriate temporary folders and paths.

Another benefit is that TEMPORARY_OUTPUT is stored in the processing
history, so if you re-run a previous algorithm which was set to
output to a temporary file, it no longer tries to use that same
previous temporary path and instead generates a new one.
2019-01-25 23:27:08 +11:00
Nyall Dawson
db3b9aeb6b Revert "[processing] hide 'select file' button for vector layers when there are dependent params"
This reverts commit f2044528951bbb09a70b9c696d79d8cd5b756214.

It's a contentious fix, which needs discussion
2019-01-23 17:30:47 +10:00