193 Commits

Author SHA1 Message Date
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
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
c1cc2b53d9 Fix qt warning on opening modeler dialog 2019-03-05 14:44:02 +10:00
Nyall Dawson
723051b291 [processing] Fix initial zoom of models on hidpi displays
Fixes #16456
2019-03-05 14:44:02 +10:00
Nyall Dawson
8154008daf [processing] Fix items are not correctly placed in model designer
when view is not set to top-left of model scene
2019-03-05 14:44:02 +10:00
Nyall Dawson
30f786c129 [processing] Fix crashes and random behavior after dropping algorithms
to model designer

Also fixes drag and drop within the algorithm parameter dialog and
the qt warnings thrown during these operations
2019-03-05 14:44:02 +10:00
Nyall Dawson
c1aac3228c [FEATURE][processing] Allow expression variables to be set for a model
This adds a new "Model Variables" dock panel to the model editor, allowing
users to create and set custom expression variables for use in the model.
These variables are available anywhere expressions are (correctly) evaluated
within the model, so can be used as input parameter values for child
algorithms, within data-defined dynamic parameters, etc.

The use case here is for models which use a constant value throughout
multiple steps within the model (e.g. @target_resolution: a target
raster resolution, @max_simplification: a simplification value for
input features coming from different sources, etc), allowing users
one single place to define and edit these constant values (instead
of hunting down and setting them in multiple places throughout the model).

These variables are stored within the model itself, and are not exposed
outside of the model designer dialog.
2019-02-23 05:23:23 +10:00
Juergen E. Fischer
92f5cb9a7e translation fix 2019-02-04 00:52:23 +01:00
Nyall Dawson
56e465cc8a [processing][needs-docs] Resurrect ability to convert models to scripts
Brings back QGIS 2.18's ability to directly convert a Processing model
to an equivalent Processing Python script algorithm, correctly
updated and working in the 3.x API.

Available from the model dialog, and from the right-click context
menu on an existing model.

Sponsored by Solspec
2019-02-01 17:54:28 +11:00
Nyall Dawson
3a66b92522 [processing] Fix crash when running model through modeler dialog
Fixes #20676
2018-11-30 10:02:52 +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
nirvn
68b7e799f0 [processing] add msg bar links to files when saving/exporting models 2018-09-11 10:30:07 +07:00
Nyall Dawson
a0b4e024bb [processing] Respect application stylesheet in modeler/script editor dialogs 2018-08-16 09:12:22 +10:00
Nyall Dawson
a4a74a907d Add new icon for 'Save in project' thanks to @nirvn 2018-08-13 15:47:01 +10:00
Nyall Dawson
63fd4bab2a [processing][FEATURE] Store models inside QGIS project files
Allows processing models to be stored inside QGIS project files,
so that opening the project makes that model available.

Some models are so intrinsically linked to the logic inside
a particular project that they have no meaning (or are totally
broken) outside of that project (e.g. models which rely
on the presence of particular map layers, relations, etc)

This change allows these models to be stored inside that project,
avoid cluttering up the "global" model provider with models
which make no sense, and making it easier to distribute a single
project with these models included.

Models are stored inside projects by clicking the new "embed
in project" button in the modeler dialog toolbar. Models can be
removed from a project from the model's right click menu in the
toolbox.
2018-08-13 15:47:01 +10:00
Alexander Bruy
65ae32aadd [processing] homogenize filter strings for models and scripts 2018-08-03 08:34:05 +03:00
Nyall Dawson
d43f1a2823 [processing] Allow models to have no group name set
This is supported by the toolbox now, so relax the requirement
that all models have a compulsory group name. If no group is set,
the model is shown directly under the Models node in the toolbox.

Also switch a warning from message box to message bar
2018-07-18 08:56:52 +10:00
Nyall Dawson
68aae3a0e6 Replace processing modeler toolbox with common widget/model 2018-07-16 11:38:13 +10:00
Nyall Dawson
db2c3d4986 [processing] Show search icon in search boxes 2018-05-31 12:51:53 +10:00
Nyall Dawson
879622547c [processing] Fix bad layout for docks in modeler
Because there's some deep underlying issue which causes the dock
layouts to get corrupted in certain circumstances, avoid the
issue entirely by moving construction of the docks out of
the .ui file and instead do it all manually via Python code.

Fixes #16428, #19068
2018-05-31 12:45:47 +10:00
Nyall Dawson
c0d9528090 Silence python warnings from 3rd party libraries on startup 2018-05-22 06:02:55 +10:00
Nyall Dawson
b98f8f1d37 [processing] Also filter using algorithm short descriptions 2018-05-17 08:50:39 +10:00
Nyall Dawson
5edcc64f72 [processing] Allow algorithms to return a translated short description
This is used in the algorithm's tooltip in the toolbox, and is intended
for single sentence description of the algorithm, e.g.
"Converts 2D features to 3D by sampling a DEM raster."

Convert grass algorithms to use short description for the
descriptive parts of their names, to cleanup the toolbox
and make it more uniform.
2018-05-17 08:50:39 +10:00
Matthias Kuhn
4a14a36034 Remove leftover method getCustomModelerParametersDialog 2018-04-09 09:15:15 +02:00
Matthias Kuhn
0aa8241da4 Avoid catch all exception 2018-04-05 22:46:59 +02:00
Alexander Bruy
092557b16a [processing] correctly handle inactive providers in the modeler (fix #18461) 2018-03-19 11:55:10 +02:00
Juergen E. Fischer
ad4d0a17d5 processing: make error messages moved to message bar translatable again (followup 6e2288dcc) 2018-03-09 17:21:12 +01:00
Matthias Kuhn
c3a843619f Use flags for parameter type extra info 2018-03-07 09:00:33 +11:00
Matthias Kuhn
16e2aad293 Use translated parameter names for sorting 2018-03-07 09:00:33 +11:00
Matthias Kuhn
a337d2050b Make use of new processing parameter infrastructure 2018-03-07 09:00:33 +11:00
Matthias Kuhn
0c730596fa Hide unsupported parameters in modeller 2018-03-01 10:42:51 -05:00
Matthias Kuhn
9aac4e38df Use translated text in modeller 2018-03-01 09:47:35 -05:00
Matthias Kuhn
eba96fb9cc Add a processing parameter registry
to manage parameter metadata in a single place.
2018-03-01 08:12:41 -05:00
Nyall Dawson
bfa3cab0bb [processing] Fix model docks are not removed when closing modeler
Actually caused by the modeler dialog never being deleted correctly.

Fixes #18213
2018-02-26 20:52:42 +11:00
Nyall Dawson
bd99f6979b More dialog title HIG fixes 2018-02-22 06:44:17 +11:00
Juergen E. Fischer
6dfedc38e9 translation string fixes and cleanups 2018-02-15 22:31:15 +01:00
Denis Rouzaud
3dc3d9d1b2 unite QgsMessageLog::Level and QgsMessageBar::MessageLevel in Qgis::MessageLevel
make enum items lower case
remove unused QgsMessageLog::None and All
2018-02-06 08:56:40 -04:00
Alexander Bruy
54167bcaa6 fix indentation 2018-02-05 08:50:44 +02:00
Alexander Bruy
4f2a4644db [processing] remove obsolete code and disable exporting models as script
until we update it so support new scripts format
2018-02-05 08:50:44 +02:00
Alexander Bruy
aee3b44909 [processing] remove not needed trAction method 2018-02-05 08:49:41 +02:00
Nyall Dawson
a530b213e9 [processing] Fix error when dragging alg group in modeler 2018-01-23 11:07:48 +10:00
Etienne Trimaille
4a2da5006b fix missing QLabel python import 2018-01-17 04:59:06 +10:00
Nyall Dawson
ecd113de24 Fix modeler dialog doesn't respect hide from modeler flag 2018-01-16 21:21:38 +10:00
Nyall Dawson
5da28ed9f0 [needs-docs][processing] Add tooltips to input types in modeler
...to help clarify for users what the different input types mean.

Fixes #17671, which is a result of unclear distinction between
the uses of vector features vs vector layer inputs.

Tagged as needs-docs, as it may help with documentation for 3.0
2018-01-16 20:35:26 +10:00
Nyall Dawson
f969b03fd2 Sort input types in processing modeler dialog 2018-01-16 20:35:26 +10: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
Matthias Kuhn
3d626b716a Fix file mode 2017-12-14 09:04:07 +01:00
Mathieu Pellerin
ad54073b1e
[processing] list native QGIS algorithms first in modeler dialog 2017-12-05 11:52:06 +07:00
Alexander Bruy
0059b2b692 [processing] remove Python 2 compatibility layer 2017-11-28 12:27:45 +02:00
Nyall Dawson
c0e732b799 [processing] Add QGIS 3d provider
Adds a new QGIS processing provider for 3d algorithms, available
only when QGIS is built WITH_3D

Currently includes only a single algorithm for tesselating geometries,
which exposes the functionality of QgsTesselator to processing.

Like the native c++ algorithm provider, algorithms in the 3d
provider are transparently merged with the other QGIS providers
(i.e. they aren't separated into their own group)
2017-11-27 06:54:29 +11:00