2833 Commits

Author SHA1 Message Date
Belgacem
fa7e3d4f7d fix sip and add Nyall suggestions 2021-01-13 15:47:40 +01:00
Belgacem
6caf1bfe32 fix code_layout 2021-01-13 15:47:40 +01:00
Belgacem
59bb58f880 cleanup and fix symbol nullptr bug 2021-01-13 15:47:40 +01:00
Belgacem
0073c35b65 remove distanceFromPoint 2021-01-13 15:47:40 +01:00
Belgacem
a97ade0e88 address reviews 2021-01-13 15:47:40 +01:00
Belgacem
b5e6033a88 fix SIP 2021-01-13 15:47:40 +01:00
Belgacem
432f29be92 add pointsLimit and SIP 2021-01-13 15:47:40 +01:00
Belgacem
398144ee93 add docs 2021-01-13 15:47:40 +01:00
Belgacem
3a014ae0bf make identification work with point size 2021-01-13 15:47:40 +01:00
Belgacem
4f3f95a841 raycast intersection with node bounding box 2021-01-13 15:47:40 +01:00
Nyall Dawson
a8c3b02cdd Correctly expose QgsLayoutItemAttributeTable::getTableContents to sip,
so that this class can be reused from Python classes

Fixes https://github.com/gltn/stdm/issues/411
2021-01-13 14:56:09 +10:00
Denis Rouzaud
dcd3c32458 fix sipify 2021-01-12 13:02:56 +01:00
Denis Rouzaud
aac558dd59 follow up + some forward declarations 2021-01-12 12:52:23 +01:00
Denis Rouzaud
a6404da815 separate QgsAttributeEditorElement into several files 2021-01-12 12:52:20 +01:00
Denis Rouzaud
ca37a56763
Merge pull request #40947 from 3nids/rel-reg-f2
move reading from XML logic from QgsEditFormConfig to QgsAttributeEditorElement
2021-01-12 10:29:11 +01:00
Denis Rouzaud
9e5b614189 fix legacy config before creating elements to avoid passing widget config 2021-01-12 08:24:35 +01:00
Nyall Dawson
44c2a26074 Add utility functions to determine if a QgsExpression is a simple
"field=value" type expression, and for condensing a list of similar
expressions to an equivalent "field IN (value, value2,...)" expression
wherever possible
2021-01-12 12:16:50 +10:00
Matthias Kuhn
74d053242e Add new field for geoid-ellipsoid diff 2021-01-12 10:25:19 +10:00
Denis Rouzaud
a6aecf5ff5 deprecate QgsEditFormConfig::attributeEditorElementFromDomElement 2021-01-11 21:51:54 +01:00
Denis Rouzaud
3f717cb395 move reading from XML logic from QgsEditFormConfig to QgsAttributeEditorElement
so it lives in the same place than saving the config
2021-01-11 21:51:54 +01:00
Denis Rouzaud
1656ef2987
move the config to QgsAttributeEditorRelation + fix cloning (#40941) 2021-01-11 21:47:09 +01:00
Nyall Dawson
f8e5e0bf7e Improve python repr string for QgsCoordinateReferenceSystem
- Indicate invalid crses
- If crs doesn't have an authid, use wkt representation
2021-01-11 13:06:05 +10:00
Matthias Kuhn
e0ad337a2f NMEA calculate 3D RMS 2021-01-11 12:25:05 +10:00
Nyall Dawson
ddf19ac4c3 Add method to retrieve exit status of process 2021-01-09 07:16:14 +10:00
Denis Rouzaud
0fc4aee612
Merge pull request #40721 from suricactus/relregistry
Support multiple relation editors via relation widget registry
2021-01-08 21:39:39 +01:00
Ivan Ivanov
6620bb900e Removed the deprecated methods, will be implemented in Python only 2021-01-08 16:03:50 +02:00
Denis Rouzaud
6061030f96
enable dynamic SVGs for fill symbol (#40902) 2021-01-08 12:02:31 +01:00
Denis Rouzaud
17500a7ee7
Merge pull request #40596 from 3nids/dynamic_svgs
core part to handle dynamic SVGs
2021-01-07 14:57:57 +01:00
Nyall Dawson
a39e1625c0 [api] Add new class to run a process in a blocking manner without
QEventLoop related issues on the main thread

This class should be used whenever a blocking process run is required.
Unlike implementations which rely on QApplication::processEvents()
or creation of a QEventLoop, this class is completely thread safe
and can be used on either the main thread or background threads without
issue.

Execution supports use of a QgsFeedback object to support termination
of the process.
2021-01-07 06:01:39 +10:00
Nyall Dawson
d1761bdb15 Port QProcess::splitCommand from qt 5.15
This is a useful method, and desirable in Qt < 5.15. It's also not
exposed currently to Python, so this doubles as a way for plugins
to use this method.
2021-01-07 06:01:39 +10:00
Denis Rouzaud
98d1be22f2 also update usedAttributes with attributes used in SVG parameters 2021-01-06 16:59:54 +01:00
Denis Rouzaud
130cbae947 prepare expressions of properties for SVG parameters 2021-01-06 16:59:54 +01:00
Denis Rouzaud
3881c81184 fix bad rebase 2021-01-06 16:33:23 +01:00
Denis Rouzaud
2e90da4b26 drop QgsSymbolLayerUitls::readSerializedProperties and serializeProperties 2021-01-06 16:11:14 +01:00
Denis Rouzaud
3201fa4ecb use QgsProperty to handle SVG parameters 2021-01-06 11:25:21 +01:00
Denis Rouzaud
9116a1a181 add a simple class to hold parameters information
this makes it more futureproof to introduce type (string/number) or domain (attribute vs node value)
2021-01-06 11:25:21 +01:00
Denis Rouzaud
9c0ee358ff core part to handle dynamic SVGs
this allow to use a map of parameters to dynamically replace attributes or nodes values in the XML of the SVG
2021-01-06 11:25:17 +01:00
Denis Rouzaud
fd7406cb08
Merge pull request #40716 from 3nids/qvariant-properties
use QVariantMap instead of QgsStringMap for symbol layer properties
2021-01-06 11:21:41 +01:00
Nyall Dawson
3d23cb62af Add missing QgsInterval != operator 2021-01-06 13:28:16 +10:00
Samweli
a75211cc5a fix for additional review comments 2021-01-06 13:28:16 +10:00
Samweli
21c28bc9dc addressed review comments 2021-01-06 13:28:16 +10:00
Samweli
4513033c05 returned setFrameDuration and frameDuration functions in the temporal navigation object 2021-01-06 13:28:16 +10:00
Daniel Minor
8aac2388c2 Use time step when exporting animation 2021-01-06 13:28:16 +10:00
Daniel Minor
f2d5d5f4db Address review feedback 2021-01-06 13:28:16 +10:00
Daniel Minor
d07cb9720f Rerun sipify after documentation fix 2021-01-06 13:28:16 +10:00
Daniel Minor
9da580cb3d Pass time step and time step unit into QgsTemporalNavigationObject
Currently, we pass the frame duration as a QgsInterval and use the average
duration of a month or year during the animation, for instance, 30 days
rather than a month. This makes it impossible to have an animation that
displays on a particular day each month, as the day in the next month will
change depending on the number of days in the previous month.

This changes QgsTemporalNavigationObject to take the time step and time
step unit as separate arguments. The settings in
QgsTemporalUtils::exportAnimation are left unchanged, because in this case
the user interface is already set up to use an interval.

If the time step has a fractional value, the frame duration is calculated
using a QgsInterval as before. If it has an integer value, the calculation
uses QDateTime to advance by the specified time step instead. So a value of
1.5 months results in a frame duration of 45 days, but a value of 1 month
will result in a duration that depends on the length of the current month.

Fixes #37829.
2021-01-06 13:28:16 +10:00
Nyall Dawson
3ca2137f82 Improve QgsSvgCache documentation, add note about origin of QPictures
returned by svgAsPicture
2021-01-06 09:02:53 +10:00
Nyall Dawson
bb05c3bcfb Allow plugins to set control image path for QgsRenderChecker, so that
they can reuse this class for plugin specific tests
2021-01-06 04:44:59 +10:00
Nyall Dawson
b740bf201a [processing] Fix exception when calling "Select from Files" in batch mode
on a file parameter

Fixes #40705
2021-01-05 08:32:10 +10:00
Nyall Dawson
923af4e833 Older sip versions DO require custom conversion code! 2021-01-04 13:05:54 +01:00