@@ -1756,8 +1756,9 @@ void QgisApp::dropEvent( QDropEvent *event )
1756
1756
1757
1757
void QgisApp::annotationCreated( QgsAnnotation *annotation )
1758
1758
{
1759
+ const auto canvases = mapCanvases();
1759
1760
// create canvas annotation item for annotation
1760
- Q_FOREACH ( QgsMapCanvas *canvas, mapCanvases() )
1761
+ for ( QgsMapCanvas *canvas : canvases )
1761
1762
{
1762
1763
QgsMapCanvasAnnotationItem *canvasItem = new QgsMapCanvasAnnotationItem( annotation, canvas );
1763
1764
Q_UNUSED( canvasItem ); //item is already added automatically to canvas scene
@@ -3469,7 +3470,8 @@ void QgisApp::setupConnections()
3469
3470
3470
3471
connect( mRenderSuppressionCBox, &QAbstractButton::toggled, this, [ = ]( bool flag )
3471
3472
{
3472
- Q_FOREACH ( QgsMapCanvas *canvas, mapCanvases() )
3473
+ const auto canvases = mapCanvases();
3474
+ for ( QgsMapCanvas *canvas : canvases )
3473
3475
canvas->setRenderFlag( flag );
3474
3476
if ( !flag )
3475
3477
canvasRefreshFinished(); // deals with the busy indicator in case of ongoing rendering
@@ -3829,7 +3831,8 @@ QgsMapCanvas *QgisApp::createNewMapCanvas( const QString &name )
3829
3831
3830
3832
QgsMapCanvasDockWidget *QgisApp::createNewMapCanvasDock( const QString &name )
3831
3833
{
3832
- Q_FOREACH ( QgsMapCanvas *canvas, mapCanvases() )
3834
+ const auto canvases = mapCanvases();
3835
+ for ( QgsMapCanvas *canvas : canvases )
3833
3836
{
3834
3837
if ( canvas->objectName() == name )
3835
3838
{
@@ -3897,7 +3900,8 @@ void QgisApp::setupDockWidget( QDockWidget *dockWidget, bool isFloating, QRect d
3897
3900
3898
3901
void QgisApp::closeMapCanvas( const QString &name )
3899
3902
{
3900
- Q_FOREACH ( QgsMapCanvasDockWidget *w, findChildren< QgsMapCanvasDockWidget * >() )
3903
+ const auto dockWidgets = findChildren< QgsMapCanvasDockWidget * >();
3904
+ for ( QgsMapCanvasDockWidget *w : dockWidgets )
3901
3905
{
3902
3906
if ( w->mapCanvas()->objectName() == name )
3903
3907
{
@@ -3911,7 +3915,8 @@ void QgisApp::closeMapCanvas( const QString &name )
3911
3915
void QgisApp::closeAdditionalMapCanvases()
3912
3916
{
3913
3917
freezeCanvases( true ); // closing docks may cause canvases to resize, and we don't want a map refresh occurring
3914
- Q_FOREACH ( QgsMapCanvasDockWidget *w, findChildren< QgsMapCanvasDockWidget * >() )
3918
+ const auto dockWidgets = findChildren< QgsMapCanvasDockWidget * >();
3919
+ for ( QgsMapCanvasDockWidget *w : dockWidgets )
3915
3920
{
3916
3921
w->close();
3917
3922
delete w;
@@ -3933,7 +3938,8 @@ void QgisApp::closeAdditional3DMapCanvases()
3933
3938
3934
3939
void QgisApp::freezeCanvases( bool frozen )
3935
3940
{
3936
- Q_FOREACH ( QgsMapCanvas *canvas, mapCanvases() )
3941
+ const auto canvases = mapCanvases();
3942
+ for ( QgsMapCanvas *canvas : canvases )
3937
3943
{
3938
3944
canvas->freeze( frozen );
3939
3945
}
@@ -6926,7 +6932,8 @@ void QgisApp::removeWindow( QAction *action )
6926
6932
6927
6933
void QgisApp::stopRendering()
6928
6934
{
6929
- Q_FOREACH ( QgsMapCanvas *canvas, mapCanvases() )
6935
+ const auto canvases = mapCanvases();
6936
+ for ( QgsMapCanvas *canvas : canvases )
6930
6937
canvas->stopRendering();
6931
6938
}
6932
6939
@@ -7266,7 +7273,8 @@ void QgisApp::modifyAnnotation()
7266
7273
7267
7274
void QgisApp::reprojectAnnotations()
7268
7275
{
7269
- Q_FOREACH ( QgsMapCanvasAnnotationItem *annotation, annotationItems() )
7276
+ const auto annotations = annotationItems();
7277
+ for ( QgsMapCanvasAnnotationItem *annotation : annotations )
7270
7278
{
7271
7279
annotation->updatePosition();
7272
7280
}
@@ -9393,7 +9401,8 @@ void QgisApp::copyFeatures( QgsFeatureStore &featureStore )
9393
9401
9394
9402
void QgisApp::refreshMapCanvas()
9395
9403
{
9396
- Q_FOREACH ( QgsMapCanvas *canvas, mapCanvases() )
9404
+ const auto canvases = mapCanvases();
9405
+ for ( QgsMapCanvas *canvas : canvases )
9397
9406
{
9398
9407
//stop any current rendering
9399
9408
canvas->stopRendering();
@@ -9666,7 +9675,8 @@ void QgisApp::saveAllEdits( bool verifyAction )
9666
9675
return;
9667
9676
}
9668
9677
9669
- Q_FOREACH ( QgsMapLayer *layer, editableLayers( true ) )
9678
+ const auto layers = editableLayers( true );
9679
+ for ( QgsMapLayer *layer : layers )
9670
9680
{
9671
9681
saveEdits( layer, true, false );
9672
9682
}
@@ -9693,7 +9703,8 @@ void QgisApp::rollbackAllEdits( bool verifyAction )
9693
9703
return;
9694
9704
}
9695
9705
9696
- Q_FOREACH ( QgsMapLayer *layer, editableLayers( true ) )
9706
+ const auto layers = editableLayers( true );
9707
+ for ( QgsMapLayer *layer : layers )
9697
9708
{
9698
9709
cancelEdits( layer, true, false );
9699
9710
}
@@ -9720,7 +9731,8 @@ void QgisApp::cancelAllEdits( bool verifyAction )
9720
9731
return;
9721
9732
}
9722
9733
9723
- Q_FOREACH ( QgsMapLayer *layer, editableLayers() )
9734
+ const auto layers = editableLayers();
9735
+ for ( QgsMapLayer *layer : layers )
9724
9736
{
9725
9737
cancelEdits( layer, false, false );
9726
9738
}
@@ -10758,7 +10770,8 @@ void QgisApp::showOptionsDialog( QWidget *parent, const QString ¤tPage, in
10758
10770
10759
10771
setupLayerTreeViewFromSettings();
10760
10772
10761
- Q_FOREACH ( QgsMapCanvas *canvas, mapCanvases() )
10773
+ const auto canvases = mapCanvases();
10774
+ for ( QgsMapCanvas *canvas : canvases )
10762
10775
{
10763
10776
applyDefaultSettingsToCanvas( canvas );
10764
10777
}
@@ -10773,7 +10786,7 @@ void QgisApp::showOptionsDialog( QWidget *parent, const QString ¤tPage, in
10773
10786
}
10774
10787
10775
10788
//do we need this? TS
10776
- Q_FOREACH ( QgsMapCanvas *canvas, mapCanvases() )
10789
+ for ( QgsMapCanvas *canvas : canvases )
10777
10790
{
10778
10791
canvas->refresh();
10779
10792
}
@@ -13120,12 +13133,13 @@ void QgisApp::renameView()
13120
13133
13121
13134
// calculate existing names
13122
13135
QStringList names;
13123
- Q_FOREACH ( QgsMapCanvas *c, mapCanvases() )
13136
+ const auto canvases = mapCanvases();
13137
+ for ( QgsMapCanvas *canvas : canvases )
13124
13138
{
13125
- if ( c == view->mapCanvas() )
13139
+ if ( canvas == view->mapCanvas() )
13126
13140
continue;
13127
13141
13128
- names << c ->objectName();
13142
+ names << canvas ->objectName();
13129
13143
}
13130
13144
13131
13145
QString currentName = view->mapCanvas()->objectName();
@@ -13693,7 +13707,8 @@ void QgisApp::writeProject( QDomDocument &doc )
13693
13707
13694
13708
// Save the position of the map view docks
13695
13709
QDomElement mapViewNode = doc.createElement( QStringLiteral( "mapViewDocks" ) );
13696
- Q_FOREACH ( QgsMapCanvasDockWidget *w, findChildren< QgsMapCanvasDockWidget * >() )
13710
+ const auto dockWidgets = findChildren< QgsMapCanvasDockWidget * >();
13711
+ for ( QgsMapCanvasDockWidget *w : dockWidgets )
13697
13712
{
13698
13713
QDomElement node = doc.createElement( QStringLiteral( "view" ) );
13699
13714
node.setAttribute( QStringLiteral( "name" ), w->mapCanvas()->objectName() );
0 commit comments