35 Commits

Author SHA1 Message Date
Simon Lopez
1c2c2b3252 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-10-01 12:04:04 +00:00
Nyall Dawson
7f4e1fde45 Fix ambiguity in QgsMapLayer::saveStyleToDatabase API
Don't require successful generation of both QML AND SLD, and return descriptive results flags
2025-06-24 22:23:40 +00: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
54d078ed7a Add missing SIP_OUT annotations
Fixes #54404 (at least, the remaining discernable portions of that ticket)
2025-04-11 05:42:02 +10:00
Nyall Dawson
3f6b490218 Sipify 2025-04-02 11:11:10 +10:00
Nyall Dawson
ac71664a83 Fix multiparagraphs in initial class docstrings 2025-03-30 20:48:07 +10:00
Julien Cabieces
d528d9ab31 refactor(LegendUrl): Make legend url part of server properties 2025-03-14 14:58:15 +10:00
Even Rouault
1907ab32fe QgsMapLayer::publicSource(): make it redact/remove GDAL credentials
Fixes #60292
2025-02-03 08:05:17 +10:00
Julien Cabieces
ed64834106 api(deprecated): add message to deprecated SIP annotation 2024-12-17 09:06:42 +01:00
Nyall Dawson
94ec0d9139 QgsMapLayer::setDataSource don't require layer name, provider
Make them optional, and default to current layer name/provider
when not specified
2024-10-03 19:46:08 +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
Mathieu Pellerin
e3fee5d3f4 Address review 2024-09-04 11:34:51 +07:00
Nyall Dawson
a5ba59d016 Fix malformed notes 2024-09-04 13:54:39 +10:00
Nyall Dawson
98d1cbe40a Fix malformed tags 2024-09-04 13:54:39 +10:00
Nyall Dawson
1a8a072aac Fix up \param formatting 2024-09-04 13:54:39 +10:00
Nyall Dawson
60e376826d Fix tag 2024-09-04 13:54:39 +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
765cbb32db Standardise some deprecated annotations 2024-09-02 11:42:12 +10:00
Nyall Dawson
3a578d6712 Header update 2024-08-13 20:28:55 +10:00
Nyall Dawson
be8dce7d0d Valid improvements from new sipify 2024-08-13 20:28:55 +10:00
Nyall Dawson
145de5fb5e
Move QgsDataProvider::ReadFlag to Qgis::DataProviderReadFlag
and promote to enum class
2024-07-18 10:01:59 +10:00
Nyall Dawson
c7e3ff09a4 Partially address API limitations, and add a bunch of QGIS 4 TODOs
We can't fix the API without a significant break here.
2024-06-10 19:54:48 +10:00
Nyall Dawson
a41f6f4333 Copy project vertical/3d crs logic to QgsMapLayer
This adds a new verticalCrs property for map layers, and a corresponding
crs3D() property. Logic is the same as that for QgsProject.
2024-04-30 06:06:10 +10:00
Nyall Dawson
9d6faf3d00 Prevent changing ID if layer is owned 2024-04-20 16:50:56 +10:00
Nyall Dawson
ed2d4f559b Add idChanged signal, property 2024-04-20 16:50:56 +10:00
Nyall Dawson
19585bf1fd Add api to set QgsMapLayer IDs
With appropriate warnings on when this should be used...
2024-04-20 16:50:56 +10:00
Nyall Dawson
3d59b88329 Move server specific layer properties to QgsMapLayerServerProperties
Eg server layer title, abstract, etc, and deprecate the related
methods at the QgsMapLayer level

This should avoid accidental creep of these specifically server-related
properties into wider use, and help disambiguate them from the
standard layer metadata properties
2024-04-10 19:03:15 +10:00
Even Rouault
a68422b982 Various typo fixes
Including 3 public methods, which are deprecated by this commit and replaced by a typo-fixed version
2024-02-29 06:03:03 +10:00
Even Rouault
15ea5c46bc
Header files: remove all mentions of '\since QGIS 3.0' 2024-02-18 20:57:23 +01:00
Even Rouault
02caeb9db7
Header files: remove all mentions of '\since QGIS 2.' 2024-02-18 20:46:01 +01:00
Even Rouault
a5c8f01003
Header files: remove all mentions of '\since QGIS 1.' 2024-02-18 20:46:00 +01:00
Nyall Dawson
0096246afe Sipify 2024-02-13 20:51:03 +10:00
Julien Cabieces
bb3c36a69b Initialize sip bindings for PyQt6
use exactly the ones from PyQt5 so we can study the difference when
generating for PyQt6
2023-12-08 03:38:42 +10:00