2884 Commits

Author SHA1 Message Date
Peter Petrik
ed45bc1319 do not use QProcess on iOS 2021-01-28 06:18:20 +10:00
Nyall Dawson
d6c8133b92 Dox 2021-01-28 02:25:09 +10:00
Nyall Dawson
ddf6245f36 Move responsibility for retrieving lists of custom user CRSes to
QgsCoordinateReferenceSystemRegistry

This was the last bit of untested, direct sql database access relating
to custom projections. Now everything is nice and central and protected
by unit tests.
2021-01-28 02:25:09 +10:00
Nyall Dawson
8e26132404 More logic to QgsCoordinateReferenceSystemRegistry 2021-01-28 02:25:09 +10:00
Nyall Dawson
fae30b56ab Move logic for removing user crs to QgsCoordinateReferenceSystemRegistry 2021-01-28 02:25:09 +10:00
Nyall Dawson
2fe110c7c0 Add a method to refresh the definition of an existing QgsCoordinateReferenceSystem
object

Updates the definition and parameters of the coordinate reference system to their
latest values.

This only has an effect if the CRS is a user defined custom CRS, and the definition
of that custom CRS has changed. In this case the parameters of the object (such as the
proj and WKT string definitions, and other related properties) will be updated to
reflect the current definition of the custom CRS.

Any objects which store CRS objects should connect to the QgsApplication::coordinateReferenceSystemRegistry()'s
QgsCoordinateReferenceSystemRegistry::userCrsChanged() signal and call this method
on their stored CRS objects whenever the signal is emitted in order to update these
CRSes to their new definitions.

Refs #40704
2021-01-28 02:25:09 +10:00
Nyall Dawson
149925043c Add a new QgsCoordinateReferenceSystemRegistry singleton attached
to QgsApplication

In the long term all methods for retrieving available CRS details
should be moved here (instead of being scattered all over the place,
as they are now). But for now the logic for saving and updating
user CRS definitions has been moved here only.

The initial motivation is to create a central place where objects
can connect to in order to listen for when a user makes changes
to their custom projections.

Refs #40704
2021-01-28 02:25:09 +10:00
Nyall Dawson
c4818a0de7 Unlock composition using transformed previewed cache image of labeling
results as well as map layers

This extends the recent addition of smooth map updates for raster
layers to also apply to map labels. Now you'll see a scaled/transformed
version of the previous map render's labels while the new labeling
results are being generated in the background.

Avoids "flashy" redraws of map labels
2021-01-27 21:50:13 +10:00
Nyall Dawson
bb746c6266 Add API to pass approximate layer rendering time estimatation to
map layer renderers

These renderers can then use the layer rendering time for the previous
map render job to refine their logic regarding when its appropriate
to start compositing the layer render
2021-01-27 21:50:13 +10:00
Matthias Kuhn
a84f2a2065
Merge pull request #41009 from suricactus/dms_gui
Document management system a.k.a. polymorphic relations GUI
2021-01-22 08:39:35 +01:00
Martin Dobias
0cf985f671 Peter's review 2021-01-20 18:30:02 +01:00
Martin Dobias
302469450f Singleton, code cleanups, more tests, error reporting 2021-01-20 18:30:02 +01:00
Nyall Dawson
36f68e4fc9 Add mechanism for temporarily disabling all network caching
to QgsNetworkAccessManager, and add a checkbox in the network
logger panel to allow users to temporarily disable the network cache

This can be VERY useful when debugging QGIS network activity, or when
using QGIS to test server side changes.

This is a transient setting only, and is forgotten as soon as QGIS
is closed. That's by design -- we don't want users to accidentally
leave this enabled and cause unnecessary server load.
2021-01-20 09:28:16 +10:00
nirvn
a84647cf30 follow up ab0eba2 : crash-free implementation 2021-01-19 14:53:53 +07:00
Nyall Dawson
ff730b6ee6 Add optimised method to QgsMapToPixelSimplifier which avoids clones
in unwanted circumstances and works on QgsAbstractGeometry objects
instead of QgsGeometry
2021-01-19 16:48:12 +10:00
Nyall Dawson
538a5ecefd Improve docs to make it clearer that QgsMapSettings::visibleExtent
is probably what you want, not QgsMapSettings::extent...
2021-01-19 11:04:55 +10:00
Ivan Ivanov
449e2757d9 Added QgsRelation::Type 2021-01-18 12:39:38 +02:00
Ivan Ivanov
6dc92b540c Support polymorphic relationship strength 2021-01-18 12:39:37 +02:00
Nyall Dawson
78cb67a95d Add method to convert QgsPointCloudAttributeCollection to QgsFields 2021-01-18 13:47:31 +10:00
Nyall Dawson
d6c0b2f0a8 Add method to get equivalent QVariant type for a point cloud attribute 2021-01-18 13:47:31 +10:00
Nyall Dawson
155ee72a17 Remove remnant docx 2021-01-18 13:47:31 +10:00
Belgacem
bec8fe5f2e rollback the existing implementation and use QgsHighlight 2021-01-18 08:54:56 +10:00
Belgacem
6de83cd662 initial highlighting implementation 2021-01-18 08:54:56 +10:00
nirvn
ab0eba218c [processing] Fix file download algorithm's temporary file missing proper extension 2021-01-18 08:35:05 +10:00
Alessandro Pasotti
2d7991619f Fix QgsQueryResultModel crash 2021-01-15 14:35:21 +01:00
Alessandro Pasotti
a0d847fecd
Merge pull request #40750 from elpaso/connections-api-queryresult-model
QgsQueryResultModel
2021-01-14 11:37:11 +01:00
Peter Petrik
4b9f82d9cb fix docs 2021-01-14 10:14:34 +01:00
Peter Petrik
9bff34e732 fix documentation 2021-01-14 10:14:34 +01:00
Peter Petrik
d883d416fe [feature] use smarter map redraws: avoid map flickering by usage of cached layer image before the new rendering is done 2021-01-14 10:14:34 +01:00
Matthias Kuhn
26361a980c
Merge pull request #40914 from suricactus/dms_core
Added support for polymorphic relations relations
2021-01-14 07:39:57 +01:00
Belgacem
93f9ec2f79 add SIP_SKIP 2021-01-13 15:47:40 +01:00
Belgacem
f362eab3d8 fix indentation 2021-01-13 15:47:40 +01:00
Belgacem
ec2fe64fd2 remove code duplication 2021-01-13 15:47:40 +01:00
Belgacem
0167d07eaa fix tests 2021-01-13 15:47:40 +01:00
Belgacem
05735cdeab move the implementation to Qgs3DMapToolIdentify 2021-01-13 15:47:40 +01:00
Belgacem
be88fff95c add some QgsRay3D tests 2021-01-13 15:47:40 +01:00
Belgacem
2c9c6f94b9 fix somethings and testRayFromScreenPoint 2021-01-13 15:47:40 +01:00
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
Alessandro Pasotti
337c7c301b Removed sophisticated implementation
Store rows in the model, remove rewind and random access from
query result class.

This implementation is way simpler but the (forward) iterator
can be used only once.

I'm still convinced that the old implementation was better and more
flexible but I need to move forward.

Client code will need to store the results from the iterator.
2021-01-13 11:44:56 +01:00
Alessandro Pasotti
4b1899ef22 Fix cond private 2021-01-13 09:40:11 +01:00
Alessandro Pasotti
decbee4bd7 Fix MXE build 2021-01-13 09:40:11 +01:00