80 Commits

Author SHA1 Message Date
Nyall Dawson
772181bc16 [processing] Don't assume iface is available
E.g. in qgis_process iface is None

Fixes #38862
2020-09-21 12:05:34 +10:00
Alexander Bruy
de7de1e28e raise an assert if algorithm which should be added to the toolbar is not found 2020-08-17 08:44:41 +03:00
Alexander Bruy
1a76a0963e add Select By Location to the Selection toolbar (fix #20350) 2020-08-16 12:15:22 +03:00
Alexander Bruy
bacf779236 pick Vector menu title from the main QGIS window instead of using own
translation (fix #35028, #28474)
2020-08-16 12:15:22 +03:00
Andrea Giudiceandrea
33fe1eac27 Fix invalid randompointsonlines algorithm ID in menus.py
Fix invalid algorithm ID for menu: qgis:randompointsonlines
The valid algorithm ID is native:randompointsonlines
2020-07-21 09:07:51 +10:00
Håvard Tveite
2a786aede2
[feature][processing] Random points in polygons C++ algorithm
Offers the same functionality as the Random points inside polygons
algorithm, and in addition it includes (possible to opt-out) the attributes
from the containing polygon and the ability to specify a seed for the random
number generator.

Could replace the Python algorithm Random points inside polygons, but
this C++ implementation only supports "Points count" ("number of points
for each feature") directly, while "Points density" is supported by allowing the
point count to be data defined (using the polygon area to calculate the
number of points).
2020-07-02 08:25:42 +10:00
Alexander Bruy
9e27f1487c fix menu entry for Split Vector Layer algorithm 2020-06-04 05:36:19 +10:00
Nyall Dawson
d788dfc0cb Update menu link 2020-01-03 05:25:33 +10:00
Alexander Bruy
8fb28c8657 update menu entries 2019-12-10 10:33:32 +02:00
Nyall Dawson
b921e3e299 [processing] Fix menu links following c++ algorithm ports 2019-11-27 09:47:07 +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
Nyall Dawson
e09b97f91e [processing] Fix missing vector polygon to lines menu item
Fixes #21475
2019-03-05 14:34:42 +10:00
Nyall Dawson
0e928e8191 [processing] Correctly set parent widgets for algorithm dialogs
to avoid dialogs immediately going out of scope and being garbage
collected
2018-11-23 20:32:16 +11:00
Håvard Tveite
ce313755d7 GDAL extractreprojection missing from the raster menu
This was missed in #8378.
2018-11-18 08:59:24 +10:00
Borys Jurgiel
d0813a8822 Introduce QgsGui::HigFlags and don't capitalize menu entries and dialog titles in languages other than English. Fixes #19724 2018-10-25 18:11:36 +10:00
Nyall Dawson
97f43d4bb2 [processing] Fix warning on close 2018-09-11 15:40:27 +10:00
Nyall Dawson
1d62d106fb [processing] Don't hold on to algorithm instances for menu items
Instead, only store references to the algorithm id string, and
use this to retrieve algorithms when the actions are triggered.

This avoids errors caused by the algorithm instances being
removed, e.g. due to plugin removal or reload of providers
(e.g. by opening options dialog).

Fixes #19070
2018-05-31 15:28:12 +10:00
Nyall Dawson
59d425c5b0 [processing] Fix some incorrect formatting of algorithm titles 2018-05-31 15:27:51 +10:00
Nyall Dawson
6441b64a58 [Processing] Fix raster menu split in two in some locales
Fixes #17448
2018-05-28 13:49:13 +10:00
Nyall Dawson
d864cd6725 [processing] Correctly capitalize menu entry actions, add ellipsis 2018-05-16 14:08:43 +10:00
Harrissou Sant-anna
46f867cef4 Use QCoreApplication.translate() instead 2018-05-01 17:58:01 +10:00
Harrissou Sant-anna
8088659c43 More details on Processing algorithms toolbar 2018-05-01 17:58:01 +10:00
nirvn
fca5238847 [processing] replace define current projection with reproject layer in vector menu 2018-04-30 16:50:34 +07:00
Nyall Dawson
cad0f3d5b7 [processing] Throw warning when menu item links are broken 2018-04-30 16:07:13 +10:00
nirvn
f8a3de45bf [processing] fix some native algorithm IDs for menu items 2018-04-30 12:39:02 +07:00
Harrissou Sant-anna
4c32a01bde
Fix list of algorithms shortcut in vector and raster menus
Fix #18175
2018-02-26 20:14:12 +01:00
Juergen E. Fischer
2c53630747 add missing copyright headers 2018-02-18 20:53:40 +01:00
Nyall Dawson
87c1986c4b Improved memory managment of algorithm dialogs
Ensure that dialogs are always correctly deleted when appropriate.

Also, if an algorithm is running in a background task and hits
an error, we automatically re-show the algorithm dialog and the
associated log for debugging.

Fixes #16858
2018-01-16 19:45:40 +10:00
Mathieu Pellerin
b5dc9fd3cd [processing] restore and improve lines to pol / pol to lines algs (#4850)
New geometry model for lines to pol / pol to lines agls.
2017-07-14 14:44:38 +07:00
Nyall Dawson
5c844a5cfb Really delete processing dialogs
The dialogs are parented to the main window, which means sip
transfers the ownership to the main window - and they are
never deleted as a result. This results in various error
messages caused by the widgets hanging around forever
and listening out for various signals they are connected to.
2017-07-12 18:52:53 +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
bdf051a03a Partially port a trial python alg to new API 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
1e788556f0 Port getCustomParametersDialog to QgsProcessingAlgorithm 2017-06-06 07:41:19 +10:00
Nyall Dawson
fb811766f8 Add framework for algorithm outputs
This somewhat changes the meaning of outputs from processing 2.x.
In 2.x processing outputs were used both as a method of specifying
inputs to algorithms (file paths to destination layers created
by the algorithm) AND pure outputs (such as statistics calculated
by the algorithm).

This is now split. The old input-type-outputs (destination layers)
are now input parameters (since the parameter value IS an input to the
algorithm). To differentiate them from parameters indicating pure
input layers a new "isDestination()" method was added to
QgsProcessingParameterDefinition.

Output definitions are now purely indications of values CREATED
by the algorithms. Suitable candidates are the existing calculated
stats and actual file path/URI of any layers created by the algorithm.
Moving forward we should ensure all algorithms output as much
useful information as possible - e.g. number of features processed,
number of skipped features, count null geometries encountered, etc...
2017-06-06 07:41:19 +10:00
Nyall Dawson
fac8ca4d4f Move execution check to QgsProcessingAlgorithm 2017-06-06 07:41:19 +10:00
Nyall Dawson
03e40f7497 [processing] Remove all remaining algorithm copies
Algorithms are no longer copied - just a single const instance
of each algorithm is used
2017-06-06 07:41:19 +10:00
Nyall Dawson
b64a71df61 Port algorithm countVisibleParameters to c++ 2017-06-06 07:41:19 +10:00
Nyall Dawson
ae97c333d6 Revert "Port algorithm countVisibleParameters to c++"
This reverts commit c3c694f8ccfbe0b64df14365f950f5895968a66a.
2017-05-15 10:24:38 +10:00
Nyall Dawson
c3c694f8cc Port algorithm countVisibleParameters to c++ 2017-05-15 08:44:28 +10:00
Nyall Dawson
ac84326464 [processing] Fix executing models 2017-05-01 17:29:40 +10:00
Nyall Dawson
fd2c18ee16 Refactor processing writer to use QgsFeatureSink, and to store
temporary output layers in the provided processing context

Should fix loss of intermediate memory layers when running
a multi-step model
2017-04-26 17:38:40 +10:00
Nyall Dawson
dd4f530cfb [processing] Pass context argument to processAlgorithm 2017-04-26 12:53:35 +10:00
Nyall Dawson
4970bb4cd5 Move more algList functionality to QgsProcessingRegistry 2017-04-07 13:21:28 +10:00
Nyall Dawson
2a1a71574a Move algorithm id (previously commandLineName) to QgsProcessingAlgorithm 2017-04-07 13:21:28 +10:00
Nyall Dawson
b3142a0baf Move provider algorithm handling to QgsProcessingProvider 2017-04-07 13:21:28 +10:00
Nyall Dawson
6987d7b37c Port handling of algorithm names to QgsProcessingAlgorithm 2017-04-03 21:17:45 +10:00
Nyall Dawson
faa8a653b2 Move algorithm icon handling to QgsProcessingAlgorithm 2017-04-03 21:17:45 +10: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
Juergen E. Fischer
f00a87cb8a update translation strings 2017-03-05 10:21:24 +01:00