Nyall Dawson
ce28cf5087
Save algorithm results to dialog
2017-12-21 10:38:38 +10:00
Nyall Dawson
edcd058e32
[processing] Add a setParameters method to AlgorithmDialog
...
Allows pre-populating the dialog with non-default parameter
values.
2017-12-21 10:22:19 +10:00
Nyall Dawson
f6e63d7f4c
Fixes and cleanups to algorithm dialogs
2017-12-01 18:15:40 +11:00
Nyall Dawson
ce170918c9
Start moving processing algorithm dialog to c++
...
In an attempt to avoid Python global interpreter locks which
block the UI thread.
2017-12-01 18:15:40 +11:00
Alexander Bruy
3d4a59bb8b
[processing] cleanup files from unused code and remove some files
2017-11-28 12:27:45 +02:00
Alexander Bruy
0059b2b692
[processing] remove Python 2 compatibility layer
2017-11-28 12:27:45 +02:00
Nyall Dawson
80a1d71131
Return a referenced rectangle from ExtentSelectionPanel
2017-09-15 08:34:47 +10:00
Nyall Dawson
74565e22de
Nicer display of rectangle parameter values
2017-09-15 08:34:13 +10:00
Nyall Dawson
ba6e2dc940
Fix showing gdal command in algorithm dialog
2017-08-14 05:19:29 +10:00
Nyall Dawson
7f5b4dbc18
Followup 6ed389c8, fix push direct to master ;)
2017-08-06 16:34:49 +10:00
Juergen E. Fischer
6ed389c8e8
fix translation string again and improve translation scripts (followup 79a095cb)
2017-08-05 23:01:42 +02:00
Nyall Dawson
a64d199e6f
[processing] If an error occurs while running an algorith, always
...
keep the algorithm dialog open after execution
Otherwise it's hard to see the error - you have to know to check
the python log. Keeping the dialog open at the log makes the
error immediately visible to the user
2017-08-05 17:51:38 +10:00
Nyall Dawson
79a095cb69
Revert "translation string fix"
...
Causes 'AlgorithmDialog' object has no attribute 'trUtf8' error when
trying to launch processing algorithms
2017-08-05 06:50:52 +10:00
Juergen E. Fischer
cfaa8f0c8c
translation string fix
2017-08-04 18:11:52 +02:00
Nyall Dawson
a95cbe9d2f
Move 'Run as batch' button to bottom of algorithm dialog
...
Inserting it into the tab widget doesn't work well cross
platform/between hidpi/lowdpi displays. So instead add
it as a normal button in the button box.
Also fix capitalization of button text
Fixes #16767
2017-07-26 09:45:27 +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
e9e335a7bd
Don't set thinking cursors when running processing algorithms
...
Since now they're run in a background thread, it's not appropriate
anymore
2017-07-07 09:28:19 +10:00
Nyall Dawson
1b2086e8a6
Make algorithm dialog use background tasks to execute algorithms
2017-07-07 09:27:35 +10:00
Nyall Dawson
14347a431e
Also add results to results dock when running through algorithm dialog
2017-06-27 13:18:22 +10:00
Nyall Dawson
1e5d773e57
Fix use of temporary files for outputs
2017-06-27 13:18:22 +10:00
Nyall Dawson
0b4bb9e998
Remove manually set tab bar height in algorithm dialog
...
Breaks dialog layout on hidpi screens
2017-06-27 10:49:31 +10:00
Nyall Dawson
4ea85362f4
Transform errors encountered while iterating features in
...
processing are non-fatal. We report them to users, and treat the
feature as having no geometry, but don't stop execution.
2017-06-23 12:08:54 +10:00
Nyall Dawson
98617c90bd
Report errors when executing algs within dialogs
2017-06-23 12:08:54 +10:00
Nyall Dawson
9d8118c995
Fix dest selection panel when used in folder mode
...
Also fix some UX issues with the panel in folder, such as
correctly remembering/restoring last used folders, defaulting
to home dir, don't clear value when canceling while browsing
2017-06-22 18:21:51 +10:00
Nyall Dawson
df73a0f4fc
Remove outdated TODO
2017-06-13 10:26:35 +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
b9e0b46f9f
Fix running algorithms in iterating mode
2017-06-12 13:35:31 +10:00
Nyall Dawson
b40f409de2
Nicer formatting for log in algorithm dialog
2017-06-12 08:31:37 +10:00
Nyall Dawson
cb41ef1adc
Output useful logging when running algorithms from toolbox
...
Now outputs the input parameters, execution time, and results
2017-06-12 07:26:02 +10:00
Nyall Dawson
1d6d4be556
Correctly reject algorithm dialog
...
Algorithm dialog was not being rejected when close button was
called (only hidden), leading to old dialogs and widgets
hanging around forever...
2017-06-12 07:26:02 +10:00
Nyall Dawson
aa544a14c0
Only use a temporary feedback object when running algorithms
...
Otherwise canceling a run causes all future runs to be canceled
2017-06-12 07:26:02 +10:00
Nyall Dawson
2d2c229332
Port checkInputCRS to c++, and allow algorithms to flag when they
...
require all input layers to be in the same CRS
The default behaviour is to assume that algorithms are well behaved
and can handle multi-CRS inputs, but algs have the option to
flag that they do not allow this and require the input CRS check.
Those algs should document that they require all inputs to have
matching CRS - processing 3.0 behaviour is to assume that algs
can handle this.
2017-06-12 07:26:02 +10:00
Nyall Dawson
6b55300fbc
If a feature sink parameter is optional and not set, don't create the sink
...
This adds a lot of flexibility to algorithms, as it makes output
sinks truely optional. For instance, the various "Extract by..."
algorithms could add a new optional sink for features which
'fail' the extraction criteria. This effectively allows these
algorithms to become feature 'routers', directing features onto
other parts of a model depending on whether they pass or fail
the test.
But in this situation we don't always care about these failing
features, and we don't want to force them to always be fetched
from the provider. By making the outputs truely optional,
the algorithm can tweak its logic to either fetch all features
and send them to the correct output, or only fetch
matching features from the provider in the first place (a big
speed boost).
2017-06-09 14:22:29 +10:00
Alexander Bruy
77fa17781e
[processing] save and restore geometry of the algorithm dialog
2017-06-06 10:51:22 +03:00
Nyall Dawson
c1d35a043b
Port getHTMLOutputsCount to c++ API
2017-06-06 15:39:54 +10:00
Nyall Dawson
a27c22d9b1
Add raster layer output parameters
2017-06-06 14:38:24 +10:00
Nyall Dawson
b75a174780
Rename QgsProcessingFeatureSinkDefinition to QgsProcessingOutputLayerDefinition
...
Since it also applies to raster layer outputs, we need a more generic name
2017-06-06 13:43:55 +10:00
Nyall Dawson
ab64428891
Add a cancel button for algorithms which support cancelation
2017-06-06 11:40:33 +10:00
Nyall Dawson
5e92c0dbf4
Fix saving processing outputs with correct encoding
2017-06-06 09:51:49 +10:00
Nyall Dawson
77072b15ac
Rename QgsProcessingFeatureSink to QgsProcessingFeatureSinkDefinition
...
For consistency with QgsProcessingFeatureSourceDefinition
2017-06-06 08:42:48 +10:00
Nyall Dawson
81da209bf5
Use a QgsProject pointer instead of bool loadIntoProject
...
Allows potential future use case of loading results into
a different open project
2017-06-06 08:40:23 +10:00
Nyall Dawson
ea2e477d91
Fix failing tests, temporarily disable some processing tests during
...
refactoring
2017-06-06 07:41:20 +10:00
Nyall Dawson
5b9d925c70
Fix loading of results after running algorithms
2017-06-06 07:41:20 +10:00
Nyall Dawson
5b8affcb56
Rename QgsProcessingParameterOutputVectorLayer to QgsProcessingParameterFeatureSink
2017-06-06 07:41:20 +10:00
Nyall Dawson
189f804714
Adapt more code to c++ API
2017-06-06 07:41:19 +10:00
Nyall Dawson
ef59d0c454
Port parameter checking to c++
2017-06-06 07:41:19 +10:00
Nyall Dawson
c1d9d57dd2
First working pure c++ algorithms
2017-06-06 07:41:19 +10:00
Nyall Dawson
4cb7d18b1c
Push parameters into processAlgorithm and related functions
2017-06-06 07:41:19 +10:00
Nyall Dawson
f1c53c3aa4
Refactor Algorithm setParamValues -> getParamValues
...
Now returns a dict of parameter inputs for the algorithm
2017-06-06 07:41:19 +10:00
Nyall Dawson
134c04b8bb
Move getParametersPanel out of algorithm class
...
It's a gui related method, so shouldn't be in core class
2017-06-06 07:41:19 +10:00