12399 Commits

Author SHA1 Message Date
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
5cf2656ace Split metadata into two classes
A new base class QgsMetadataBase has been split off QgsLayerMetadata,
containing all non-layer specific metadata items.

This allows us to reuse the common metadata settings for other
non-layer items, e.g. projects.
2018-03-22 16:13:30 +11:00
Nyall Dawson
49d585ef17 [processing][gdal] Move method to write input files to text file to GdalUtils 2018-03-22 06:46:39 +11:00
Nyall Dawson
b17feaaa97 [processing][gdal] Expose no data options for gdal merge algorithm 2018-03-22 06:46:39 +11:00
Nyall Dawson
1d8ecaf79a [processing][gdal] Use a text file for input file list to gdal_merge
Otherwise command fails when attempting to merge many rasters due
to length of command line. Now the algorithm uses the same approach
as buildvrt and creates a text file containing the names of the
rasters and then passes this to the gdal_merge command

Fixes gdal merge algorithm fails with many input files
2018-03-22 06:46:39 +11:00
Alessandro Pasotti
017b9343ce
Merge pull request #6646 from elpaso/qgsmslayercache-removal
[server][housekeeping] Removed unused class QgsMSLayerCache
2018-03-21 09:11:08 +01:00
Nyall Dawson
00bb177f3d [processing][gdal] Fix parsing of creation options
Creation options must be specified one at a time - the
current approach causes them to be specified once embedded
in quotation marks, which is not valid input for gdal
2018-03-21 18:36:28 +11:00
Alexander Bruy
51ce2fb79e
Merge pull request #6656 from nyalldawson/gdal_dlg
[processing][gdal] Skip expensive parameter validation when just showing command in dialog
2018-03-21 08:34:31 +02:00
Nyall Dawson
2be1256097 Followup e90ac56b
Fix warnings, missing Q_OBJECT macro
2018-03-21 15:43:45 +10:00
Nyall Dawson
044470d38f [processing][gdal] Skip expensive parameter validation when just showing command in dialog 2018-03-21 15:30:18 +10:00
Nyall Dawson
e0255b305d [processing] Fix intersect always selected in Join by Location in modeler
Fixes #18489
2018-03-21 09:19:34 +11:00
Nyall Dawson
5436ce9a35 [processing] Avoid grass 'duplicate parameter' warning 2018-03-21 09:14:23 +11:00
Salvatore Larosa
330c2f70ce
Merge pull request #6627 from slarosa/cp_layer1
[FEATURE][needs-docs] Copy&Paste Group/Layers from a QGIS project to another
2018-03-20 16:06:21 +01:00
Alessandro Pasotti
2cd4a46478 [server][housekeeping] Removed unused class QgsMSLayerCache
Not used in the server anymore (layer instances are keps
in memory in the project)
2018-03-20 15:13:06 +01:00
Sandro Mani
e90ac56b46 Add a minimal data provider for plugin layers
Throughout the codebase, there is a general assumption that layer->dataProvider() is not null. This wasn't the case for plugin layers.
2018-03-20 13:39:56 +01:00
Salvatore Larosa
9a25d6764e
Merge pull request #6592 from slarosa/save_load_xyz
[FEATURE][needs-docs] Save/Load connections for XYZ Tiles
2018-03-20 09:31:24 +01:00
Nyall Dawson
ff6ea33686 [processing] Fix broken Aggregate algorithm
Fixes #18349
2018-03-20 08:06:38 +11:00
Alexander Bruy
092557b16a [processing] correctly handle inactive providers in the modeler (fix #18461) 2018-03-19 11:55:10 +02:00
Nyall Dawson
732c5260cc [processing] Fix Concave Hull algorithm, add tests
Fixes #18475
2018-03-19 12:00:30 +11:00
Nyall Dawson
26bdd920f4 [processing] Fix newlines are stripped from Python traces in log 2018-03-19 12:00:30 +11:00
Salvatore Larosa
f6f7027c7f fix failure to travis code_layout 2018-03-18 21:49:59 +01:00
Nyall Dawson
7a28181e7f Skip some attributes in import photos test
These absolute paths cannot be tested in processing algorithm tests
2018-03-16 15:08:29 +11: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
87e8432644 [processing] Fix Points to Paths terminates when an order by
field is empty
2018-03-16 14:30:30 +11:00
Shiva Reddy
536cc9cfbe Update writeOut to include isatty (#6602)
Added these lines so that QGIS 3 python console works in window
2018-03-16 08:20:14 +11:00
Nyall Dawson
7c0665a331 Clearer ownership, docs for rule based renderer 2018-03-16 08:18:36 +11: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
Nyall Dawson
d907ba05fc [processing] Expand 'algorithm' group in history on load
Since all the useful stuff is in that group, you ALWAYS need
to expand it anyway!
2018-03-15 16:57:31 +10:00
Nyall Dawson
dc27d12046 Fix documentation test 2018-03-15 17:55:25 +11: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
654a4a4af6 [processing] Fix algorithm progress bar resets to 0 when an algorithm
reports a non-fatal error

Fixes the "flashy" progress bar when an algorithm encounters a lot
of errors.
2018-03-15 13:43:01 +11:00
Denis Rouzaud
4c1e19c080 fix constraints not checked when they should be (#6550) 2018-03-14 07:49:37 -04:00
Salvatore Larosa
281a3ed3aa fix capitalisation: followup 504e50df5e 2018-03-13 12:38:17 +01:00
Alexander Bruy
88e8acddf8
Merge pull request #6571 from slarosa/fix_18183
[processing] SAGA "output extent" should not be mandatory (fix #18183)
2018-03-13 08:45:45 +02:00
Nyall Dawson
ce59cbd6f7 Sipify 2018-03-13 10:39:49 +11:00
Nyall Dawson
14c8b3c75d [neeeds-docs] Show all color schemes and tools for interacting with the in the
options->color tab

This brings all of QGIS' color scheme handling to a more logical and
user-discoverable place. Previously this functionality was only
available inside the color dialog itself (i.e. users would have to start
changing a color before they could create and edit schemes)
2018-03-13 10:39:49 +11: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
Nyall Dawson
40ceb7bdce Don't mark project dirty when legend nodes are expanded/collapsed 2018-03-13 10:10:23 +11:00
Salvatore Larosa
504e50df5e [FEATURE][needs-docs] Save/Load connections for Tiles XYZ 2018-03-12 18:56:56 +01:00
Nyall Dawson
251e1d5352 [FEATURE][processing] Add line sinuosity to "Export Geometry Info"
Adds line sinuosity and straight distance to the stats calculated
by "Export Geometry Info"

Fixes #12376
2018-03-12 14:58:04 +11:00
Nyall Dawson
6c179059a5 Add straightDistance2d and sinuosity measures to QgsCurve 2018-03-12 14:58:04 +11:00
Nyall Dawson
f06b3691c5 More spelling fixes 2018-03-12 14:32:17 +11:00
luz.paz
b82ec177c9 Misc. source comment typos
+ added 2 strings in to spelling.dat file
2018-03-12 14:32:17 +11:00
Nyall Dawson
d04b3d9eaf Update spell check list, spelling 2018-03-12 14:32:17 +11:00
Nyall Dawson
273e664563 Fix some leaks in conversions 2018-03-12 14:30:53 +11:00
Ari Jolma
08332e73a2 [processing][gdal] color relief alg: add the default color option, i.e., no switches 2018-03-12 10:43:47 +11:00