QgsAuxiliaryLayer::createProperty(*)
Instead, if a property already exists it will be upgraded to
an expression based property of the form:
coalesce("new aux field", 'existing' || 'property' || 'expression')
(i.e. allow per-feature value overrides from the auxiliary field,
but by default fallback to the existing property definition)
Refs #44475
This allows callers to specify the desired rendering resolution of the
image when they aren't explicitly requesting a preset image size.
It can be used for image drivers for formats which don't have a fixed
size (e.g. pdf) so that the image is rendered in the desired resolution.
Accessible via QgsGui::recentStyleHandler(), this is intended as
a place to store recently used style items (e.g. symbols).
Initially it's used just for annotation items so that newly
created annotation items are automatically set to the same style
as the most recently modified item of the same type (e.g. so
that users drawing many point annotations don't need to keep
setting it back to the same appearance)! But the api is kept
flexible for additional uses in future... (eg layout items)
for cancelation check support
While there is the existing QgsRenderContext::renderingStopped()
check, this doesn't play well with other parts of QGIS which utilise
a QgsFeedback object for cancelation support. By adding support
for a proper QgsFeedback object in render contexts then it becomes
trivial to pass this on to feature requests, expression contexts,
and other potentially expensive functions so that these can
all be canceled responsively too.
(At some stage in the future we should consider deprecating
QgsRenderContext::rendereringStopped(), but that's not done here)
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...
And use it from QgsVectorLayerFeatureIterator
References #472
The current implementation is really just a wrapper around distance()
but opens the door for future improvements