settings widget to allow users to tweak the obstacle behavior
Previously these settings were stuck inside the disabled label settings
widget, which meant that to edit them you had to temporarily enable simple
labels, tweak the setting, and then set back to obstacle mode... woot.
and show detailed settings in a stacked panel widget
Because:
1. The settings belong next to the placement settings, because they
affect label placement directly (and are closely associated with the
label priority setting in this tab)
2. The label settings widget is ridiculously complex and overwhelming
even for experienced QGIS users. By moving detailed settings into
stacked panels we can avoid the initial complexity of the label settings
whilst also allowing us more flexibility to expose additional settings
in future without adding to the mess. So in future, I propose we move
all detailed settings to sub panels, and leave only the initial "enable"
setting at the top level (e.g. [x] "Repeat levels" -> click settings -> see
all repeat settings).
instead of passing an index that could belong to
one of the (three) models that live in the dual
view.
This hopefully makes the code a bit less error
prone and readable.
Fixes#32952
These conversions just crash sip (woo. sip. yay. good times.). I can't find
any alternative approach which avoids this crash, so just remove the cast
to avoid the crash.
Fixes#32700
* [FEATURE] Selective masking
Advanced rendering feature that allows the definition of 'masks' areas around labels or with a new typ of symbol layer. These masks will "un-draw" symbol layers of other layers underneath.
It modifies the rendering process by adding an optional second pass.
This commit adds a new fill symbol layer type "Random marker fill". It
allows polygon features to be rendered using a marker symbol placed
at random locations within the polygon boundary.
Options include:
- number of marker symbols to render for the polygon
- whether markers rendered near the edges of polygons should be clipped
to the polygon boundary or not
- an optional random number seed, to give consistent placement
of markers whenever maps are refreshed (also allows random placement
to play nice with QGIS server and tile-based rendering)
Sponsored by the SLYR project