16 #ifndef QGSMAPRENDERERSTAGEDRENDERJOB_H
17 #define QGSMAPRENDERERSTAGEDRENDERJOB_H
19 #include "qgis_core.h"
42 RenderLabelsByMapLayer = 0x01,
44 Q_DECLARE_FLAGS( Flags, Flag )
77 bool renderCurrentPart( QPainter *painter );
90 bool isFinished() const;
95 QString currentLayerId() const;
102 double currentLayerOpacity() const;
109 QPainter::CompositionMode currentLayerCompositionMode() const;
114 RenderStage currentStage() const;
118 void startPrivate() override;
122 LayerRenderJobs mLayerJobs;
123 LabelRenderJob mLabelJob;
124 LayerRenderJobs::iterator mJobIt;
126 bool mNextIsLabel = false;
127 bool mExportedLabels = false;
128 Flags mFlags = Flags();
129 bool mPreparedStagedLabelJob = false;
130 QStringList mLabelingLayers;
131 QStringList::iterator mLabelLayerIt;
The QgsLabelingEngine class provides map labeling functionality.
Class that stores computed placement from labeling engine.
Abstract base class for map renderer jobs which use custom painters.
virtual void waitForFinished()=0
Block until the job has finished.
virtual QgsLabelingResults * takeLabelingResults()=0
Gets pointer to internal labeling engine (in order to get access to the results).
virtual bool usedCachedLabels() const =0
Returns true if the render job was able to use a cached labeling solution.
virtual bool isActive() const =0
Tell whether the rendering job is currently running in background.
virtual void cancel()=0
Stop the rendering job - does not return until the job has terminated.
virtual void cancelWithoutBlocking()=0
Triggers cancellation of the rendering job without blocking.
Render job implementation that renders maps in stages, allowing different stages (e....
Flag
Flags which control the staged render job behavior.
RenderStage
Represents the stages of a rendering job.
@ Finished
Rendering is finished.
@ Symbology
Rendering layer symbology.
@ Labels
Rendering labels.
The QgsMapSettings class contains configuration for rendering of the map.
std::unique_ptr< GEOSGeometry, GeosDeleter > unique_ptr
Scoped GEOS pointer.