44612 Commits

Author SHA1 Message Date
Denis Rouzaud
3777aade5b added some options 2017-12-15 14:14:47 +10:00
Denis Rouzaud
2b1f82ff35 adding datum transform works 2017-12-15 14:14:47 +10:00
Denis Rouzaud
e178ffc8ff modification to QgsDatumTransformationDialog to allow interaction with CRSs 2017-12-15 14:14:47 +10:00
Denis Rouzaud
f4eae2888a started datum UI refactoring 2017-12-15 14:14:26 +10:00
Nyall Dawson
3916628212 Fix handling of transform-not-required in QgsCoordinateTransformContext 2017-12-15 14:14:26 +10:00
Nyall Dawson
40e551da17 Fix failing test 2017-12-15 14:14:26 +10:00
Nyall Dawson
1422d5382c Improve caching of transforms 2017-12-15 14:14:26 +10:00
Nyall Dawson
0a9c107fcc Fix build 2017-12-15 14:14:08 +10:00
Nyall Dawson
cb693a72f9 Move caching to QgsCoordinateTransform
and remove no longer required QgsCoordinateTransformCache singleton
2017-12-15 14:14:08 +10:00
Nyall Dawson
439ef20088 Prepare for removal of QgsCoordinateTransformCache 2017-12-15 14:13:59 +10:00
Nyall Dawson
018bfb49f9 Remove QgsDatumTransformStore
and port usage over to QgsCoordinateTransformContext instead
2017-12-15 14:13:52 +10:00
Nyall Dawson
754a6e06bb Tweak transform logic (only remove src/dest transforms when both transforms are -1) 2017-12-15 14:13:22 +10:00
Nyall Dawson
fed8a6786e Add transform context to QgsMapSettings and QgsRenderContext
And also throw warnings when the context isn't set for these objects
2017-12-15 14:13:22 +10:00
Nyall Dawson
cc424c9509 Move warning to better location 2017-12-15 14:13:22 +10:00
Nyall Dawson
620139054d Add explicit setter for project's transform context
And add transformContextChanged signal, so that we can detect
when the context is changed.
2017-12-15 14:13:22 +10:00
Nyall Dawson
1a73fef4a7 In debug builds, throw a warning when transforming coordinates
and no coordinate transform context has been set.
2017-12-15 14:13:22 +10:00
Nyall Dawson
86d9492372 Remove context-unaware QgsCoordinateTransform constructors from Python bindings
This forces Python code and plugins to become datum transform
aware, and given that upgrading python code is easy (just
add QgsProject.instance() as a new argument to the constructor)
it's relatively painless to force this on PyQGIS users.

Also fix upgrade the easy QgsCoordinateTransform c++ constructors
where the project is available, or where using QgsProject::instance()
is safe to do.

For others, just avoid the deprecated warnings until we can
get access to the correct project instance where the transform
is being constructed.
2017-12-15 14:13:22 +10:00
Nyall Dawson
91e0afb613 Add QgsCoordinateTransformContext arguments to QgsCoordinateTransform constructor
And automatically retrieve correct datum transforms for the
transform, based on the information in the context.

Also add a convenience constructor which takes a QgsProject
instance instead of a QgsCoordinateTransformContext and which
automatically retrieves the project's transform context and uses
that. This is designed to make it easy to upgrade existing
Python code (by adding just QgsProject.instance() to the transform
constructors).
2017-12-15 14:12:16 +10:00
Nyall Dawson
2edb2d8ac7 Remove unused QgsCoordinateTransform::readXml/writeXml methods
These methods are not used in master and are of questionable
value. Better to serialise the source and dest crs separately
and create the transform when required
2017-12-15 14:11:49 +10:00
Nyall Dawson
76ebfdf2f6 Add a QgsCoordinateTransformContext member to QgsProject 2017-12-15 14:11:38 +10:00
Nyall Dawson
1013c0bdd9 Add support for serializing transform contexts 2017-12-15 14:11:38 +10:00
Nyall Dawson
3d1b8aeeb3 Implement logic for calculating datum transforms to use 2017-12-15 14:11:38 +10:00
Nyall Dawson
7af5545fdc QgsCoordinateTransformContext must be thread safe 2017-12-15 14:11:38 +10:00
Nyall Dawson
5131258b08 QgsCoordinateTransformContext is implicitly shared 2017-12-15 14:11:38 +10:00
Nyall Dawson
f7b315f594 Doxygen 2017-12-15 14:11:38 +10:00
Nyall Dawson
2e2e1248a5 Allow removing existing transforms from context 2017-12-15 14:11:38 +10:00
Nyall Dawson
8a0bd08e07 Start on QgsCoordinateTransformContext
Stores settings related to the correct datum transforms to use
when performing a coordinate transform.
2017-12-15 14:11:38 +10:00
Nyall Dawson
f2b70ffdc6 Allow clickable links in message bar text
Links are opened using QDesktopServices::openUrl, i.e. the
default OS handler for that link type
2017-12-15 14:48:52 +11:00
nirvn
3c661b10b3 [ui] add vector layer icon color improvement 2017-12-15 10:26:47 +07:00
nirvn
507cd4765b [ui] harmonize asf & asm providers icon color 2017-12-15 09:54:50 +07:00
Harrissou Sant-anna
905a14759d Use getThemeIcon instead of building each icon 2017-12-15 12:29:24 +11:00
Harrissou Sant-anna
1d55c949d5 Replace "Non spatial" type by "No geometry" 2017-12-15 12:29:24 +11:00
Harrissou Sant-anna
11e6101e42 Fix icon file 2017-12-15 12:29:24 +11:00
Harrissou Sant-anna
e813c80fbc Add icon to SpatiaLite geometry type combobox items 2017-12-15 12:29:24 +11:00
Harrissou Sant-anna
c1cebd98d2 Add icon to field type combobox items 2017-12-15 12:29:24 +11:00
Harrissou Sant-anna
32b7c533ca Add icon to geometry combobox items 2017-12-15 12:29:24 +11:00
Nyall Dawson
db07bc6c07
Merge pull request #5867 from alexbruy/processing-group
[processing] add groupId() method to get untranslated algorithm group
2017-12-15 12:25:45 +11:00
Etienne Trimaille
abdd8759a0 add constructor to QgsBox3d with a QgsRectangle 2017-12-15 12:14:05 +11:00
Nyall Dawson
d0475cb042 Travis doesn't like me fixing him 2017-12-15 10:58:47 +10:00
Nyall Dawson
7b67132753 Fix build warning 2017-12-15 10:36:22 +10:00
Nyall Dawson
6c46e47c7c Fix failing unit test
Wow... how did that test ever work? Very odd...
2017-12-15 10:09:21 +10:00
Etienne Trimaille
ff15896c30 getter for the output crs in QgsExtentGroupBox 2017-12-15 10:38:08 +11:00
Nyall Dawson
bbf00279ad [processing] Don't sort field names in multi-field input dialog
Field names should always be listed in the order that the layer
defines them
2017-12-15 08:58:54 +11:00
Nyall Dawson
9984962257
Merge pull request #5864 from nyalldawson/favorites
[browser] Allow renaming favorite items
2017-12-15 08:58:28 +11:00
Etienne Trimaille
49990b840a hide the extent from canvas button if the canvas is not set 2017-12-14 19:53:29 +01:00
Matthias Kuhn
4312a8466f [attributetable] Adjust the edit selection when the filter changes
Make sure that we always have a feature on the form that matches the current filter condition
2017-12-14 19:46:48 +01:00
Alexander Bruy
2674022b6c [processing] add group id to scripts 2017-12-14 18:10:35 +02:00
Alexander Bruy
dca37abd0e [processing] add group id to QGIS algorithms 2017-12-14 18:04:12 +02:00
Alexander Bruy
53bc147dca [processing] add group id to GDAL algorithms 2017-12-14 18:04:11 +02:00
Alexander Bruy
5e157c967d [processing] add group id to SAGA algorithms 2017-12-14 18:04:11 +02:00