ensure that the visible layers for each map is correctly considered
when determining what symbols are overall visible
AKA make multiple map filtering work nicely alongside map themes
This change allows use of the full text renderer capabilities
for legend titles, subtitles, and item text. It allows buffers,
shadows, font spacing control, and all over options (including
mixed HTML formatting!) which is permitted for use in text
formats.
This:
- Allows users to turn on or off the visibility of layers from
the profile plot on a plot-by-plot basis (previously the layer
visibility was taken straight from the main canvas layer visibility)
- Allows users to rearrange the drawing order of layers in the plot
- Allows a shortcut to the layer elevation properties settings by
double clicking layers
- Provides a "legend" for the features visible on the plot
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...
when various actions and editing dependant states should be
reflected in qgis app
We don't want annotation layers (which are always editable) to
make things like the "cancel edits for all layers" action
to become enabled.
keyword in Python, so this value was previously inaccessible to PyQGIS
scripts
Also change all references to Qgis::MessageLevel values to their
fully qualified names, to ease a future transition to an enum
class (when sip bugs are fixed)
Fixes#42996
- Add enums to qgis.h instead of qgscoreenums, so that they belong to
a Qgis namespace
- Split up the various symbol headers into multiple files so that we
can fine-tune their inclusion and forward declare more readily, speeding
up recompilation
- Move QgsSymbol enums to qgis