6387 Commits

Author SHA1 Message Date
David Signer
5e6e75662f available values in value relations 2019-12-16 18:28:18 +01:00
David Signer
54f4efbd86 available values of value map 2019-12-16 18:28:18 +01:00
David Signer
a02cdbc39a CanProvideAvailableValues as a flag on fieldformatter 2019-12-16 18:28:18 +01:00
David Signer
6baaae5340 get availableValues over the fieldFormatter 2019-12-16 18:28:18 +01:00
Matthias Kuhn
b42a31ec2f
Merge pull request #32472 from troopa81/feature_selectionwidget_in_featureselectiondialog
Selection widget in feature selection dialog
2019-12-16 11:32:25 +01:00
Julien Cabieces
a8f46ac655 update sip 2019-12-16 09:55:30 +01:00
Alessandro Pasotti
7464290ae3
Merge pull request #33379 from elpaso/widget-dependencies-move-to-formatter
Move layerDependencies to formatter
2019-12-14 09:00:08 +01:00
Nyall Dawson
a1ac77877f Add a method to determine if the coordinate operation string returned
by QgsCoordinateTransformContext.calculateCoordinateOperation corresponds
to the reverse of what's actually required.

Gross API, but it's the best we can do until proj has a method to
invert a coordinate operation so that we can return the proper
inverse operation proj string from calculateCoordinateOperation
(without resorting to fragile proj string parsing/mangling)
2019-12-14 05:33:59 +10:00
Nyall Dawson
ef19797997 Add method to retrieve the details of the coordinate operation which is
actually being used by a QgsCoordinateTransform object
2019-12-14 05:33:59 +10:00
Nyall Dawson
82a84ffd0d Don't try to normalize proj coordinate operations constructed directly
from the proj string via the transform context

This isn't possible -- only proj coordinate operations constructed
from a src/dest CRS pair can be normalized, not those constructed
from a proj string.

It was redundant in any case, since we always normalize the available
operations before giving users a choice of them.

So just add some big bold warnings to the dox in case anyone is
manually manipulating and adding custom operations, that these
also MUST be pre-normalized

Refs #33121, conversation in https://github.com/OSGeo/PROJ/issues/1794
2019-12-14 05:33:59 +10:00
Peter Petrik
2564b021d8 introduce way for plugins to retreive 3d stacked data values [API] 2019-12-13 16:30:14 +01:00
Alessandro Pasotti
a977343944 Test for relationreference field formatter deps 2019-12-13 13:36:06 +01:00
David Signer
b89f1e0dfb improve docs 2019-12-13 12:03:57 +01:00
Alessandro Pasotti
4ad62aa6ff Move layerDependencies to formatter
... from the widget
2019-12-13 11:54:25 +01:00
David Signer
d788d0ffe2 sip deprecated of forceReload and some doc improvements 2019-12-13 10:50:25 +01:00
Even Rouault
2c652040cd
Fix compilation error in qgsdxfexport.cpp
I'm not sure which of QT 5.9.0 or gcc 5.5.0 is not happy, but with both
of them, I get:
```
/opt/qt59/include/QtCore/qflags.h: In instantiation of ‘QFlags<T>& QFlags<T>::setFlag(Enum, bool) [with Enum = QgsDxfExport::DxfPolylineFlag]’:
/home/even/qgis/QGIS/src/core/dxf/qgsdxfexport.cpp:1102:68:   required from here
/opt/qt59/include/QtCore/qflags.h:153:46: error: no match for ‘operator~’ (operand type is ‘QgsDxfExport::DxfPolylineFlag’)
         return on ? (*this |= f) : (*this &= ~f);
```
2019-12-13 10:33:14 +01:00
David Signer
625d601e86 Deprecate forceReload() and merge it together with reloadData()
`reloadData()` implementations are set to private on `reloadProviderData()`

All calls of `forceReload()` or `reloadData()` target `QgsDataProvider::reloadData()` what calls the implemented `reloadProviderData()` of the provider and `dataChanged()` signal is called allways. That this signal is called changes the behavior of the `dataReload()` calls of all providers.
2019-12-12 15:59:07 +01:00
Peter Petrik
6febf38e10 [mesh] support active flag capability of MDAL. mesh layers for datasets that does not support active flags should not take less memory and load faster 2019-12-12 08:37:55 +01:00
Nyall Dawson
187b8f3325 When saving a user crs, if a WKT representation of the CRS is available,
then store and save that

Proj string representations of CRSes are lossy, so we should always prefer
WKT when it's available
2019-12-12 14:44:50 +10:00
Nyall Dawson
898205e7d8 Fix dox 2019-12-12 07:44:11 +10:00
Nyall Dawson
b1bbc8511b [labeling] Move settings related to removing labels (e.g. max no
of labels, min size for labels) to a new class QgsLabelThinningSettings

This new class is designed to contain settings related to how the label
engine removes candidate label positions and reduces the number of
displayed labels.
2019-12-12 07:44:11 +10:00
Nyall Dawson
a8adb2d6c2 Code shuffle: move all labeling related code into src/core/labeling
So that these files are all grouped together, making it easier to locate
all the components of the labeling engine and hopefully making things
easier to navigate
2019-12-11 14:05:44 +10:00
Denis Rouzaud
c5766dc83b
Merge pull request #33262 from 3nids/log_impr
Classification methods: save/read parameters, improve negative value handling in log method
2019-12-10 23:20:58 +01:00
Nyall Dawson
f9a3d0589a Remove last use of pal::RTree 2019-12-10 18:28:11 +10:00
Matthias Kuhn
fc5c95c28b
Merge pull request #33279 from m-kuhn/sandboxed_expression_mode
Fail expression evaluation if missing field is referenced
2019-12-08 14:42:52 +01:00
Matthias Kuhn
332550ed55 Typo 2019-12-07 13:11:25 +01:00
Nyall Dawson
7c59700f2b Responsibility for managing obstacle geometry is in QgsLabelObstacleSettings 2019-12-07 19:09:51 +10:00
Nyall Dawson
7f38c41497 Avoid duplicate code for evaluating label obstacle data defined values 2019-12-07 19:09:51 +10:00
Peter Petrik
b93dfdd0b3
[feature] Support datasets with data defined on faces in mesh calculator (#33248)
* [feature] support datasets with data defined on faces in mesh calculator, fix #30219, fix #30170

added "driver" and "group name" to the calculator interface.
MDAL now supports 3 drivers for storing results, so user must be able to choose appropriate driver and dataset group name (some drivers store multiple groups to 1 file)
2019-12-06 18:27:28 +01:00
Denis Rouzaud
84d6bbe88a fix dox and switch to classic enum
scope based enum is causing troubles from Python depending on sip version
2019-12-06 13:06:08 +01:00
Denis Rouzaud
86c3202a1d Classification methods: save/read parameters, improve negative value handling in log method 2019-12-06 09:10:43 +01:00
Nyall Dawson
61454c67cd [processing] Add api to allow providers to report warnings which should
be shown to users when using that provider

This can be used to return a translated warning message which should be
shown to users of this provider. It's intended for use in cases such as
a provider which relies on a 3rd-party backend, where the version of the
backend software is not officially supported, or for alerting users to
providers in a "beta" or "untrustworthy" state.
2019-12-06 17:35:41 +10:00
Nyall Dawson
61903a766a Fix some build warnings, clazy warnings 2019-12-06 08:48:40 +10:00
Peillet Sebastien
35eea1c083 Visible status for embedded layers in embedded group
- For project : check visible state for embedded layers inside an unchecked group, instead of putting all layers in embedded-invisible-layers
- For theme : Add an 'checked-group-node' to save group visible state independently to layers in it.
Fixes #33097
2019-12-06 04:54:27 +10:00
Nyall Dawson
d182cf2d76 [gps] Correctly set initial value of hoz/vert accuracy and direction as not available 2019-12-06 04:50:53 +10:00
Nyall Dawson
6b5f983ad6 [gps] Add support for GPHDT heading from true north messages 2019-12-06 04:50:53 +10:00
Denis Rouzaud
d147a8dffa
Merge pull request #33233 from 3nids/class_method_params
Option to filter negative values in logarithmic classification method
2019-12-05 14:59:04 +01:00
Denis Rouzaud
dbd2d74a57 fix documentation 2019-12-05 10:17:51 +01:00
Denis Rouzaud
456384e4b3 use QgsProcessingParameters::parameterAsBool
rather than re-implementing QVariant conversion in QgsClassificationMethod
2019-12-05 09:50:16 +01:00
Matthias Kuhn
c01f8042f8
Merge pull request #33162 from m-kuhn/dxf_dash_beautify
DXF export preserve dashed line style
2019-12-05 08:46:00 +01:00
Peter Petrik
7df4ec7f4a fix issues from 2nd review 2019-12-05 07:08:50 +01:00
Peter Petrik
d1dd68ae11 remove averaging settings class and expore averaging methods outside qgis core 2019-12-05 07:08:50 +01:00
Peter Petrik
a30bda6c3d [FEATURE] Initial implementation of QEP 158: Support of 3d stacked meshes in QGIS.
Stacked 3D meshes store values on the volumes that are regularly stacked over base 2d mesh. User can select various 3d to 2d averaging/interpolation method to convert values on volumes (3d) to values on faces (2d) that can be shown in mesh layer. This is achieved by new tab in the mesh layer properties dialog.
2019-12-05 07:08:50 +01:00
Denis Rouzaud
a3a7b5f447 code layout, loop improvements, dox, const correction 2019-12-05 06:09:29 +01:00
Denis Rouzaud
aec68661ca update python bindings 2019-12-04 22:20:26 +01:00
Julien Cabieces
ba925bb36d Create child feature with geometry from the relation editor (#32528)
* [FEATURE][needs-docs] Create geometric child feature from relation editor
2019-12-04 14:46:32 +01:00
signedav
20ac7e3c22 Update python/core/auto_generated/expression/qgsexpression.sip.in
Co-Authored-By: Matthias Kuhn <matthias@opengis.ch>

and

set parameter to const
2019-12-03 15:29:17 +01:00
David Signer
7fbf2c867d tags helping to find the correct function are integrated into the help of the expression
defined in the json files and used by the expression builder to find the function (not using as alias)
2019-12-03 15:29:16 +01:00
Nyall Dawson
9f63f49230 Move label obstacle settings out to their own class, and monkey patch around
to maintain current API

QgsPalLayerSettings is way too heavy, and we need to start refactoring
this into smaller atomic components
2019-12-03 19:38:24 +10:00
Nyall Dawson
b235d31b8f Move QgsPalLayerSettings default values to header 2019-12-03 19:38:24 +10:00