16#ifndef QGSLAYOUTATLAS_H 
   17#define QGSLAYOUTATLAS_H 
   73    void setEnabled( 
bool enabled );
 
   85    void setHideCoverage( 
bool hide );
 
  103    bool setFilenameExpression( 
const QString &expression, QString &errorString 
SIP_OUT );
 
  110    QString currentFilename() 
const;
 
  135    void setPageNameExpression( 
const QString &expression );
 
  141    QString nameForPage( 
int page ) 
const;
 
  157    void setSortFeatures( 
bool enabled );
 
  179    void setSortAscending( 
bool ascending );
 
  201    void setSortExpression( 
const QString &expression );
 
  215    void setFilterFeatures( 
bool filtered );
 
  238    bool setFilterExpression( 
const QString &expression, QString &errorString 
SIP_OUT );
 
  244    int updateFeatures();
 
  248    int count() 
const override;
 
  249    QString 
filePath( 
const QString &baseFilePath, 
const QString &extension ) 
override;
 
  260    bool next() 
override;
 
  296    bool seekTo( 
int feature );
 
  310    void refreshCurrentFeature();
 
  341    void removeLayers( 
const QStringList &layers );
 
  349    bool updateFilenameExpression( QString &error );
 
  362    bool prepareForFeature( 
int i );
 
  364    QPointer< QgsLayout > mLayout;
 
  366    bool mEnabled = 
false;
 
  367    bool mHideCoverage = 
false;
 
  368    QString mFilenameExpressionString;
 
  369    QString mFilenameExpressionError;
 
  373    QString mCurrentFilename;
 
  374    bool mSortFeatures = 
false;
 
  375    bool mSortAscending = 
true;
 
  377    typedef QMap< QgsFeatureId, QVariant > SorterKeys;
 
  379    SorterKeys mFeatureKeys;
 
  381    QString mSortExpression;
 
  383    QString mPageNameExpression;
 
  385    bool mFilterFeatures = 
false;
 
  386    QString mFilterExpression;
 
  388    QString mFilterParserError;
 
  391    QVector< QPair<QgsFeatureId, QString> > mFeatureIds;
 
  393    int mCurrentFeatureNo = -1;
 
  397    friend class AtlasFeatureSorter;
 
An abstract base class for QgsLayout based classes which can be exported by QgsLayoutExporter.
 
virtual bool endRender()=0
Ends the render, performing any required cleanup tasks.
 
virtual QgsLayout * layout()=0
Returns the layout associated with the iterator.
 
virtual bool next()=0
Iterates to next feature, returning false if no more features exist to iterate over.
 
virtual bool beginRender()=0
Called when rendering begins, before iteration commences.
 
virtual QString filePath(const QString &baseFilePath, const QString &extension)=0
Returns the file path for the current feature, based on a specified base file path and extension.
 
virtual int count() const =0
Returns the number of features to iterate over.
 
Abstract interface for generating an expression context.
 
virtual QgsExpressionContext createExpressionContext() const =0
This method needs to be reimplemented in all classes which implement this interface and return an exp...
 
Expression contexts are used to encapsulate the parameters around which a QgsExpression should be eva...
 
The feature class encapsulates a single feature including its unique ID, geometry and a list of field...
 
Class used to render QgsLayout as an atlas, by iterating over the features from an associated vector ...
 
QString sortExpression() const
Returns the expression (or field name) to use for sorting features.
 
bool filterFeatures() const
Returns true if features should be filtered in the coverage layer.
 
QString filenameExpression() const
Returns the filename expression used for generating output filenames for each atlas page.
 
bool sortAscending() const
Returns true if features should be sorted in an ascending order.
 
void toggled(bool)
Emitted when atlas is enabled or disabled.
 
bool hideCoverage() const
Returns true if the atlas is set to hide the coverage layer.
 
void featureChanged(const QgsFeature &feature)
Emitted when the current atlas feature changes.
 
QString filterExpression() const
Returns the expression used for filtering features in the coverage layer.
 
bool enabled() const
Returns whether the atlas generation is enabled.
 
QString pageNameExpression() const
Returns the expression (or field name) used for calculating the page name.
 
void numberFeaturesChanged(int numFeatures)
Emitted when the number of features for the atlas changes.
 
void messagePushed(const QString &message)
Emitted when the atlas has an updated status bar message.
 
void coverageLayerChanged(QgsVectorLayer *layer)
Emitted when the coverage layer for the atlas changes.
 
QgsVectorLayer * coverageLayer() const
Returns the coverage layer used for the atlas features.
 
void renderBegun()
Emitted when atlas rendering has begun.
 
void renderEnded()
Emitted when atlas rendering has ended.
 
void changed()
Emitted when one of the atlas parameters changes.
 
bool sortFeatures() const
Returns true if features should be sorted in the atlas.
 
int currentFeatureNumber() const
Returns the current feature number, where a value of 0 corresponds to the first feature.
 
An interface for layout objects which can be stored and read from DOM elements.
 
virtual bool writeXml(QDomElement &parentElement, QDomDocument &document, const QgsReadWriteContext &context) const =0
Stores the objects's state in a DOM element.
 
virtual bool readXml(const QDomElement &element, const QDomDocument &document, const QgsReadWriteContext &context)=0
Sets the objects's state from a DOM element.
 
virtual QString stringType() const =0
Returns the object type as a string.
 
Base class for layouts, which can contain items such as maps, labels, scalebars, etc.
 
The class is used as a container of context for various read/write operations on other objects.
 
Represents a vector layer which manages a vector based data sets.