@@ -418,7 +418,8 @@ void QgsNodeTool::cadCanvasReleaseEvent( QgsMapMouseEvent *e )
418
418
QList<Vertex> nodes;
419
419
420
420
// for each editable layer, select nodes
421
- for ( QgsMapLayer *layer : canvas ()->layers () )
421
+ const auto layers = canvas ()->layers ();
422
+ for ( QgsMapLayer *layer : layers )
422
423
{
423
424
QgsVectorLayer *vlayer = qobject_cast<QgsVectorLayer *>( layer );
424
425
if ( !vlayer || !vlayer->isEditable () || !vlayer->isSpatial () )
@@ -615,7 +616,8 @@ QgsPointLocator::Match QgsNodeTool::snapToEditableLayer( QgsMapMouseEvent *e )
615
616
{
616
617
if ( currentVlayer->isEditable () )
617
618
{
618
- for ( QgsMapLayer *layer : canvas ()->layers () )
619
+ const auto layers = canvas ()->layers ();
620
+ for ( QgsMapLayer *layer : layers )
619
621
{
620
622
QgsVectorLayer *vlayer = qobject_cast<QgsVectorLayer *>( layer );
621
623
if ( !vlayer )
@@ -633,7 +635,8 @@ QgsPointLocator::Match QgsNodeTool::snapToEditableLayer( QgsMapMouseEvent *e )
633
635
// if there is no match from the current layer, try to use any editable vector layer
634
636
if ( !m.isValid () )
635
637
{
636
- for ( QgsMapLayer *layer : canvas ()->layers () )
638
+ const auto layers = canvas ()->layers ();
639
+ for ( QgsMapLayer *layer : layers )
637
640
{
638
641
QgsVectorLayer *vlayer = qobject_cast<QgsVectorLayer *>( layer );
639
642
if ( !vlayer )
@@ -1084,7 +1087,8 @@ void QgsNodeTool::startDraggingMoveVertex( const QgsPointXY &mapPoint, const Qgs
1084
1087
{
1085
1088
// support for topo editing - find extra features
1086
1089
// that have coincident point with the vertex being dragged
1087
- for ( QgsMapLayer *layer : canvas ()->layers () )
1090
+ const auto layers = canvas ()->layers ();
1091
+ for ( QgsMapLayer *layer : layers )
1088
1092
{
1089
1093
QgsVectorLayer *vlayer = qobject_cast<QgsVectorLayer *>( layer );
1090
1094
if ( !vlayer || !vlayer->isEditable () )
0 commit comments