diff --git a/python/core/auto_generated/expression/qgsexpressioncontextutils.sip.in b/python/core/auto_generated/expression/qgsexpressioncontextutils.sip.in index 0b652f7248c..fa0c2e58f8a 100644 --- a/python/core/auto_generated/expression/qgsexpressioncontextutils.sip.in +++ b/python/core/auto_generated/expression/qgsexpressioncontextutils.sip.in @@ -240,7 +240,7 @@ with the variables specified. .. versionadded:: 3.0 %End - static QgsExpressionContextScope *atlasScope( QgsLayoutAtlas *atlas ) /Factory/; + static QgsExpressionContextScope *atlasScope( const QgsLayoutAtlas *atlas ) /Factory/; %Docstring Creates a new scope which contains variables and functions relating to a :py:class:`QgsLayoutAtlas`. For instance, current page name and number. diff --git a/python/core/auto_generated/layout/qgsabstractlayoutiterator.sip.in b/python/core/auto_generated/layout/qgsabstractlayoutiterator.sip.in index 2ba868c4e43..98119ecddd4 100644 --- a/python/core/auto_generated/layout/qgsabstractlayoutiterator.sip.in +++ b/python/core/auto_generated/layout/qgsabstractlayoutiterator.sip.in @@ -41,7 +41,7 @@ is available or required. Ends the render, performing any required cleanup tasks. %End - virtual int count() = 0; + virtual int count() const = 0; %Docstring Returns the number of features to iterate over. %End diff --git a/python/core/auto_generated/layout/qgsabstractreportsection.sip.in b/python/core/auto_generated/layout/qgsabstractreportsection.sip.in index 275621839b1..e2434a9dcf3 100644 --- a/python/core/auto_generated/layout/qgsabstractreportsection.sip.in +++ b/python/core/auto_generated/layout/qgsabstractreportsection.sip.in @@ -105,7 +105,7 @@ Returns the parent report section. Returns the associated project. %End - virtual int count(); + virtual int count() const; virtual QString filePath( const QString &baseFilePath, const QString &extension ); diff --git a/python/core/auto_generated/layout/qgslayoutatlas.sip.in b/python/core/auto_generated/layout/qgslayoutatlas.sip.in index 5f4d357dcc4..727dba479a7 100644 --- a/python/core/auto_generated/layout/qgslayoutatlas.sip.in +++ b/python/core/auto_generated/layout/qgslayoutatlas.sip.in @@ -267,7 +267,7 @@ number of matching features. virtual bool endRender(); - virtual int count(); + virtual int count() const; virtual QString filePath( const QString &baseFilePath, const QString &extension ); diff --git a/src/core/expression/qgsexpressioncontextutils.cpp b/src/core/expression/qgsexpressioncontextutils.cpp index 37be7e786b9..ae55c6e5932 100644 --- a/src/core/expression/qgsexpressioncontextutils.cpp +++ b/src/core/expression/qgsexpressioncontextutils.cpp @@ -514,7 +514,7 @@ void QgsExpressionContextUtils::setLayoutVariables( QgsLayout *layout, const QVa layout->setCustomProperty( QStringLiteral( "variableValues" ), variableValues ); } -QgsExpressionContextScope *QgsExpressionContextUtils::atlasScope( QgsLayoutAtlas *atlas ) +QgsExpressionContextScope *QgsExpressionContextUtils::atlasScope( const QgsLayoutAtlas *atlas ) { QgsExpressionContextScope *scope = new QgsExpressionContextScope( QObject::tr( "Atlas" ) ); if ( !atlas ) diff --git a/src/core/expression/qgsexpressioncontextutils.h b/src/core/expression/qgsexpressioncontextutils.h index e22dc9672e9..13cb706d8fb 100644 --- a/src/core/expression/qgsexpressioncontextutils.h +++ b/src/core/expression/qgsexpressioncontextutils.h @@ -222,7 +222,7 @@ class CORE_EXPORT QgsExpressionContextUtils * For instance, current page name and number. * \param atlas source atlas. If NULLPTR, a set of default atlas variables will be added to the scope. */ - static QgsExpressionContextScope *atlasScope( QgsLayoutAtlas *atlas ) SIP_FACTORY; + static QgsExpressionContextScope *atlasScope( const QgsLayoutAtlas *atlas ) SIP_FACTORY; /** * Creates a new scope which contains variables and functions relating to a QgsLayoutItem. diff --git a/src/core/layout/qgsabstractlayoutiterator.h b/src/core/layout/qgsabstractlayoutiterator.h index 153a84b2aee..4ca46f7e545 100644 --- a/src/core/layout/qgsabstractlayoutiterator.h +++ b/src/core/layout/qgsabstractlayoutiterator.h @@ -54,7 +54,7 @@ class CORE_EXPORT QgsAbstractLayoutIterator /** * Returns the number of features to iterate over. */ - virtual int count() = 0; + virtual int count() const = 0; /** * Iterates to next feature, returning FALSE if no more features exist to iterate over. diff --git a/src/core/layout/qgsabstractreportsection.h b/src/core/layout/qgsabstractreportsection.h index c5c1e2c0da6..6c153097e87 100644 --- a/src/core/layout/qgsabstractreportsection.h +++ b/src/core/layout/qgsabstractreportsection.h @@ -121,7 +121,7 @@ class CORE_EXPORT QgsAbstractReportSection : public QgsAbstractLayoutIterator QgsProject *project(); // TODO - how to handle this? - int count() override { return -1; } + int count() const override { return -1; } QString filePath( const QString &baseFilePath, const QString &extension ) override; QgsLayout *layout() override; diff --git a/src/core/layout/qgslayoutatlas.cpp b/src/core/layout/qgslayoutatlas.cpp index ee1baac2197..cacb90dfa07 100644 --- a/src/core/layout/qgslayoutatlas.cpp +++ b/src/core/layout/qgslayoutatlas.cpp @@ -340,7 +340,7 @@ bool QgsLayoutAtlas::endRender() return true; } -int QgsLayoutAtlas::count() +int QgsLayoutAtlas::count() const { return mFeatureIds.size(); } @@ -447,7 +447,7 @@ QgsExpressionContext QgsLayoutAtlas::createExpressionContext() const expressionContext << QgsExpressionContextUtils::projectScope( mLayout->project() ) << QgsExpressionContextUtils::layoutScope( mLayout ); - expressionContext.appendScope( QgsExpressionContextUtils::atlasScope( const_cast< QgsLayoutAtlas * >( this ) ) ); + expressionContext.appendScope( QgsExpressionContextUtils::atlasScope( this ) ); if ( mCoverageLayer ) expressionContext.appendScope( mCoverageLayer->createExpressionContextScope() ); diff --git a/src/core/layout/qgslayoutatlas.h b/src/core/layout/qgslayoutatlas.h index 2807b33ba31..60f9fba8f34 100644 --- a/src/core/layout/qgslayoutatlas.h +++ b/src/core/layout/qgslayoutatlas.h @@ -245,7 +245,7 @@ class CORE_EXPORT QgsLayoutAtlas : public QObject, public QgsAbstractLayoutItera bool beginRender() override; bool endRender() override; - int count() override; + int count() const override; QString filePath( const QString &baseFilePath, const QString &extension ) override; /**