59452 Commits

Author SHA1 Message Date
Nyall Dawson
6490a170b1 Fix build on proj <6 2019-12-20 12:13:06 +10:00
Nyall Dawson
fe941e68f6 New projection dialog proj 6 tweaks and revisions 2019-12-20 12:13:06 +10:00
Nyall Dawson
2e3730179e Partial revert BoundCRS identification change
Sync behavior with the new GDAL behavior, where a CRS defined using
a proj string alone will be considered equivalent to the underlying
source crs.
2019-12-20 12:13:06 +10:00
Nyall Dawson
ac1ff9b291 Update test results 2019-12-20 12:13:06 +10:00
Nyall Dawson
4b5056c6f5 Revert "Don't automatically create boundcrs proj string representations of CRSes"
Following discussion with GDAL maintainers, it's been agreed that the consistent logic
to use across projects should be:

1. Proj strings: export as bound CRS, and treat a boundcrs match to a known CRS as equivalent
to the underlying source CRS

2. WKT strings: export without change, not as bound CRS, and DON'T treat boundcrs matches
as equivalent to the underlying source CRS
2019-12-20 12:13:06 +10:00
Nyall Dawson
93fdb05e1a Update test results to reflect newer GDAL behavior 2019-12-20 12:13:06 +10:00
Nyall Dawson
b9a44b6918 Fix build, tests on proj < 6 2019-12-20 12:13:06 +10:00
Nyall Dawson
c09c435478 Replace deprecated members 2019-12-20 12:13:06 +10:00
Nyall Dawson
35781eff6f Spelling 2019-12-20 12:13:06 +10:00
Nyall Dawson
0a9cb0e278 Fix matching of CRS by WKT to user CRSes defined by WKT, including
parameter-order independant matches
2019-12-20 12:13:06 +10:00
Nyall Dawson
3f0af6e72a Ensure that proj strings in different parameter order are matched
to user CRS on proj 6 builds
2019-12-20 12:13:06 +10:00
Nyall Dawson
a2c6bb9780 Remove more proj4 related hacks from proj6 builds 2019-12-20 12:13:06 +10:00
Nyall Dawson
efc1a1b542 Don't automatically create boundcrs proj string representations of CRSes
Just let proj decide when and if these are needed
2019-12-20 12:13:06 +10:00
Nyall Dawson
7136406047 Fix projection mismatch when reading very old projects on proj 6 builds
We should always prioritise an exact auth:id means of constructing
CRSes whenever it's available, instead of just starting with a proj string.
2019-12-20 12:13:06 +10:00
Nyall Dawson
4edab2b61d Remove a downstream hack 2019-12-20 12:13:06 +10:00
Nyall Dawson
1c34ae9c3b Fix incorrectly ellipsoid acronym returned when creating a CRS from a custom non-standard proj string on proj 6+ builds 2019-12-20 12:13:06 +10:00
Nyall Dawson
5cfa6627b4 Don't incorrectly flag unknown CRS created from proj strings as invalid
on proj 6+ builds
2019-12-20 12:13:06 +10:00
Nyall Dawson
c8d5c43402 Don't equate a BoundCRS with an identified SourceCRS as the SourceCRS when identifying
CRSes

May result in some CRSes which were previously identified as known standard CRSes
now being shown as User CRSes, but they aren't the same to we can't equate them.

If previously identified CRSes are showing as User CRSes now, then we should
investigate these upstream in the proj or gdal libraries, and get all fixes
in place upstream rather then trying to do this in QGIS code (which is
inevitably going to end up with an unmaintainable mess)
2019-12-20 12:13:06 +10:00
Nyall Dawson
550dede70e Don't use a boundCRS definition as the WKT definition of EPSG:4326
on proj 6 builds

See https://github.com/OSGeo/PROJ/issues/1804
2019-12-20 12:13:06 +10:00
Nyall Dawson
77804eb751 Update tests 2019-12-20 12:13:06 +10:00
Nyall Dawson
403e79e421 More user of userFriendlyIdentifier 2019-12-20 12:13:06 +10:00
Nyall Dawson
fdf211a8a3 Add a method for retrieving a user friendly descriptive string for
a CRS

And use this wherever we show CRS values to users
2019-12-20 12:13:06 +10:00
Nyall Dawson
e152685d97 Cleanup handling of recent CRS list, add tests 2019-12-20 12:13:06 +10:00
Nyall Dawson
908684c00b Never auto-save unknown CRSes encountered in the wild
Previously whenever an unknown CRS (i.e. something which couldn't
be matched a standard or user crs) was encountered then it would
automatically be saved to the user's custom CRS database.

This meant that over time, the custom CRS database would fill
with dozens of random entries. Even a clean QGIS install would
pollute the custom projection list with a bunch of automatically
created random CRS definitions!

Instead, never auto save CRSes to the custom projection database.
Only projections which users have manually created via the custom
projection dialog should ever be available as User CRSes.
2019-12-20 12:13:06 +10:00
Nyall Dawson
cbc1ee56cc Deprecate most methods which construct CRSes from internal CRS ids
These should NOT be used, and auth:code or WKT definitions used instead.

Unfortunately some use of these methods are very heavily entangled around
other code, so we can't deprecate all of them until 4.0
2019-12-20 12:13:06 +10:00
Nyall Dawson
c76813c434 Deprecate methods for constructing CRS from Postgis srids
Constructing CRS using Postgis srids is highly discouraged,
and instead CRSes should always be constructed using auth:id
codes or WKT strings.

QGIS 4.0: The logic should be isolated into the postgres
provider alone, and not exposed to stable API
2019-12-20 12:13:06 +10:00
Nyall Dawson
b37dd0984e Rip off a band aid, and deprecate all "proj4" calls from the API
Alias these across to new "proj" methods, which don't include the
version number.
2019-12-20 12:13:06 +10:00
Alessandro Pasotti
6654870c0b
Merge pull request #33283 from elpaso/relation-style-restore
Relation style restore
2019-12-19 13:24:35 +01:00
Alessandro Pasotti
a4859a8278 Don't document the obvious 2019-12-19 10:56:50 +01:00
Alessandro Pasotti
35af12ae9e Update src/app/qgisapp.h
Co-Authored-By: Matthias Kuhn <matthias@opengis.ch>
2019-12-19 10:56:50 +01:00
Alessandro Pasotti
cb9f6ab28c Fix raster CRS
Honestly, a failing server test (apparently totally unrelated)
and bisect took me here and I don't really get all the
intricancies of the crs read order in the project XML loading
process, but this commit fixes the test.

This is one of the notable occasions in which a test saved our a**.
2019-12-19 10:56:50 +01:00
Alessandro Pasotti
5dd15ed3f1 Apply PR review comments 2019-12-19 10:56:50 +01:00
Alessandro Pasotti
b26173292f Class ctor docs 2019-12-19 10:56:50 +01:00
Alessandro Pasotti
d460dfba77 Add ingroup to class doc 2019-12-19 10:56:50 +01:00
Alessandro Pasotti
eb97f2f88a Remove duplicated entry 2019-12-19 10:56:50 +01:00
Alessandro Pasotti
e8c6838384 Do not automatically load referencing layers 2019-12-19 10:56:50 +01:00
Alessandro Pasotti
5784e873a4 Add relations icon for style categories 2019-12-19 10:52:37 +01:00
Alessandro Pasotti
a49e8d60c3 Make test class a friend of QgsWeakRelation 2019-12-19 10:52:37 +01:00
Alessandro Pasotti
2851bbdb43 Add test for weak relation 2019-12-19 10:52:37 +01:00
Alessandro Pasotti
84c435a82e Respect categories when applying styles 2019-12-19 10:52:37 +01:00
Alessandro Pasotti
90ac90b4a9 Weak relations and auto-restore when loading a style 2019-12-19 10:33:24 +01:00
Aleix Pol
76f9d16254 appstream: include oars metadata in appstream
You can read more about OARS here:
https://hughsie.github.io/oars/
2019-12-19 08:39:52 +10:00
Alessandro Pasotti
ecff2e6e04
Merge pull request #33462 from elpaso/stored-expressions-no-groups
[feature] User expressions followup
2019-12-18 20:59:27 +01:00
Nyall Dawson
971552a782 Fix features right on the edges of geographic layers can disappear when
reprojected

Eg +/- 180 degree grid lines

Fixes #27571
2019-12-19 05:50:27 +10:00
Alessandro Pasotti
b894cb7c2c User -> User expressions 2019-12-18 20:16:28 +01:00
Alessandro Pasotti
7f8ef8c470 Always load user exp when context is set
... and avoid loading recent exp and fields twice
2019-12-18 17:06:39 +01:00
Alessandro Pasotti
89bddec34b Update tests after group removal from user exp 2019-12-18 14:34:03 +01:00
Alessandro Pasotti
a8c0e4cbf6 User expressions followup
- renamed the group to "User"
- added help text for the group
- added QgsSettings Expressions namespace
- reworded tooltips for store/remove actions
2019-12-18 14:24:02 +01:00
Matthias Kuhn
b566eace8a
Merge pull request #33457 from m-kuhn/yet_another_azure_mask
Yet another test mask for Windows
2019-12-18 14:13:09 +01:00
Matthias Kuhn
79c7ca30ee
Merge pull request #33270 from roya0045/handler_v2
[UX][feature??] add progress bar to the auto layer finder
2019-12-18 14:10:52 +01:00