71 Q_PROPERTY(
bool freeze READ freeze WRITE setFreeze NOTIFY freezeChanged )
78 Q_PROPERTY(
bool isRendering READ isRendering NOTIFY isRenderingChanged )
85 Q_PROPERTY(
int mapUpdateInterval READ mapUpdateInterval WRITE setMapUpdateInterval NOTIFY mapUpdateIntervalChanged )
90 Q_PROPERTY(
bool incrementalRendering READ incrementalRendering WRITE setIncrementalRendering NOTIFY incrementalRenderingChanged )
97 QSGNode *updatePaintNode( QSGNode *oldNode, QQuickItem::UpdatePaintNodeData * ) override;
106 void setFreeze(
bool freeze );
109 bool isRendering() const;
112 int mapUpdateInterval() const;
115 void setMapUpdateInterval(
int mapUpdateInterval );
118 bool incrementalRendering() const;
121 void setIncrementalRendering(
bool incrementalRendering );
128 void renderStarting();
133 void mapCanvasRefreshed();
136 void freezeChanged();
139 void isRenderingChanged();
142 void mapUpdateIntervalChanged();
145 void incrementalRenderingChanged();
148#if QT_VERSION < QT_VERSION_CHECK( 6, 0, 0 )
149 void geometryChanged(
const QRectF &newGeometry,
const QRectF &oldGeometry )
override;
151 void geometryChange(
const QRectF &newGeometry,
const QRectF &oldGeometry )
override;
156 void stopRendering();
161 void zoom( QPointF center, qreal scale );
166 void pan( QPointF oldPos, QPointF newPos );
181 void renderJobUpdated();
182 void renderJobFinished();
183 void layerRepaintRequested(
bool deferred );
184 void onWindowChanged( QQuickWindow *window );
185 void onScreenChanged( QScreen *screen );
186 void onExtentChanged();
187 void onLayersChanged();
188 void onTemporalStateChanged();
189 void onzRangeChanged();
192 enum class CacheInvalidationType
203 void updateTransform();
204 void zoomToFullExtent();
206 void clearTemporalCache();
207 void clearElevationCache();
208 QFlags<CacheInvalidationType> mCacheInvalidations;
210 std::unique_ptr<QgsQuickMapSettings> mMapSettings;
211 bool mPinching =
false;
212 QPoint mPinchStartPoint;
214 std::unique_ptr<QgsMapRendererCache> mCache;
218 QTimer mRefreshTimer;
220 bool mFreeze =
false;
221 QList<QMetaObject::Connection> mLayerConnections;
222 QTimer mMapUpdateTimer;
223 bool mIncrementalRendering =
false;
224 bool mSilentRefresh =
false;
225 bool mDeferredRefreshPending =
false;
227 QQuickWindow *mWindow =
nullptr;