224 Commits

Author SHA1 Message Date
Simon Lopez
be9608f776 Add QgsMapLayer::profileSource
This commit adds a virtual method to QgsMapLayer to enable the creation of custom
elevation profiles for any type of layer.
The methods returns a pointer to a helper class of type
QgsAbstractProfileSource which is a factory for profile generators
(cf. documentation for QgsAbstractProfileSource).
Existing layers that derive from QgsAbstractProfileSource just override
this method returning a *this* pointer.
As the method is *sipified* it can be used in python to declare custom
profile source for classes derived from PluginLayer (ownership of the
QgsAbstractProfileSource must then be managed on the python side).
2025-06-24 23:24:00 +02:00
uclaros
a8a98e9ee8 Refactor topological point addition into a static method 2025-06-18 14:38:15 +03:00
Nyall Dawson
f1b8682e36 Improve API for exporting to SLD
Deprecate old methods and make methods always take QgsSldExportContext.
Add capacity to QgsSldExportContext to collect export errors and
warnings.

The old API had no way to reliably report errors/warnings during
export to users.
2025-05-04 17:55:25 +10:00
Nyall Dawson
4a6fef278e Cleanup docs, don't mention QString in python docs 2025-04-19 18:17:34 +10:00
Nyall Dawson
161ef62ca0 Fix inconsistent heading warnings when building PyQGIS docs
Fixes missing subclass/base class sections in some class docs (
eg QgsVectorLayer)
2025-04-19 18:17:34 +10:00
Even Rouault
46da0ab329
[WFS Provider] Add a UI and URI parameter featureMode=default/SimpleFeatures/ComplexFeatures
Fixes #61476 / #61493

The analysis of DescribeFeatureType response with the GMLAS driver makes
appear fields that are not supported by the
addFeatures()/changeAttributeValues() method. So if transaction support
is detected and featureMode=default, use QGIS built-in analyser to get
SimpleFeatures only. Otherwise try the GMLAS method.
2025-04-16 20:53:43 +02:00
Nyall Dawson
bdb5904283 Fix more malformed docstrings, enforce correct format in sipify 2025-04-09 14:04:24 +10:00
Nyall Dawson
fc76784e09 Misc documentation fixes causing errors in PyQGIS doc builder 2025-04-09 14:04:24 +10:00
Alexander Bruy
34aedd067d
Merge pull request #60710 from GispoCoding/59494_merge_policies
Add merge policies
2025-04-02 09:22:52 +01:00
Nyall Dawson
3f6b490218 Sipify 2025-04-02 11:11:10 +10:00
Nyall Dawson
4a10066b69 Fix grammar errors in class docstrings 2025-04-01 09:44:00 +10:00
Nyall Dawson
afd2e4f42d Fix doxygen class briefs which aren't full sentences 2025-04-01 09:44:00 +10:00
Nyall Dawson
6d122f0038 Sipify 2025-03-30 20:48:07 +10:00
Nyall Dawson
ac71664a83 Fix multiparagraphs in initial class docstrings 2025-03-30 20:48:07 +10:00
Nyall Dawson
29050007d7 Fix class documentation which starts with "this is..."/"a class..." etc 2025-03-30 20:48:07 +10:00
Nyall Dawson
602ef6c691 Don't start class briefs with "This class contains settings..."
It's unncessarily verbose, use just "Contains settings..." instead.
2025-03-30 20:48:07 +10:00
Nyall Dawson
f480c2a04e Add all missing class brief descriptions 2025-03-28 14:23:56 +10:00
Nyall Dawson
8fdd39fca9 Add support for setting output fields for QgsVectorLayerExporter
Allows remapping fields from the source fields, including specifying
the exact output field type, and source expression
2025-03-12 10:25:48 +10:00
Nyall Dawson
3a4357dcde
Fix typo 2025-03-11 08:28:41 +10:00
Nyall Dawson
eaafdc07ba
Fix build, docs 2025-03-10 18:11:55 +10:00
Nyall Dawson
f22baa38f1
Add expression based filter for QgsVectorLayerExporter 2025-03-10 14:41:21 +10:00
Nyall Dawson
32373e1999
Add extent filter for QgsVectorLayerExporter 2025-03-10 14:41:21 +10:00
Nyall Dawson
e17d9f722b
Add more flexible API variant for QgsVectorLayerExport.exportLayer 2025-03-10 14:41:20 +10:00
Alexander Bruy
ce1b0c70ca address review comments and add test 2025-03-03 11:48:15 +10:00
Alexander Bruy
bb60704ed0 fetch feature with geometry when executing map layer action on feature
(fix #48964)
2025-03-03 11:48:15 +10:00
Nyall Dawson
632d196e62 Don't show useless "available in python as" notes in PyQGIS docs
Since the method name used in the docs is ALREADY the python version!
2025-02-28 18:32:09 +10:00
Juho Ervasti
d03746bd9f Add merge policy as a member in QgsField 2025-02-12 17:02:12 +02:00
Mathieu Pellerin
1c85f6a17f Alternative fix that is compatible with offline editing 2025-01-28 13:58:20 +10:00
Julien Cabieces
d2aaa9c6e0
Merge pull request #60130 from Joonalai/fix-topological-slowness
Fix topological slowness with spatial filtering
2025-01-16 17:23:09 +01:00
Joonalai
5cc1d16ca4 Grow search rect based on layer precision 2025-01-16 12:06:19 +02:00
Jean Felder
2db1f20af3 qgsvectorlayerelevationproperties: Add support for custom tolerance
This allows to define a custom tolerance. If this tolerance is
enabled, then this tolerance is used instead of the one defined in the
elevation profile widget.

This custom tolerance is enabled and set to 0 by default for Lines and
Polygons. Indeed, most of the time, only want to use the tolerance for
points.
2025-01-13 14:44:19 +01:00
Andrea Giudiceandrea
38ec9efe5e
[WFS] Fix filtering by QGIS expression in order to support "@geometry" (Fix #60094) (#60105)
Fix #60094
2025-01-11 17:23:28 +01:00
Even Rouault
87b8299686 qgsvectorlayer.h: move a documentation section to the appropriate place
Cf https://lists.osgeo.org/pipermail/qgis-developer/2025-January/067278.html
2025-01-09 15:20:24 +01:00
David Koňařík
4d86676c35 Fix SIP build errors by using /NoTypeName/
The typedef is only present in the .sip file, but without this
annotation SIP assumes it also exists in QGIS headers. This didn't
completely break the build, since we concatenate multiple SIP headers
into larger files, so the typedefs from one part "fixed" another. Run
sip-build without --concatenate to see the issue clearly.

This fix is currently sadly not fully effective due to a SIP bug:
https://github.com/Python-SIP/sip/issues/66
2025-01-06 21:31:40 +01:00
Julien Cabieces
ed64834106 api(deprecated): add message to deprecated SIP annotation 2024-12-17 09:06:42 +01:00
Nyall Dawson
9f4bb37824 [api] Add QgsVectorDataProvider::geometryColumnName
Allows easy retrieval of the geometry column name from the data
provider, if applicable.

(This was NOT possible to retrieve in a consistent, provider
independant way before)
2024-12-17 05:11:25 +10:00
Damiano Lombardi
3d4d5a2d02 sipyfy 2024-12-16 10:26:01 +10:00
Nyall Dawson
e8cbab7034 Add missing transfer annotations 2024-12-13 05:24:22 +10:00
Nyall Dawson
37478db0c1 Fix more function links 2024-12-03 12:57:44 +10:00
Ivan Barsukov
d0dedde547 Fixed typo in allowCommitChanged 2024-09-14 06:01:01 +10:00
Nyall Dawson
391b61544e
Handle SIP_OUT with void functions 2024-09-10 11:46:47 +10:00
Nyall Dawson
b39f760cbc
Correctly handle multiline SIP_OUT param documentation 2024-09-10 11:11:25 +10:00
Nyall Dawson
cfd251e7f7 Capture signal arguments 2024-09-08 16:06:22 +10:00
Nyall Dawson
cbb741fb35 Use correct subheader underline 2024-09-04 13:54:39 +10:00
Nyall Dawson
2e60236344 Fix list in return value 2024-09-04 13:54:39 +10:00
Nyall Dawson
94f6e9c71b Correctly handle \param[in,out] in sipify 2024-09-04 13:54:39 +10:00
Nyall Dawson
39dd7abeb9 Mark globs as code literals 2024-09-04 13:54:39 +10:00
Nyall Dawson
534ca73c59 Fix missing see also trailing notes in PyQGIS documentation 2024-09-04 06:32:03 +10:00
Nyall Dawson
ef0289f3ec Fix formatting of Python ..deprecated annotations in docstrings
Fixes https://github.com/qgis/pyqgis-api-docs-builder/issues/174
2024-09-02 11:42:12 +10:00
Nyall Dawson
a5a3bf9ee8 Fix some more causes of warnings when building PyQGIS docs 2024-08-30 12:19:29 +10:00