5374 Commits

Author SHA1 Message Date
Nyall Dawson
e2f09fa662 Add a QgsTask for fetching network content
Provides a simple method for fetching remote HTTP
content in a QgsTask. Utilises QgsNetworkContentFetcher so
Url redirects and progress reports are automatically handled.
2018-04-02 08:42:21 +10:00
Nyall Dawson
bcf57c3356 Add method for QgsNetworkContentFetcher to fetch using request instead of url 2018-04-02 08:42:21 +10:00
Blottiere Paul
4be8baa683
Merge pull request #6679 from pblottiere/bugfix_will_render_feature
[bugfix] Fixes identify action on deactivated rules for QgsRuleBasedRenderer
2018-03-30 09:08:11 +01:00
Nyall Dawson
d9e9f2abac Fix tests 2018-03-30 09:01:21 +11:00
Nyall Dawson
f02602b9bb [needs-docs] geometry smooth algorithm now also retains and smooths z/m values
...instead of just discarding them

Applies to processing algorithm and expression function (and
QgsGeometry::smooth method)
2018-03-30 08:59:00 +11:00
Nyall Dawson
b805b60389 Test masks 2018-03-29 19:50:44 +11:00
Nyall Dawson
3f733e7061 Use a checkerboard background in svg cache tests 2018-03-29 19:50:44 +11:00
Nyall Dawson
c71347c327 Indentation 2018-03-29 19:50:44 +11:00
Nyall Dawson
77941442c7 When a remote SVG is requested but fails, use the missing SVG icon
as an indicator for users that something went wrong

This was previously only used for replies with incorrect mime
types or authentication errors, but it meant that an incorrect
SVG url would silently result in no symbols rendered.

Also add unit tests for fetching remote svg images
2018-03-29 19:50:44 +11:00
Nyall Dawson
5d4e1bb31f Add intersection/tangent methods to QgsCircle 2018-03-29 17:40:40 +11:00
Nyall Dawson
44143c1bf9 Restore a disabled test for Qt5 which works OK now 2018-03-29 13:26:51 +11:00
Nyall Dawson
8b59bdcc94 [layouts] Fix missing layer scope for atlas enabled items
Fixes #18525
2018-03-29 07:21:03 +11:00
Nyall Dawson
054470f032 Never show int/long attributes in scientific notation
Fixes #18508, #18302
2018-03-29 07:20:31 +11:00
Blottiere Paul
624e446b67 Add unit test 2018-03-27 14:11:15 +01:00
Blottiere Paul
0b5c2aeecc Recursive fix 2018-03-27 11:00:20 +01:00
Blottiere Paul
dd6f98fe24 Add unit tests 2018-03-27 09:14:18 +01:00
Nyall Dawson
4bfc808ee6 Add some circle intersection and tangent utilities to QgsGeometryUtils 2018-03-27 17:44:25 +11:00
Nyall Dawson
4f16e01e97 Fix value map field formatter doesn't work
The configuration format was changed without updating the unit
tests to flag this failure.
2018-03-26 11:02:07 +11:00
Alessandro Pasotti
5eb9ab4813
Merge pull request #6644 from elpaso/gml-inverted-axis
Add axisOrder to QgsAbstractGeometry GML generators
2018-03-24 12:50:13 +01:00
Nyall Dawson
2eacc4c4b4 [FEATURE][layouts] Export project metadata in PDF/image exports
Includes project metadata in PDF exports, and supported image
based formats.

Image based metadata support depends on the format and the
Qt library's handling of each particular format (e.g. PNG
outputs are well supported).

Developed for Arpa Piemonte (Dipartimento Tematico Geologia e Dissesto)
within ERIKUS project
2018-03-22 16:13:30 +11:00
Nyall Dawson
1d4ff69553 Fix unit test 2018-03-22 16:13:30 +11:00
Nyall Dawson
a600b51bad [FEATURE][layouts] Export project metadata as SVG RDF metadata
Adds an option to include project metadata into SVG exports
generated from layouts, using the SVG RDF standard.

Developed for Arpa Piemonte (Dipartimento Tematico Geologia e Dissesto)
within ERIKUS project
2018-03-22 16:13:30 +11:00
Nyall Dawson
18408fa2c1 [FEATURE] Add expression context variables for project metadata
- @project_author
- @project_abstract
- @project_creation_date
- @project_identifier
- @project_keywords

Allows retrieval of project metadata through QGIS expressions

Developed for Arpa Piemonte (Dipartimento Tematico Geologia e Dissesto)
within ERIKUS project
2018-03-22 16:13:30 +11:00
Nyall Dawson
6ce184de79 Add tests for QgsMetadataWidget 2018-03-22 16:13:30 +11:00
Nyall Dawson
d293c5d0a0 Code shuffle to avoid duplicate code 2018-03-22 16:13:30 +11:00
Nyall Dawson
99faf06f60 Make project title getters/setters a shortcut to metadata title field
And silently upgrade old project titles to metadata titles
2018-03-22 16:13:30 +11:00
Nyall Dawson
bba3f6c6fe Add QgsProjectMetadata member to QgsProject 2018-03-22 16:13:30 +11:00
Nyall Dawson
09aca080ec Add new QgsProjectMetadata metadata class
For storing QgsProject metadata. Contains all metadata items
from QgsMetadataBase, plus adds author and creation datetime
metadata items.
2018-03-22 16:13:30 +11:00
Nyall Dawson
1e05de049a Update metadata validator for base class split 2018-03-22 16:13:30 +11:00
Nyall Dawson
a96d59a1a6 Create unit test for QgsMetadataBase 2018-03-22 16:13:30 +11:00
Nyall Dawson
a2ba566e2b Fix generation of world file when exporting canvas
Fixes #18491
2018-03-22 11:18:26 +11:00
Nyall Dawson
66c8a85b88 Fix incorrect display of coordinates in status bar 2018-03-21 22:20:43 +11:00
Nyall Dawson
9ab4d96362 [processing] Don't try to load algorithms for disabled providers
Fixes #18488
2018-03-21 08:45:38 +11:00
Alessandro Pasotti
84bdc92a8c Add axisOrder to QgsAbstractGeometry GML generators 2018-03-20 13:04:17 +01:00
Alessandro Pasotti
a160e7494c Reference file for the WFS endless loop test 2018-03-19 15:01:57 +01:00
Alessandro Pasotti
1b31e55871 [test] for WFS Fix endless loop
Greetings from Bonn!
2018-03-19 15:00:11 +01:00
Nyall Dawson
fa2c5aebb7 [FEATURE][processing] Import geotagged photos algorithm
This implements a new "import geotagged photos" algorithm
for processing. It allows selection of a folder which it
will scan for jpg files which have been geotagged and
creates a PointZ layer with the result, with attributes
for photo path, altitude, direction and timestamp.

Optionally the scan can be recursive and you can create
an optional table of photos which could not be read
or which were missing geotags.

The algorithm automatically sets the output table to
use an external resource widget to display the linked
photos in the attribute form.

[ALGCHANGE]
2018-03-16 15:08:29 +11:00
Nyall Dawson
435c14d1ee Unlikely attempt to stop flaky rule based renderer test crashing out 2018-03-16 08:18:36 +11:00
Nyall Dawson
7c0665a331 Clearer ownership, docs for rule based renderer 2018-03-16 08:18:36 +11:00
Luigi Pirelli
685adbf7e1
Merge pull request #6615 from elpaso/bugfix-16967-multi-in-value-relation
[bugfix] value relation widget with Allow multiple selection doesn't resolve
2018-03-15 17:09:45 +01:00
Luigi Pirelli
d771991a01
Merge pull request #6603 from slarosa/fix_18435
Fixes #18435: QGIS crash when deleting auxiliary layer
2018-03-15 15:15:55 +01:00
Alessandro Pasotti
4f05ed1dd7 [bugfix] value relation widget with Allow multiple selection doesn't resolve
Now it will accept arrays as well as string representations of arrays

Added a test

Fixes #16967 value relation widget with Allow multiple selection doesn't resolve the values anymore
2018-03-15 15:11:52 +01:00
Salvatore Larosa
74689dfe9d fix typo: followup 24ef27d079 2018-03-15 14:32:57 +01:00
Salvatore Larosa
24ef27d079 add unit test for setAuxiliaryLayer 2018-03-15 11:01:23 +01:00
Nyall Dawson
bd1d87ed86 [processing] Allow algorithms to set layer post-processors for
execution on generated layers after the algorithm (or parent
model) completes

This commit adds an interface for layer post-processing handlers
for execution following a processing algorithm operation.

Post-processing of a layer will ONLY occur if that layer is set
to be loaded into a QGIS project on algorithm completion.

Algorithms that wish to set post-processing steps for generated
layers should implement this interface in a separate class
(NOT the algorithm class itself!) and implement a method
to handle the layer post-processing.

This method always runs in the main thread and can be used to
setup renderers, editor widgets, metadata, etc for the given layer.

Fixes #17961
2018-03-15 17:55:25 +11:00
Nyall Dawson
9e351e80fc Fix flaky VirtualLayerTask test 2018-03-15 13:42:44 +11:00
Nyall Dawson
feb20a7a27 Add unit test for postgres layer metadata 2018-03-15 10:43:04 +11:00
Denis Rouzaud
4c1e19c080 fix constraints not checked when they should be (#6550) 2018-03-14 07:49:37 -04:00
Nyall Dawson
7e6796c657 By default, generate new layer colors from a random selection
in a preset palette

The palette is packaged as resources/new_layer_colors.gpl

TODO: allow users to set a different palette
2018-03-13 10:39:49 +11:00
Nyall Dawson
bc449c401b Move generation of default symbol random colors to
QgsColorSchemeRegistry

and add API to set a QgsColorScheme from which to pull
colors when creating a random symbol color.
2018-03-13 10:39:49 +11:00