43 Commits

Author SHA1 Message Date
Nyall Dawson
eb24bdb484 Dox 2018-09-22 05:26:29 +10:00
Nyall Dawson
6c35c8b308 Fix broken doxygen link 2018-09-22 05:26:29 +10:00
Nyall Dawson
4a0a48fe47 [processing] Also expose complete expression context inside
data defined buttons for model child algorithms

The context was not previously exposed, so users would not have
been aware that they can utilise all the variables and functions
available to parameters within child algorithms.
2018-09-22 05:26:29 +10:00
Nyall Dawson
8f9f975ed6 [processing] Show complete expression context in expression builder
for pre-calculated expressions

Correctly exposes ALL the variables and functions available for use
in pre-calculated expressions so that users actually know they can
use these in their models!
2018-09-22 05:26:29 +10:00
Nyall Dawson
7af13f62c0 Set widget context for widget wrappers 2018-09-22 05:26:29 +10:00
Nyall Dawson
55e22b9de9 Allow setting the context for widget wrappers
The context contains settings which reflect the context ini
which a Processing parameter widget is shown, e.g., the
parent model algorithm, a linked map canvas, and other relevant
information which allows the widget to fine-tune its behavior.
2018-09-22 05:26:29 +10:00
Nyall Dawson
11667683b4 Distance 2018-09-22 05:26:29 +10:00
Alessandro Pasotti
84368131e2 Update dox 2018-09-14 18:23:03 +10:00
Alessandro Pasotti
c05aa149b0 Test supportInPlace for all polygon algorithms 2018-09-14 18:23:03 +10:00
Alessandro Pasotti
4549ee5fff In-place moved check logic into QgsAlgorithm
+ new tests
+ fixed fixer function
+ drop z/m
2018-09-14 18:23:03 +10:00
Alessandro Pasotti
123905a17a Fix doc string 2018-09-14 18:23:03 +10:00
Nyall Dawson
681d44f11f Messy mockup of feature 2018-09-14 18:23:03 +10:00
Nyall Dawson
6935027ead [processing] Fix API break in widget wrapper
Fixes #19820
2018-09-13 05:40:39 +10:00
Nyall Dawson
f83b3ecc84 Show helper text in expression builder for CRS values in modeler 2018-09-06 18:11:24 +10:00
Nyall Dawson
06d37fced4 [processing] Port CRS widget wrapper to c++ classes 2018-09-06 18:11:24 +10:00
Nyall Dawson
d563034583 Address review comments 2018-09-04 19:06:07 +10:00
Nyall Dawson
e76b761dd0 Correctly associate layer with dynamic properties 2018-09-04 19:06:07 +10:00
Nyall Dawson
70c1680754 Automatically handle adding data defined button for dynamic properties
Also exposes this capability to modeler - so that model algorithms
can use data defined parameters within their child algorithms.

TODO:
- tests
- setting the associated vector layer
2018-09-04 19:06:07 +10:00
Nyall Dawson
a717b85e2e [FEATURE][processing] New modeler parameter widget
A new widget which handles parameter values for child algorithms
within a model. Instead of the previous approach of requiring
individual widget wrappers to handle creation of a suitable
model widget, we do all this automatically for them.

This widget uses a stacked widget with a toolbutton to select
the parameter's source, instead of the previous combo box approach
(which didn't scale well for large models). I.e. users select
first whether the value is taken from a static value, a
model input, or an output from a different child algorithm. The
widget then changes appearance and behavior based on this
choice.

Additionally, a new option is present for all parameters
of using a "precalculated expression". This expression is
evaluated once before the child algorithm is executed
and used during the execution of that algorithm.
2018-09-04 19:06:07 +10:00
Nyall Dawson
644ef6a752 [processing] Initial work on porting base GUI classes to c++
- Add abstract base class for Processing widget wrappers to c++
- Add wrapper factory interface to c++
- Make QgsProcessingGuiRegistry also register widget wrapper
factories, and be responsible for creation of new c++
processing widget wrapper instances
- Start on private c++ implementation of boolean widget wrapper,
including unit tests
2018-09-04 19:06:07 +10:00
Nyall Dawson
f57c548ec3 Fix documentation test failures 2018-07-16 11:38:13 +10:00
Nyall Dawson
7f9b0f8b01 Fix version added string 2018-07-16 11:38:13 +10:00
Nyall Dawson
68aae3a0e6 Replace processing modeler toolbox with common widget/model 2018-07-16 11:38:13 +10:00
Nyall Dawson
45d856e903 Dox 2018-07-16 11:38:13 +10:00
Nyall Dawson
8caecbb85c Fix some dox 2018-07-16 11:38:13 +10:00
Nyall Dawson
101c98fd17 Move toolbox tree view to c++ class 2018-07-16 11:38:13 +10:00
Nyall Dawson
810cb9c0f7 Start replacing python model 2018-07-16 11:38:13 +10:00
Nyall Dawson
e304539dd8 Fix sorting of recently used algorithms 2018-07-16 11:38:13 +10:00
Nyall Dawson
ba410624db Faster model 2018-07-16 11:38:13 +10:00
Nyall Dawson
670f408807 Work on recent item - todo sort by use, test filter, update on change 2018-07-16 11:38:13 +10:00
Nyall Dawson
3e9648fcda Safer node handling, allow specification of recent algorithm log 2018-07-16 11:38:13 +10:00
Nyall Dawson
69ab3c9e0c Start on history item 2018-07-16 11:38:13 +10:00
Nyall Dawson
6275960df8 Start on filter string handling 2018-07-16 11:38:13 +10:00
Nyall Dawson
dc737bff98 Better responsive to provider removal 2018-07-16 11:38:13 +10:00
Nyall Dawson
dab4f42398 Filter model respects algorithm flags 2018-07-16 11:38:13 +10:00
Nyall Dawson
dab3f5137f Hide inactive providers from model 2018-07-16 11:38:13 +10:00
Nyall Dawson
f6075ca029 [processing] New class QgsProcessingToolboxModel which is
a QAbstractItemModel which represents the providers, groups
and algorithms from the processing registry
2018-07-16 11:38:13 +10:00
Nyall Dawson
d232cde514 [processing] Move recent algorithm log to c++ class 2018-07-05 02:37:03 +10:00
Nyall Dawson
2ed144ac59 Apply clang-tidy readability-avoid-const-params-in-decls fixit
Checks whether a function declaration has parameters that are
top level const.

const values in declarations do not affect the signature of a
function, so they should not be put there.
2018-06-05 10:19:13 +10:00
Denis Rouzaud
65bb60e96c run sipify 2018-05-28 10:39:34 -08:00
Nyall Dawson
f8bc97030b Remove extra space added before first line of docstring 2018-05-28 08:22:11 +10:00
Nyall Dawson
c864d22d1f Add "get ..." to doxygen compliance blacklist
Should be "gets ..." for consistent tense, or better yet
"returns ..." for consistency.
2018-05-27 14:05:06 +10:00
Denis Rouzaud
9ed1548494 move auto generated sip file in dedicated folder (gui) 2018-05-14 10:31:17 -04:00