35 Commits

Author SHA1 Message Date
Damiano Lombardi
0874a6a4e3 QgsMapToolRotateLabel respect rotation unit 2021-09-01 07:54:10 +02:00
Damiano Lombardi
b19b39637e [labeling] test for rotation unit 2021-09-01 07:54:09 +02:00
Damiano Lombardi
44fb7d6714 [labeling] specify unit for data defined label rotation 2021-09-01 07:54:09 +02:00
Nyall Dawson
cf8b96ad44 Nicer memory handling when registering label features 2021-06-21 14:28:27 +10:00
Nyall Dawson
e7c4c84ae3 [labeling][api] Add api to supress unplaced label visibility for
a single layer

Not exposed anywhere, for PyQGIS use only
2021-05-25 16:11:53 +10:00
Marco Hugentobler
dce94dc656 mLegend string member with getter and setter 2021-05-13 22:40:13 +02:00
Marco Hugentobler
62d73373c1 Make legend/preview text configurable 2021-05-11 18:32:46 +02:00
nirvn
9989cffb3c [feature][callouts] Add blending mode settings 2021-04-26 19:34:16 +10:00
Nyall Dawson
7126faf27c [feature][labelling] Add an option to control how line features are
clipped before their anchor points are calculated

The previous behavior was to always use only the visible part
of the line when calculating the anchor point for labels. Now,
users have the option to choose "Use Entire Line" when setting
the label anchor point for lines, so that the entire line
feature is considered when calculating the point to place
the label instead of just the visible part of the line.

Sponsored by Stadt Zürich
2021-04-09 13:29:08 +10:00
Denis Rouzaud
ba8a445850 run sipify 2021-03-22 21:13:52 +01:00
Nyall Dawson
4f39cf6d6c Move QgsLabelingResults out to its own file 2021-02-23 15:49:23 +10:00
Nyall Dawson
a513f5a1e6 Move QgsLabelPosition out to own file 2021-02-23 15:49:23 +10:00
Nyall Dawson
7dfef3a0b1 Newer doxygen versions don't auto convert the first line in a class'
documentation to a brief note, so we have to do it explicitly...
2021-02-19 08:15:29 +10:00
Nyall Dawson
50b9beaad6 [sipify] Catch more class references and insert :py:class: annotations 2021-01-31 05:41:22 +10:00
Nyall Dawson
4ee9feb56b Sipify 2020-10-09 11:20:09 +10:00
Nyall Dawson
9f83b413a7 [vectortiles] Fix labels disappear randomly between map redraws
Fixes #37450
2020-09-01 14:23:31 +10:00
Nyall Dawson
b14bb32104 [labeling] Add api to set line anchor point for labels, which represents
the percentage along line features at which labels for that feature
should gravitate toward
2020-08-18 11:09:18 +10:00
Nyall Dawson
844e9a3aac Move label overrun settings to QgsLabelLineSettings 2020-08-17 11:12:33 +10:00
Nyall Dawson
b31d315a52 Move another line label related setting and enum to QgsLabelLineSettings 2020-08-17 11:12:33 +10:00
Nyall Dawson
5dfbfaa89e Move some more line label related settings to QgsLabelLineSettings 2020-08-17 11:12:33 +10:00
Nyall Dawson
d93d881192 Move merge line settings to QgsLabelLineSettings 2020-08-17 11:12:33 +10:00
Nyall Dawson
23848e0e89 Start cleaning up label line settings, by moving them from the
QgsPalLayerSettings mega class to a dedicated QgsLabelLineSettings
class
2020-08-17 11:12:33 +10:00
Nyall Dawson
cfd9afed71 [feature][labeling] Expose Justify text alignment option for use
in multiline point/polygon labels

Allows multiline labels to be "justify" aligned
2020-07-09 13:23:20 +10:00
Nyall Dawson
81a9db9f57 [sipify] Fix creation of cross references 2020-06-15 13:43:58 +10:00
Nyall Dawson
0e139992e3 Split massive qgstextrenderer.cpp/.h files into separate files per
contained class

and tighten includes to speed up recompilation
2020-05-12 10:33:30 +10:00
Nyall Dawson
7fc9c555de More cleanups, avoid multiple parsing of the same HTML content for a label 2020-05-12 10:33:30 +10:00
Nyall Dawson
f5d68ff423 Adapt QgsPalLabeling.splitToLines to account for HTML formatting 2020-05-12 10:33:29 +10:00
Nyall Dawson
d0ca4f31f8 Since 2020-05-04 05:38:48 +10:00
Nyall Dawson
e10c9f3b19 [labeling][FEATURE] Add a dedicated polygon placement mode for "outside"
When selected, labels will always be placed outside of polygons for the
layer

Sponsored by QGIS Swiss user group
2020-05-04 05:38:48 +10:00
Nyall Dawson
9fb85d3bc8 [FEATURE][labeling] Permit data defined control over placing labels outside
polygons

Options are:
- 'yes': allow placing outside the polygon if needed
- 'no': don't allow outside placements
- 'force': only ever put this label outside the polygon
2020-05-04 05:38:48 +10:00
Nyall Dawson
51820badc1 [FEATURE][labeling] Add option to allow polygon labels to be placed
outside of polygon features when required

When a label can't be placed inside the polygon and this option is checked,
then it will be automatically placed at a nicely selected location
just outside of the polygon

Sponsored by QGIS Swiss user group!
2020-05-04 05:38:48 +10:00
Martin Dobias
8c488b4ef0 Added QgsRenderContext arg to referencedFields() + unit tests 2020-04-15 08:33:29 +10:00
Martin Dobias
f8a6b9fa3a Add support for labeling of vector tile layers 2020-04-15 08:33:29 +10:00
Nyall Dawson
b1bbc8511b [labeling] Move settings related to removing labels (e.g. max no
of labels, min size for labels) to a new class QgsLabelThinningSettings

This new class is designed to contain settings related to how the label
engine removes candidate label positions and reduces the number of
displayed labels.
2019-12-12 07:44:11 +10:00
Nyall Dawson
a8adb2d6c2 Code shuffle: move all labeling related code into src/core/labeling
So that these files are all grouped together, making it easier to locate
all the components of the labeling engine and hopefully making things
easier to navigate
2019-12-11 14:05:44 +10:00