Background: at project load time for all layers a copy of the style
is loaded and stored as a DOM document. This was implemented for
broken layers to make it possible to store the style back to the
project if a broken layer was kept in the project.
Of course this is not needed nor useful in a server context.
By introducing a new project load flag and using it in the server
config (projects) cache we allow to skip the initial storage of
styles for the server and cut the startup times of our test "monster"
project (~1000 PG layers) from 26 seconds to 15.
Before you ask: I chose to always store the original style
with the idea that we might have been able to use the original
style copy also to "restore" styles to their initial state.
This was never implemented, so I guess we might be good to
make the initial style copy selectively available for broken
layers only in order to speed up project loading in the general
case (desktop).
anchor point for line labels is a hint or a strict requirement
Strict: Labels are placed exactly on the label anchor only, and no
other fallback placements are permitted.
Hint: The label anchor is treated as a hint for the preferred label
placement, but other placements close to the anchor point are permitted.
Take the subivisions ticks height into accout, for ticksscalebar box size calculation and horizontal line and labels position, only if the number of subdivisions to draw is greater than 1
as distinct symbols vs the scalebar line symbol
Allows for styling division and subdivision symbols in a different
way compared with the horizontal line symbol in a tick scalebar
Sponsored by SLYR
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
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!
This commit adds a new avoid intersection mode setting when
digitizing new features. The three available modes are:
- allow intersections/overlaps
- avoid intersections/overlaps on active layer
- avoid intersectonss/overlaps on layers list
The third mode is what QGIS has had for a while, except
its UI/UX is a bit messy. The layers list is setup by
the user via the advanced snapping configuration widgets,
but isn't connected at all with whether snapping is
enabled / disabled.
This new approach makes it explicit to user whether
newly-added features might be clipped or not, and
if so by which layer(s).
Finally, the new 'avoid intersections/overlaps on
active layer' is likely a far more useful behavior
than having a list of layers (for e.g., you might
be digitizing on a layer that can't have overlap
with itself but is fine to overlap with another
layer, the latter also in need of avoid overlap
_with itself_).
* drag'n'drop improvements
part 3
this completely removes hidden config accessible under double click
now a widget groupbox (by opposition to the field config) is shown on top of the right panel