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.
In some circumstances there can be a visible <=2 pixel-wide gap
between adjacent tiles in xyz layers
Rework the image destination rect calculation to an integer
based calculation, as we'll always be drawing the tiles using
a painter with a pixel-based image device, and ensure that
the destination rect is always expanded to the nearest pixel
(instead of shrunk)
Improves the appearance of labels in situations like road networks,
where things like dual carriageways, service roads, etc can result
in many labels of the exact same text appearing close to each other.
When active, removes any labels with the exact same text (case
sensitive!) which are closer then this minimum distance.
The setting applies across layers, so duplicate text from ANY
layer will be considered.
Adds session_role to the connection information so:
- It's automatically used for every request. The old system was only
working for provider requests and was error prone because it was easy
to forget to set the session role before the request.
- Avoid setting/resetting role request if different request sender
were sharing the same connection information to the exception of the
session role.
Fixes#58516
The removed MultiPolygon are invalid. These tests do not return the
same result depending on the GEOS version. They should not be part of
the test suite as stated upstream.
See: https://github.com/libgeos/geos/issues/1147
Allows legend text to be automatically wrapped after a set
line length (in millimeters).
This can prevent very wide auto-generated legends.
Sponsored by North Road, thanks to SLYR
This test tests the geometry checker method used in the geometry checker
plugin which launches the checks in parallel,
QgsGeometryChecker::execute().
We use a relatively big layer to be maximize chances of triggering
threading issues and be as close as possible to a real user case.
Related to #61087
This adds support to display vertices lines over the profile graph to
display indicator at the location of the curve's vertices.
This is achieved with mainly 2 changes:
- `setSubsectionsSymbol()` allows to set the line symbol of the
vertical lines
- Call `renderSubsectionsIndicator` on the `QgsProfilePlotRenderer`
This adds support to display vertices lines over the profile graph to
display indicator at the location of the curve's vertices.
This is achieved with mainly 2 changes:
- `QgsProfilePlotRenderer::setSubsectionsSymbol()` allows to set the
line symbol of the vertical lines
- `renderSubsectionsIndicator` generates and renders the vertical
lines. It is called by `QgsProfilePlotRenderer::renderToImage()`.
This svg is actually ONLY correctly rendered on recent qt 6 versions.
But at the rendered size, the actual image diff is quite small. So
just use a mask to accept either the (not quite right) qt 5 render
or the (right) qt 6 render.