windows and docks between sessions"
If checked for a project, then any opened attribute tables will be
saved into the project and immediately restored when loading that
project.
Designed to improve workflows when a user has constructed a project
with a particular set of attribute table configurations for their
requirements, and re-setting up these attribute tables is a hassle.
"Remember editable layer status between sessions"
If checked, then any layers which are editable will be remembered
when saving that project and immediately made editable whenever
the project is restored.
This is an opt-in, per-project setting. The intended use case
is for users who are making complex, data-editing focused projects.
as "basemap" layers
This flag identifies if the layer is considered a 'basemap' layer, where
certain properties of the layer should be ignored when calculating
project-level properties. For instance, the extent of basemap layers
should be ignored when calculating the overall extent of a project,
as these layers are typically global and extend outside of a project's
area of interest.
must be refreshed whenever the item is refreshed
This behaviour is not automatic. The new flag allows items to opt-in,
so that their children WILL be automatically refreshed when the
item is refreshed.
Should be used sparingly only to avoid expensive work
A group layer is a map layer which consists of a set of
child layers, where all component layers are rendered as a single
flattened object during map renders.
This commit sets up the base framework for QgsGroupLayer only
(i.e. no rendering changes).
with "on inner vertices"
This new mode places the symbols on all inner vertices (ie all
vertices except the first or last). (We can safely do this now
that its easy for users to also set the symbols to show on
first/last vertex by clicking those checkboxes too!)
The motivation here is that when the "Vertex" mode puts the
symbols on the first/last vertex as well as inner vertices,
it's basically impossible to style a line with a different
marker on the first/last vertex to the rest of the line's
vertices. (The best you can get is just hiding the unwanted
first/last vertex by overlaying a second symbol layer on
the first/last vertices with a larger symbol)
Sponsored by North Road, thanks to SLYR
Makes it considerably quicker to create a marker line with the
markers on the first AND last vertex, amongst other things...
Fixes#18433
Sponsored by North Road, thanks to SLYR
Adds two new capitalization styles for labels and text symbols:
- Small Caps: Renders lowercase characters as small caps
- All Small Caps: Renders all characters as small caps (regardless
of their original case)
Requires Qt 6.3+, or Qt 5.15 using KDE's fork and the cmake
HAS_KDE_QT5_SMALL_CAPS_FIX switch defined during build.
which is opt in, and consistently respect this for better quality
raster image markers, svg/raster fills when set
We don't set this by default (keep things light for server), but
do use it in the map canvas and layout exports whenever antialiasing
is enabled.
This returns a new multilinestring geometry which represents the
input geometry with the dash pattern applied to the lines or rings
of the input geometry.
Options are available to set rules for the start/end of the pattern,
e.g. ending on a full dash or gap, or half dash or gap.
Sponsored by North Road, thanks to SLYR
pattern fill
This allows users to control how lines in the fill should be
clipped to the polygon shape. Options are:
- Clip During Render Only: existing behaviour, lines are created
covering the whole bounding box of the feature and then clipped
while drawing. Line extremities (beginning and end) will not be
visible
- Clip Lines Before Render: lines are clipped to the exact
shape of the polygon prior to rendering. Line extremities (including
cap styles, start/end marker line objects, etc) will be visible,
and may sometimes extend outside of the polygon (depending
on the line symbol settings)
- No Clipping: no clipping at all is done - line will cover the
whole bounding box of the feature
Sponsored by North Road, thanks to SLYR
whenever a subsymbol component of a parent symbol is being rendered
This flag allows symbol layers to refine their behaviour based on whether
they are a subsymbol or not.
point pattern fill
A new option exposes the ability to clip markers in the fill by:
- "Clip to shape": default behaviour, same as previous versions. Markers
are clipped so that only the portions inside the polygon are visible
- "Marker centroid within shape": only markers where the center of
the marker falls inside the polygon are drawn, but these markers
won't be clipped to the outside of the polygon
- "Marker Completely Within Shape": only markers which fall
completely within the polygon are shown
- "No clipping": any marker which intersects at all with the polygon
will be completely rendered
The clipping mode can be overridden via a data driven expression if
desired.
Sponsored by North Road, thanks to SLYR
Fixes#37825
This enum was forcing an include of qgscoordinatetransform.h within the
widely used qgsabstractgeometry.h header, causing an absolute explosion
of includes of a bunch of very heavy header classes all across QGIS. By
removing the forced include we can avoid a ton of unwanted includes
and make wider use of forward declarations...