70 Q_PROPERTY(
bool freeze READ freeze WRITE setFreeze NOTIFY freezeChanged )
77 Q_PROPERTY(
bool isRendering READ isRendering NOTIFY isRenderingChanged )
84 Q_PROPERTY(
int mapUpdateInterval READ mapUpdateInterval WRITE setMapUpdateInterval NOTIFY mapUpdateIntervalChanged )
89 Q_PROPERTY(
bool incrementalRendering READ incrementalRendering WRITE setIncrementalRendering NOTIFY incrementalRenderingChanged )
96 QSGNode *updatePaintNode( QSGNode *oldNode, QQuickItem::UpdatePaintNodeData * ) override;
105 void setFreeze(
bool freeze );
108 bool isRendering() const;
111 int mapUpdateInterval() const;
114 void setMapUpdateInterval(
int mapUpdateInterval );
117 bool incrementalRendering() const;
120 void setIncrementalRendering(
bool incrementalRendering );
127 void renderStarting();
132 void mapCanvasRefreshed();
135 void freezeChanged();
138 void isRenderingChanged();
141 void mapUpdateIntervalChanged();
144 void incrementalRenderingChanged();
147#if QT_VERSION < QT_VERSION_CHECK( 6, 0, 0 )
148 void geometryChanged(
const QRectF &newGeometry,
const QRectF &oldGeometry )
override;
150 void geometryChange(
const QRectF &newGeometry,
const QRectF &oldGeometry )
override;
155 void stopRendering();
160 void zoom( QPointF center, qreal scale );
165 void pan( QPointF oldPos, QPointF newPos );
180 void renderJobUpdated();
181 void renderJobFinished();
182 void layerRepaintRequested(
bool deferred );
183 void onWindowChanged( QQuickWindow *window );
184 void onScreenChanged( QScreen *screen );
185 void onExtentChanged();
186 void onLayersChanged();
187 void onTemporalStateChanged();
196 void updateTransform();
197 void zoomToFullExtent();
198 void clearTemporalCache();
200 std::unique_ptr<QgsQuickMapSettings> mMapSettings;
201 bool mPinching =
false;
202 QPoint mPinchStartPoint;
204 std::unique_ptr<QgsMapRendererCache> mCache;
208 QTimer mRefreshTimer;
210 bool mFreeze =
false;
211 QList<QMetaObject::Connection> mLayerConnections;
212 QTimer mMapUpdateTimer;
213 bool mIncrementalRendering =
false;
214 bool mSilentRefresh =
false;
215 bool mDeferredRefreshPending =
false;
217 QQuickWindow *mWindow =
nullptr;