35533 Commits

Author SHA1 Message Date
Nyall Dawson
6f3b0caa81 Add method to QgsAttributes to convert to QgsAttributeMap 2016-11-08 11:25:48 +10:00
Nyall Dawson
f9bb230665 Avoid some QgsGeometry pointer use in QgsGeometry API 2016-11-08 11:09:19 +10:00
Nyall Dawson
3550cc99a6 [processing] Allow algorithms to specify tags
Tags are used while searching in the toolbox. This should help with
finding algorithms when the exact name is not known, eg
you could search for "envelope" or "bounds" and find the
'Polygon from Layer Extent' algorithm.

At the moment it's quite hard to discover algorithms which exist
when you don't know what their called and have to instead search
for every possible naming variant which could exist...
2016-11-08 10:15:31 +10:00
Nyall Dawson
1a4f8f59f1 [processing] When searching in toolbox, ignore order of words
Eg, allows you to search "line merge" and find the "Merge lines"
algorithm. Should make it easier for users who don't know the
exact name to find algorithms.
2016-11-08 09:30:52 +10:00
Nyall Dawson
35a29d85c0 Add missing API break documentation 2016-11-08 09:08:09 +10:00
Nyall Dawson
02ea2d7703 Fix typos 2016-11-08 09:05:47 +10:00
Nyall Dawson
32b1603c81 Update indentation 2016-11-08 08:57:51 +10:00
Nyall Dawson
cef4719c78 Add another file to .gitignore 2016-11-08 08:53:19 +10:00
Nyall Dawson
3b30701780 Prepare commit ensures empty line before doxygen block 2016-11-08 08:52:39 +10:00
Nyall Dawson
fd15090521 Update identation 2016-11-08 08:51:22 +10:00
Nyall Dawson
f8bda8dbfc Avoid crash in testqgsexpression.cpp 2016-11-08 08:42:27 +10:00
Nyall Dawson
ec55161866 Avoid lazy evaluation for substr expression function
Better solution is to set handlesNull to true to avoid the default
null parameter = null result behaviour, and handle null values
in params 1 and 2 manually
2016-11-08 08:42:22 +10:00
nirvn
0fbcc4b95d [FEATURE] upgrade the substr() function
- support negative start value (e.g. substr('hello',-2) returns 'lo')
- support negative length value (e.g. substr('hello',3,-1) returns 'll')
- length parameter now optional, defaults to end of string
  (e.g. substr('hello world',7) returns 'world')
2016-11-08 08:42:17 +10:00
Nyall Dawson
11405af067 Fix range widget wrapper not correctly respecting default allow
null setting
2016-11-08 08:18:16 +10:00
Nyall Dawson
94413c38fd Show literal defaults in add feature form 2016-11-08 08:18:16 +10:00
Nyall Dawson
b0bd61f308 [FEATURE] Detect default literal values from OGR layers
Requires GDAL >= 2
2016-11-08 08:18:16 +10:00
Nyall Dawson
0ae610c5e3 [FEATURE] Detect literal default values for spatialite provider 2016-11-08 08:18:16 +10:00
Nyall Dawson
1fea20de50 Split handling of literal default values from provider side
default value SQL clauses

QgsVectorDataProvider now has two methods:

- defaultValueClause: returns SQL fragment which must be evaluated
by the provider to obtain the default value, eg sequence values
- defaultValue: returns the literal constant default value
for a field
2016-11-08 08:18:16 +10:00
Stéphane Brunner
59b10d65b7 Merge pull request #3720 from sbrunner/WFS-provider-metadata
Add metadata for WFS provider in layer metadata informations
2016-11-07 17:15:03 +01:00
Stéphane Brunner
bc1ad2ce82 Add metadata for WFS provider in layer metadata informations 2016-11-07 16:46:39 +01:00
Patrick Valsecchi
8e7ae8f04d Avoid having duplicated relations in the discovery 2016-11-07 12:48:26 +01:00
Juergen E. Fischer
0ca9eb0d2c debian packaging: drop trusty support 2016-11-07 12:15:23 +01:00
Patrick Valsecchi
91e4b24a39 Better reading/writting of editor widget config.
Avoid saving config parameters that are not set and support not
having them in the XML.
2016-11-07 09:00:17 +01:00
Nyall Dawson
6d8990b75d Fix coverity uninitialized variable warnings 2016-11-07 16:15:39 +10:00
Nyall Dawson
3c530a62e5 Merge pull request #3723 from nirvn/regexp_matches
[FEATURE] add regexp_matches() function
2016-11-07 14:34:27 +10:00
nirvn
1d245b2ef6 [FEATURE] add regexp_matches() function
The new function returns an array of strings captured by capturing
groups in a supplied regular expression. For e.g., the following
expression: regexp_matches('qgis=>rocks','(.*)=>(.*)')
will return the following array: 'qgis', 'rocks'.
2016-11-07 10:47:19 +07:00
Nyall Dawson
4e4bb2bf6b Merge pull request #3728 from nyalldawson/open
Cleanup processing file handling
2016-11-07 13:20:13 +10:00
Nyall Dawson
9b667d1e8a [FEATURE] Remove c++ geometry snapper plugin
All functionality is now available through analysis lib + processing
algorithm.

Marked as feature for documentation + changelog flagging
2016-11-07 12:20:59 +10:00
Nyall Dawson
8acc286b0f [FEATURE] Snap to layer algorithm accepts a mode parameter
With a new option to prefer to snap to closest point on geometry.
The old behaviour was to prefer to snap to nodes, even if a node
was further from the input geometry than a segment. The new option
allows you to snap geometries to the closest point, regardless
of whether it's a node or segment.
2016-11-07 12:20:59 +10:00
Nyall Dawson
983fe24806 Port some API from QgsPoint to QgsPointV2 2016-11-07 12:20:59 +10:00
Nyall Dawson
dae0a01761 [FEATURE][processing] Snap geometries algorithm allows snapping
to other layer types, supports point/line layers

Fix #14791, #15313
2016-11-07 12:20:59 +10:00
Nyall Dawson
c3a978b9da [FEATURE][processing] Snap geometries to layer algorithm
Port the Geometry Snapper plugin across to the analysis lib, and
expose to python bindings

Add a new algorithm which performs the snapping to layers
2016-11-07 12:20:59 +10:00
Nyall Dawson
0484769b7d [processing] Use subprocess.DEVNULL instead of open(os.devnull) 2016-11-07 12:13:18 +10:00
Nyall Dawson
6a99017bf0 [processing] Use with ... when opening files 2016-11-07 11:36:38 +10:00
Nyall Dawson
b4bca5bb98 [processing] Don't try to force load files which don't exist 2016-11-07 11:11:31 +10:00
Nyall Dawson
272cd38018 Fix python deprecation warning 2016-11-07 11:11:30 +10:00
Nyall Dawson
54522fd590 Fix crash when trying to render polygon with no exterior ring
Should only occur with very badly corrupted layers, but we
shouldn't crash in this case
2016-11-07 11:11:30 +10:00
Nyall Dawson
d783c732a5 Fix processing tests 2016-11-07 11:11:30 +10:00
Nyall Dawson
143c18da6f Fix processing tests weren't actually comparing resultant features
.... oops (my fault - copy/paste error)
2016-11-07 09:23:35 +10:00
Nyall Dawson
eefa7115bf [processing] Fix invalid geometries made by densify when input geom is null 2016-11-07 09:22:50 +10:00
arnaud.morvan@camptocamp.com
78236c0be1 Use contextGenerator in refactor fields algorithm 2016-11-06 18:11:15 +01:00
arnaud.morvan@camptocamp.com
a8d9dea1fb Add QgsExpressionContextGenerator inheritances in sip 2016-11-06 17:58:54 +01:00
arnaud.morvan@camptocamp.com
a6a09d9ae2 [processing] Fix Ogr2OgrToPostGisList with 8798c42339 and 3472ac80d8bd 2016-11-06 15:25:11 +01:00
arnaud.morvan@camptocamp.com
01941176c5 [processing] Log gdal calls 2016-11-06 15:21:39 +01:00
arnaud.morvan@camptocamp.com
9cd39e79dd [db_manager] Fix connection to postgis 2016-11-06 13:29:59 +01:00
arnaud.morvan@camptocamp.com
8b8bc26ee0 [processing] Fix connection to postgis 2016-11-06 13:29:59 +01:00
arnaud.morvan@camptocamp.com
4a62699472 [processing] Fix TableWidgetWrapper in batch dialog 2016-11-06 13:05:32 +01:00
arnaud.morvan@camptocamp.com
2d2fe8b8cc [processing] Fix BatchOutputSelectionPanel with QgsMapLayer instances 2016-11-06 13:04:32 +01:00
arnaud.morvan@camptocamp.com
93be141af5 [processing] Fix import error in FieldsMappingPanel 2016-11-06 13:03:06 +01:00
Juergen E. Fischer
e426dbc86b fix customwidgets includes path 2016-11-05 12:47:27 +01:00