[legends] Fix missing symbols for inverted polygon layers when using

filter by map content

Fixes #22718
This commit is contained in:
Nyall Dawson 2019-09-20 16:06:13 +10:00
parent ff4f32db0d
commit abc9f47ca4
3 changed files with 10 additions and 0 deletions

View File

@ -86,6 +86,8 @@ Features collected during renderFeature() are rendered using the embedded featur
virtual QgsSymbolList originalSymbolsForFeature( const QgsFeature &feature, QgsRenderContext &context ) const;
virtual QSet< QString > legendKeysForFeature( const QgsFeature &feature, QgsRenderContext &context ) const;
virtual QgsLegendSymbolList legendSymbolItems() const;
virtual bool willRenderFeature( const QgsFeature &feature, QgsRenderContext &context ) const;

View File

@ -465,6 +465,13 @@ QgsSymbolList QgsInvertedPolygonRenderer::originalSymbolsForFeature( const QgsFe
return mSubRenderer->originalSymbolsForFeature( feature, context );
}
QSet<QString> QgsInvertedPolygonRenderer::legendKeysForFeature( const QgsFeature &feature, QgsRenderContext &context ) const
{
if ( !mSubRenderer )
return QSet<QString>();
return mSubRenderer->legendKeysForFeature( feature, context );
}
QgsSymbolList QgsInvertedPolygonRenderer::symbols( QgsRenderContext &context ) const
{
if ( !mSubRenderer )

View File

@ -84,6 +84,7 @@ class CORE_EXPORT QgsInvertedPolygonRenderer : public QgsFeatureRenderer
QgsSymbol *originalSymbolForFeature( const QgsFeature &feature, QgsRenderContext &context ) const override;
QgsSymbolList symbolsForFeature( const QgsFeature &feature, QgsRenderContext &context ) const override;
QgsSymbolList originalSymbolsForFeature( const QgsFeature &feature, QgsRenderContext &context ) const override;
QSet< QString > legendKeysForFeature( const QgsFeature &feature, QgsRenderContext &context ) const override;
QgsLegendSymbolList legendSymbolItems() const override;
bool willRenderFeature( const QgsFeature &feature, QgsRenderContext &context ) const override;