813 Commits

Author SHA1 Message Date
Germán Carrillo
5b35dbaa63 [tests] Subdiagram position in vertically stacked diagrams (iterating subdiagrams backwards) 2024-09-17 23:55:38 -05:00
Germán Carrillo
2d7b81c3c9 Adjust documentation links 2024-09-17 23:55:37 -05:00
Germán Carrillo
4432797778 Const method; improve new QgsStackedDiagram's docs 2024-09-17 23:55:37 -05:00
Germán Carrillo
3a264b4e4b Replace outdated unused in docs; remove outdated unused in code 2024-09-17 23:55:37 -05:00
Germán Carrillo
75483703cf Introduce QgsStackedDiagram to create compound diagrams like population pyramids. Use Stacked as internal name for stacked diagrams and StackedBar for stacked bar diagrams. Add subDiagram parameter to QgsDiagramRenderer::diagramSize() and QgsDiagramRenderer::diagramSettings() (single and interpolated) to get subdiagrams info. 2024-09-17 23:55:33 -05:00
qgis-bot
aa855199ad auto sipify 🍺 2024-09-17 04:03:42 +00:00
Nyall Dawson
3e63b9a4fd Use plural for consistency 2024-09-17 14:00:35 +10:00
Nyall Dawson
0777e7683f Complete EPSG distance unit mapping by adding historic distance units
Ensures we don't perform a lossy conversion of units from the EPSG
CRS database to QGIS units
2024-09-17 14:00:35 +10:00
qgis-bot
01292c394d auto sipify 🍺 2024-09-16 21:45:08 +00:00
qgis-bot
e9798f0796 auto sipify 🍺 2024-09-16 18:05:27 +00:00
qgis-bot
09ec5e2c7d auto sipify 🍺 2024-09-16 07:29:34 +00:00
Nyall Dawson
a492cb22fb [feature] Support horizontal alignment in HTML labels
For multi-line labels, this allows use of either:

- HTML <p align="xxx"> attributes
- CSS "text-align: xxx"
- HTML <center>some text</center> tags

Supported alignments are left, right, center and justify

Horizontal alignment can be used in all contexts where
HTML text is rendered, EXCEPT for curved labels (since they
are restricted to single-line text)

Sponsored by City of Freiburg im Breisgau
2024-09-16 17:26:24 +10:00
qgis-bot
14bcece730 auto sipify 🍺 2024-09-16 06:55:32 +00:00
Nyall Dawson
1fc5ae33aa Add missing sip cast for QgsFilledLineSymbolLayer 2024-09-16 16:52:20 +10:00
qgis-bot
59bd89d380 auto sipify 🍺 2024-09-14 03:29:36 +00:00
Nyall Dawson
b7d18c009a Fix dox 2024-09-14 13:25:59 +10:00
Nyall Dawson
566b2f7286 Ensure label cache is invalidated when a vector layer renderer
affects the labeling and is re-drawn
2024-09-14 13:25:59 +10:00
Nyall Dawson
c50c923261 Add API to determine if feature renderer affects labeling results 2024-09-14 13:25:59 +10:00
Nyall Dawson
957de0c311 Expose private QgsTextRenderer method for drawing document at point
This allows more efficient rendering when the document and metrics
have already been calculated
2024-09-14 13:25:59 +10:00
Ivan Barsukov
d0dedde547 Fixed typo in allowCommitChanged 2024-09-14 06:01:01 +10:00
qgis-bot
e7c0455296 auto sipify 🍺 2024-09-13 15:42:50 +00:00
Denis Rouzaud
281726250f
Merge pull request #58354 from gacarrillor/save_functions_in_project
[feature] Allow users to save expression functions in QGIS project file
2024-09-13 17:39:40 +02:00
qgis-bot
e25bc2089b auto sipify 🍺 2024-09-13 14:55:52 +00:00
Denis Rouzaud
304f9642b4
[locator] add priority per group (#58542)
* [locator] add priority per group

* fix test

---------

Co-authored-by: signedav <david@opengis.ch>
2024-09-13 16:52:45 +02:00
qgis-bot
774399c3ea auto sipify 🍺 2024-09-12 07:21:24 +00:00
Alessandro Pasotti
987c38eda6
[auth][api] QgsAuthConfigurationStorage classes and tests (#57992)
Implementation of QEP 
Authentication System: allow Database storage for authentication DB
https://github.com/qgis/QGIS-Enhancement-Proposals/issues/248
2024-09-12 09:18:15 +02:00
Nyall Dawson
059a37f87d
Fix struct attributes descriptions missing from PyQGIS docs (#58672)
Fixes https://github.com/qgis/pyqgis-api-docs-builder/issues/177
2024-09-12 07:12:52 +02:00
qgis-bot
10b16ab9ac auto sipify 🍺 2024-09-12 01:15:26 +00:00
Mathieu Pellerin
73ab085bbc
Merge pull request #58584 from nirvn/processing_openstreetmap_policy
Further safeguards from (perceived or actual) bulk download of OpenStreetMap tiles
2024-09-12 08:12:17 +07:00
qgis-bot
8448cf8e90 auto sipify 🍺 2024-09-11 22:37:25 +00:00
Mathieu Pellerin
83e53cb09a Address comment, fix crash seen on Qt6 CI 2024-09-12 08:34:13 +10:00
Mathieu Pellerin
5bcc310768 Address review 2024-09-12 08:34:13 +10:00
Mathieu Pellerin
48b98def64 [geos] Add mechanism for empty interior rings to be skipped 2024-09-12 08:34:13 +10:00
Nyall Dawson
c85589e52a Fix malformed docs for register_function, qgsfunction 2024-09-11 08:51:05 +02:00
qgis-bot
89c27fee8d auto sipify 🍺 2024-09-11 03:46:06 +00:00
Nyall Dawson
5734116a10 Support h1/h2/.../h6 formatting in html labels 2024-09-11 13:43:00 +10:00
qgis-bot
87692cd20a auto sipify 🍺 2024-09-10 22:27:51 +00:00
Nyall Dawson
90524634f9 [feature] Add support for word-spacing CSS in html labels
...and other places HTML text formatting is accepted.

This allows use of CSS "word-spacing: 12" to increase the word
spacing in a section of HTML text. The word spacing is always
treated as being in point units.
2024-09-11 08:24:39 +10:00
qgis-bot
2861ba89f6 auto sipify 🍺 2024-09-10 16:09:57 +00:00
Nyall Dawson
569da98cd8 If a rule is not available on the system (eg geos too old):
- grey out the rule in the rules list
- show an explanatory tooltip
- don't allow users to create copies of that rule
2024-09-11 02:06:41 +10:00
Nyall Dawson
6c2055fc1e Generate user-friendly tooltips 2024-09-11 02:06:41 +10:00
Nyall Dawson
2d3e6aac43 Allow labeling rules to be de-activated 2024-09-11 02:06:41 +10:00
Nyall Dawson
3ec7665fec Add gui for configuring project advanced labeling rules 2024-09-11 02:06:41 +10:00
Nyall Dawson
98bd60e4ba Add __repr__ 2024-09-11 02:06:41 +10:00
Nyall Dawson
940949cbf9 Rules can have user-configurable names 2024-09-11 02:06:41 +10:00
Nyall Dawson
538cec5970 Fix seealso 2024-09-11 02:06:41 +10:00
Nyall Dawson
15a7079a39 [api] Implementation of labeling engine rules
See https://github.com/qgis/QGIS-Enhancement-Proposals/issues/299

Implements the API framework for setting advanced labeling engine
rules for a project, and implements 4 initial rule types:

- QgsLabelingEngineRuleMinimumDistanceLabelToFeature: prevents labels
  being placed too *close* to features from a different layer
- QgsLabelingEngineRuleMaximumDistanceLabelToFeature: prevents labels
  being placed too *far* from features from a different layer
- QgsLabelingEngineRuleMinimumDistanceLabelToLabel: prevents labels
  being placed too close to labels from a different layer
- QgsLabelingEngineRuleAvoidLabelOverlapWithFeature: prevents labels
  being placed overlapping features from a different layer

(note that the first 3 rules require a build based on GEOS >= 3.10,
they are not available for older GEOS builds)

Also implements a registry for storing available rule classes,
and serialization of rules and configuration in QGIS projects
2024-09-11 02:06:41 +10:00
qgis-bot
8db3ed6de5 auto sipify 🍺 2024-09-10 08:36:19 +00: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