4076 Commits

Author SHA1 Message Date
Nyall Dawson
3341a3e91e Unify behavior of various geometry API leftOf tests
Now instead of mixing bools/numeric returns, we always use
ints, where:
-1 = left
0 = test failed, e.g. point on line
1 = right

Also fix a bunch of extra issues identified with left of tests
as a result of these changes
2017-11-29 10:04:20 +10:00
Radim Blazek
2f43deb9da closestSegmentWithContext() doc and test fix 2017-11-29 09:14:11 +10:00
Radim Blazek
07fd713647 fixed closestSegmentWithContext() paramas in Python 2017-11-29 09:14:07 +10:00
Nyall Dawson
e34d7fb636 Fix left of test for linestrings
The test was returning invalid results for certain geometries
2017-11-29 06:45:33 +11:00
Nyall Dawson
7a09f0890e
Merge pull request #5727 from nyalldawson/sublayer
Fix ogr sublayer handling of names containing ":"
2017-11-28 14:47:34 +11:00
Nyall Dawson
4b9986eb8c [processing] Add a generic map layer output type
For occasions when an algorithm creates a map layer, but the type
is not known in advance (i.e. could be raster OR vector)
2017-11-27 06:38:21 +11:00
Nyall Dawson
144e9a2e45 Fix handling of ogr sublayers with ':' in their name
Unlikely to happen, but it does occur with some layers coming
from processing models. In any case we want QGIS to be super-tolerant
of corner cases like this!
2017-11-26 12:23:32 +10:00
Alessandro Pasotti
72553a60a9
Merge pull request #5710 from elpaso/api-code-cleaning-int-2-enums
QgsVectorLayer code cleaning use enums instead of int
2017-11-24 16:16:26 +01:00
Matthias Kuhn
916c9c4cdb Open heart surgery on expression context for processing sources 2017-11-24 16:09:05 +01:00
Matthias Kuhn
abe1a9b661 Expression context creation for processing improvements
Hiding away the implementation directly in QgsProcessingFeatureSource

See discussion ec97102bc6 (r152903378)
2017-11-24 16:09:05 +01:00
Nyall Dawson
14531964a8
Merge pull request #5719 from nyalldawson/translate_z
geometries: translate Z/M
2017-11-24 22:12:11 +11:00
Alessandro Pasotti
7a63a07f7f Add return cases to the docs and fully qualified enums 2017-11-24 11:53:49 +01:00
Nyall Dawson
dd223d9b08 Allow transform methods in QgsAbstractGeometry/QgsGeometry to also
transform z/m values via scale/translate arguments
2017-11-24 15:34:35 +10:00
Nyall Dawson
03ec2d8a98
Merge pull request #5702 from nyalldawson/dxf_improve
[dxf] Add option to export labels as text elements, instead of mtext
2017-11-24 15:58:46 +11:00
Matthias Kuhn
851adb0a3d Allow adding sources to processing expression context 2017-11-23 15:24:40 +01:00
Alessandro Pasotti
def85fa202 QgsVectorLayer code cleaning use enums instead of int
It was one of the TODOs for QGIS 3
2017-11-23 12:09:30 +01:00
Nyall Dawson
1535ff84ff [dxf][feature] Add option to export labels as text elements, instead of mtext
Sponsored by SMEC
2017-11-23 12:59:43 +10:00
Nyall Dawson
0a18b1fdd0 Update sip 2017-11-23 11:46:52 +10:00
Nyall Dawson
e6d86bba53 [processing] Generalise modeler multi-step feedback proxy for use
outside of modeler

This can be useful too for individual algorithms
2017-11-23 10:01:13 +10:00
Matthias Kuhn
7d92641700
Add QString operator to QgsExpression 2017-11-22 11:13:19 +01:00
Etienne Trimaille
373471214f rename metadata() to htmlMetadata() in QgsRasterDataProvider 2017-11-21 11:38:50 +01:00
Matthias Kuhn
bdc47a48d9 Add missing doxymentation 2017-11-20 20:31:39 +01:00
Matthias Kuhn
f084fc0ac0 API documentation all over 2017-11-20 20:31:38 +01:00
Matthias Kuhn
fdd00870ee [FEATURE] Search widget for relations using aggregates
For each child relations, the subform is visible.

Each attribute of the children has a tool button option to define to which
aggregate the specified value should be compared. This allows for searching
things like

 * Each city where the highest building is more than 300 m
 * Each sensor where the median value is lower than 50 ppm
 * Each feature with a child with a missing value
 * ...
2017-11-20 20:31:38 +01:00
Nyall Dawson
af5b2a750a Add some debugging asserts to ensure that layer renderers
are used in a thread safe way
2017-11-20 09:42:03 +11:00
Nyall Dawson
a0c6e05261 Spelling 2017-11-20 09:42:03 +11:00
Nyall Dawson
d13eaa6a3b Improve documentation 2017-11-20 09:42:03 +11:00
Alessandro Pasotti
6f0659742b [auth] Morph the mutex from a pointer to a member var 2017-11-16 16:01:37 +01:00
Alessandro Pasotti
674467b95e [auth] Thread safe auth methods with recursive mutex
Add a mutex to the base class and use that
mutex to protect all public methods of the
authentication methods.
2017-11-16 16:01:37 +01:00
Blottiere Paul
51d156d349 Update doc 2017-11-16 08:01:07 +00:00
Blottiere Paul
bd30e12cf9
Merge pull request #5597 from pblottiere/bugfix-clickxy
[bugfix]  Fixes #16852 by adding click_x and click_y variables to resolve actions
2017-11-15 16:18:36 +00:00
Nyall Dawson
3734a0d677 Fix tests 2017-11-15 20:51:05 +10:00
Nyall Dawson
75885d70d5 Rename various WKT/WKB/GeoJSON/GML methods for consistency
and consistent capitalisation
2017-11-15 20:51:05 +10:00
Nyall Dawson
95765a191a Remove coordinate formatting methods from QgsPointXY
Use QgsCoordinateFormatter instead
2017-11-15 20:49:45 +10:00
Nyall Dawson
0d7b828bda Update code, formatting 2017-11-15 20:49:45 +10:00
Nyall Dawson
8fd8b6ebf1 Update sip bindings 2017-11-15 20:49:45 +10:00
Nyall Dawson
916c56b937 Initial implementation of QgsCoordinateFormatter 2017-11-15 20:49:45 +10:00
Matthias Kuhn
4df65aca37 Use std::unique_ptr with custom deleter for spatialite and sqlite 2017-11-15 08:51:17 +01:00
Nyall Dawson
de7b33a373 [needs-docs] Remove option to show raster preview icons in layer tree
This option is not safe - see #16803, and generally undesirable
due to how slow generating the preview icons are
2017-11-15 10:14:47 +11:00
Nyall Dawson
6f55e50a13 Remove QgsMapLayer::originalName()
Now QgsMapLayer::name() is guaranteed to return the same string
2017-11-14 21:53:31 +11:00
Nyall Dawson
1e4f6917de Cleanup fragile 'capitalize layer names' option
This option was being applied in the wrong place - within the
map layer classes themselves. This meant that depending on the
user's setting for this option, a plugin calling QgsMapLayer::setName
would not be guaranteed the same behaviour across installs.
(and the same with setDataSource)

Similarly, the option was re-applied on project load, so
moving projects between installs with different values for
this setting would affect the project layer names, breaking
expressions which relied on these...

Instead, move the formatting and capitalization of layer
names to the QgisApp add*Layer methods instead, so this option
only applies on adding new layers to a project.
2017-11-14 21:53:31 +11:00
Nyall Dawson
fc6c69bedf Fix calculation of distance to vertex for multi part, multi ring
and curved geometries
2017-11-14 21:52:28 +11:00
Nyall Dawson
5d476e51df Use QVector where possible in geometry classes 2017-11-14 21:52:09 +11:00
Nyall Dawson
3ba2254503 Fix broken sip casting of nested QVectors
Old code was always forcing casting to QgsPointXY, regardless
of actual type
2017-11-14 21:08:21 +11:00
Alessandro Pasotti
fe4f1500d9
Merge pull request #5563 from boundlessgeo/BD-2469-pem-key-encoding
[auth][bugfix] Import pvt keys with unknown file extension
2017-11-13 17:40:54 +01:00
Nyall Dawson
e0b2c27c07 Fix return type for QgsCoordinateReferenceSystem::saveAsUserCrs 2017-11-13 14:33:38 +10:00
Nyall Dawson
450887eabd Fix documentation test 2017-11-11 15:34:46 +10:00
Nyall Dawson
2e6d125a6f Use =default, =delete where possible 2017-11-11 15:22:19 +10:00
Nyall Dawson
c97fa5bdd0 Cleanup some constructors 2017-11-11 11:29:45 +10:00
Nyall Dawson
871f71305d Use clang-tidy modernize-use-default-member-init to modernize initializers 2017-11-11 10:54:44 +10:00