4459 Commits

Author SHA1 Message Date
Matthias Kuhn
ecae50f1d3 Allow processing plugins to load their own parameters 2018-03-01 08:12:41 -05:00
Nyall Dawson
0acdcfadfd Fix crash when using the identify tool on a categorized render
with an unchecked category corresponding to the feature at the
clicked point

Also fix count of default category symbols
2018-03-01 16:49:29 +11:00
Denis Rouzaud
a483ef817a correctly use reference for context in QgsReadWriteContextCategoryPopper 2018-02-28 17:02:51 -09:00
Denis Rouzaud
b8ceda673c fix doxymentation 2018-02-28 15:00:11 -04:00
Denis Rouzaud
4e2eb0eb9c use a pointer otherwise Python is creating a copy 2018-02-28 13:43:11 -04:00
Denis Rouzaud
d171ca7ae4 offer enterCategory in Python bindings by adding a context manager 2018-02-28 13:43:11 -04:00
Denis Rouzaud
8582517966 avoid required call to leaveCategory by adding a RAII private class 2018-02-28 13:43:11 -04:00
Denis Rouzaud
89892926c0 add C++17 [[maybe_unused]] and [[no_discard]] 2018-02-28 13:43:10 -04:00
Denis Rouzaud
95ab3d05e0 doxymentation and better wording 2018-02-28 13:43:10 -04:00
Denis Rouzaud
b95f5c1a15 QgsReadWriteContext: add a category stack to know where the error message comes from
also change the QPair in favor of a struct for a better API
2018-02-28 13:43:10 -04:00
Denis Rouzaud
22008a5114 doxymentation 2018-02-28 13:43:10 -04:00
Denis Rouzaud
d421b857e5 QgsReadWriteContext can store message
app will show them in message bar when loading layers
2018-02-28 13:43:10 -04:00
Denis Rouzaud
47ab9b89e7 remove const for QgsReadWriteContext to allow bringing up error messages 2018-02-28 13:43:10 -04:00
Nyall Dawson
094cef7140 Sipify and astyle 2018-02-25 08:22:14 +10:00
Nyall Dawson
43cd62b62f [processing] Tweak api for QgsProcessingFeatureBasedAlgorithm
Instead of returning a single QgsFeature from processFeature, we now
return a list of features.

This allows feature based algorithms which return multiple features
per input feature, e.g. "explode" type algorithms which split a
single input feature into multiple output features.
2018-02-21 09:16:43 +11:00
Denis Rouzaud
713bfd3452 add Q_ENUM for QgsRasterProjector::Precision 2018-02-20 02:00:57 -09:00
Nyall Dawson
3ffbd84f5f Add a bounding box intersection test to QgsGeometry
We only previously had methods for exact intersections - this
commit adds a new QgsGeometry.boundingBoxIntersects() method
which can be used to test if just the bounding boxes of
geometries/rectangles intersect.

It's fast, and doesn't care about invalid geometries (unlike
the exact intersects checks)
2018-02-20 13:20:38 +10:00
Nyall Dawson
1da2da219a Fix build 2018-02-20 11:31:33 +10:00
Nyall Dawson
3d4f6f82bb Followup 0548f4, fixes to layer metadata and metadata widget
Address outstanding review requests so that this PR can be merged
2018-02-20 11:10:55 +10:00
mj10777
0548f4267e Added QgsLayerMetadata logic to QgsDataProvider. Added setMetadata in QgsVector/RasterLayer::setDataProvider. Corrections in QgsMetadataWidget with added get/setMetadata and hasChanged functions plus checking for set mLayer pointer before use. 2018-02-20 11:06:57 +10:00
Juergen E. Fischer
f14b729e3b fix some references to PROJ.4 2018-02-19 22:12:09 +01:00
Denis Rouzaud
1a1b197ced use Qgsettins::enumSettingValue where possible 2018-02-19 05:55:09 -09:00
Denis Rouzaud
9e2e99fe42 snapToCurrentLayer correctly handles Area type 2018-02-19 02:08:36 -09:00
Denis Rouzaud
965a4e87aa revert adding tolerance to QgsSnappingUtils::snapToCurrentLayer
since it already uses digitizing settings
2018-02-19 02:08:36 -09:00
Nyall Dawson
0e3af9c6a9 [layouts] Remove use of QStyleOptionGraphicsItem from QgsLayoutItem API
Turns out the useful methods in QStyleOptionGraphicsItem were deprecated
in Qt 5.10. To future protect our API this replaces all public
use of QStyleOptionGraphicsItem, so that we're free to revise
the internals of how we use QStyleOptionGraphicsItem without breaking
the public QGIS API.
2018-02-19 19:18:24 +11:00
Nyall Dawson
d830821b13 Remove QgsInterruptionChecker and replace with QgsFeedback use
There's little need for two classes with similar goals here.
2018-02-19 10:18:00 +10:00
Blottiere Paul
323e75c029
Merge pull request #5823 from pblottiere/bugfix_curvedstrings_z
[bugfix] Fixes #17576 and #17574 Add Z support and fixes crashes
2018-02-18 10:58:09 +00:00
Denis Rouzaud
f1123501d4 make QgsTolerance a Q_GADGET
to use Q_ENUM
2018-02-17 09:33:35 -09:00
Denis Rouzaud
2f385da9c8 [offset tool] handle rings and allow selecting by area
* correctly handles rings and parts
* allow to select polygon by area (not only edge)
2018-02-17 09:33:35 -09:00
Denis Rouzaud
37f180c59e
Merge pull request #6365 from 3nids/geom_gadget
make QgsGeometry a Q_GADGET
2018-02-17 06:56:46 -09:00
Denis Rouzaud
f31ba78ccd
Merge pull request #6364 from 3nids/setting_enum_value
[settings] add method to get value for a setting associated to an enum
2018-02-17 06:28:35 -09:00
Denis Rouzaud
91e98ef5a5 run sip_include.sh 2018-02-17 11:16:47 -04:00
Nyall Dawson
1f3ee0501a [processing] Always report errors if features cannot be written
to a destination

Before we silently ignored these - now algorithms will automatically
push errors to the log if a feature cannot be written to a sink (no
changes to algorithms or special handling required)
2018-02-17 19:10:46 +11:00
Denis Rouzaud
1198dbad24 [settings] add method to get value for a setting associated to an enum
this will make sure the returned value is actually an existing entry of the enum
2018-02-16 21:37:05 -04:00
Blottiere Paul
a6a3e0b1d4 Fix spelling check and sip binding 2018-02-16 10:06:42 +00:00
Blottiere Paul
35d0f57807 Update documentation 2018-02-16 10:06:42 +00:00
Blottiere Paul
76a57b8345 The first point in 3D is used to propagate Z dimension 2018-02-16 10:06:42 +00:00
Alessandro Pasotti
0310c1d253
Merge pull request #6354 from elpaso/NathanW2-settings_17670
Nathan w2 settings 17670
2018-02-16 09:57:58 +01:00
Nyall Dawson
14787ffb32 [processing] Add easy method to retrieve layers from context
Allows python algorithms to call

layer = context.getMapLayer(other_alg_results['OUTPUT'] )
2018-02-16 19:49:30 +11:00
Nyall Dawson
a6a36acc14
Merge pull request #6316 from nyalldawson/locator_thread
Make QgsLocator more thread safe
2018-02-16 12:36:09 +11:00
Alessandro Pasotti
79a924ef5c Spelling and docs 2018-02-15 09:25:26 +01:00
Mathieu Pellerin
543e4f0dd1
[attribute table] fix long UI freeze when resizing columns for large filtered datasets (#6341) 2018-02-14 21:25:43 +07:00
Nyall Dawson
a1a45536a2
Merge pull request #6221 from nyalldawson/var_leak
Fix massive memory leak in PyQGIS, pt 1
2018-02-13 13:18:42 +11:00
Nyall Dawson
0c6f22386b Drop some legacy sip conversion code 2018-02-13 12:02:50 +11:00
Denis Rouzaud
2a7aeafb75 doxygen, init in header 2018-02-12 11:29:41 -04:00
Denis Rouzaud
338a73b32e [sip] remove unused QPair conversion 2018-02-12 09:22:53 -04:00
Denis Rouzaud
31e93aecae [dxf] use a struct instead of QPair for layers
there was a crash in Python in QgsDxfExport.addLayers due to a bad conversion
2018-02-12 09:22:21 -04:00
Nyall Dawson
44df58e54d Simplify code 2018-02-12 20:28:32 +10:00
Nyall Dawson
7609ab7c9d Allow certain locator filters to operate on the main thread
Some filters are fast enough to return results that it's overkill
to run them in a background thread - add a flag to these filters
to allow them to run (blocking) in the main thread instead.
2018-02-12 20:28:32 +10:00
Nyall Dawson
fabda53671 Add missing docs 2018-02-12 20:28:32 +10:00