Skip to content

Commit

Permalink
Massive Q_FOREACH to range-based-for conversion
Browse files Browse the repository at this point in the history
  • Loading branch information
m-kuhn committed Apr 5, 2019
1 parent 2bb049e commit 6958b7a
Show file tree
Hide file tree
Showing 105 changed files with 851 additions and 437 deletions.
6 changes: 4 additions & 2 deletions src/core/expression/qgsexpressioncontextutils.cpp
Expand Up @@ -325,7 +325,8 @@ QgsExpressionContextScope *QgsExpressionContextUtils::layerScope( const QgsMapLa
QStringList variableValues = layer->customProperty( QStringLiteral( "variableValues" ) ).toStringList();

int varIndex = 0;
Q_FOREACH ( const QString &variableName, variableNames )
const auto constVariableNames = variableNames;
for ( const QString &variableName : constVariableNames )
{
if ( varIndex >= variableValues.length() )
{
Expand Down Expand Up @@ -529,7 +530,8 @@ QgsExpressionContextScope *QgsExpressionContextUtils::layoutScope( const QgsLayo
QStringList variableValues = layout->customProperty( QStringLiteral( "variableValues" ) ).toStringList();

int varIndex = 0;
Q_FOREACH ( const QString &variableName, variableNames )
const auto constVariableNames = variableNames;
for ( const QString &variableName : constVariableNames )
{
if ( varIndex >= variableValues.length() )
{
Expand Down
9 changes: 6 additions & 3 deletions src/core/layertree/qgslayertree.cpp
Expand Up @@ -129,14 +129,16 @@ void QgsLayerTree::writeXml( QDomElement &parentElement, const QgsReadWriteConte

writeCommonXml( elem );

Q_FOREACH ( QgsLayerTreeNode *node, mChildren )
const auto constMChildren = mChildren;
for ( QgsLayerTreeNode *node : constMChildren )
node->writeXml( elem, context );

QDomElement customOrderElem = doc.createElement( QStringLiteral( "custom-order" ) );
customOrderElem.setAttribute( QStringLiteral( "enabled" ), mHasCustomLayerOrder ? 1 : 0 );
elem.appendChild( customOrderElem );

Q_FOREACH ( QgsMapLayer *layer, mCustomLayerOrder )
const auto constMCustomLayerOrder = mCustomLayerOrder;
for ( QgsMapLayer *layer : constMCustomLayerOrder )
{
// Safety belt, see https://issues.qgis.org/issues/19145
// Crash when deleting an item from the layout legend
Expand Down Expand Up @@ -186,7 +188,8 @@ void QgsLayerTree::nodeAddedChildren( QgsLayerTreeNode *node, int indexFrom, int
}
}

Q_FOREACH ( QgsMapLayer *layer, layers )
const auto constLayers = layers;
for ( QgsMapLayer *layer : constLayers )
{
if ( !mCustomLayerOrder.contains( layer ) && layer )
mCustomLayerOrder.append( layer );
Expand Down
33 changes: 22 additions & 11 deletions src/core/layertree/qgslayertreegroup.cpp
Expand Up @@ -138,7 +138,8 @@ void QgsLayerTreeGroup::removeChildNode( QgsLayerTreeNode *node )

void QgsLayerTreeGroup::removeLayer( QgsMapLayer *layer )
{
Q_FOREACH ( QgsLayerTreeNode *child, mChildren )
const auto constMChildren = mChildren;
for ( QgsLayerTreeNode *child : constMChildren )
{
if ( QgsLayerTree::isLayer( child ) )
{
Expand Down Expand Up @@ -201,7 +202,8 @@ QgsLayerTreeLayer *QgsLayerTreeGroup::findLayer( QgsMapLayer *layer ) const

QgsLayerTreeLayer *QgsLayerTreeGroup::findLayer( const QString &layerId ) const
{
Q_FOREACH ( QgsLayerTreeNode *child, mChildren )
const auto constMChildren = mChildren;
for ( QgsLayerTreeNode *child : constMChildren )
{
if ( QgsLayerTree::isLayer( child ) )
{
Expand All @@ -222,7 +224,8 @@ QgsLayerTreeLayer *QgsLayerTreeGroup::findLayer( const QString &layerId ) const
QList<QgsLayerTreeLayer *> QgsLayerTreeGroup::findLayers() const
{
QList<QgsLayerTreeLayer *> list;
Q_FOREACH ( QgsLayerTreeNode *child, mChildren )
const auto constMChildren = mChildren;
for ( QgsLayerTreeNode *child : constMChildren )
{
if ( QgsLayerTree::isLayer( child ) )
list << QgsLayerTree::toLayer( child );
Expand All @@ -234,7 +237,8 @@ QList<QgsLayerTreeLayer *> QgsLayerTreeGroup::findLayers() const

QgsLayerTreeGroup *QgsLayerTreeGroup::findGroup( const QString &name )
{
Q_FOREACH ( QgsLayerTreeNode *child, mChildren )
const auto constMChildren = mChildren;
for ( QgsLayerTreeNode *child : constMChildren )
{
if ( QgsLayerTree::isGroup( child ) )
{
Expand Down Expand Up @@ -310,7 +314,8 @@ void QgsLayerTreeGroup::writeXml( QDomElement &parentElement, const QgsReadWrite

writeCommonXml( elem );

Q_FOREACH ( QgsLayerTreeNode *node, mChildren )
const auto constMChildren = mChildren;
for ( QgsLayerTreeNode *node : constMChildren )
node->writeXml( elem, context );

parentElement.appendChild( elem );
Expand All @@ -336,7 +341,8 @@ QString QgsLayerTreeGroup::dump() const
{
QString header = QStringLiteral( "GROUP: %1 checked=%2 expanded=%3\n" ).arg( name() ).arg( mChecked ).arg( mExpanded );
QStringList childrenDump;
Q_FOREACH ( QgsLayerTreeNode *node, mChildren )
const auto constMChildren = mChildren;
for ( QgsLayerTreeNode *node : constMChildren )
childrenDump << node->dump().split( '\n' );
for ( int i = 0; i < childrenDump.count(); ++i )
childrenDump[i].prepend( " " );
Expand All @@ -350,7 +356,8 @@ QgsLayerTreeGroup *QgsLayerTreeGroup::clone() const

void QgsLayerTreeGroup::resolveReferences( const QgsProject *project, bool looseMatching )
{
Q_FOREACH ( QgsLayerTreeNode *node, mChildren )
const auto constMChildren = mChildren;
for ( QgsLayerTreeNode *node : constMChildren )
node->resolveReferences( project, looseMatching );
}

Expand Down Expand Up @@ -379,7 +386,8 @@ void QgsLayerTreeGroup::setIsMutuallyExclusive( bool enabled, int initialChildIn
{
// try to use first checked index
int index = 0;
Q_FOREACH ( QgsLayerTreeNode *child, mChildren )
const auto constMChildren = mChildren;
for ( QgsLayerTreeNode *child : constMChildren )
{
if ( _nodeIsChecked( child ) )
{
Expand All @@ -396,7 +404,8 @@ void QgsLayerTreeGroup::setIsMutuallyExclusive( bool enabled, int initialChildIn
QStringList QgsLayerTreeGroup::findLayerIds() const
{
QStringList lst;
Q_FOREACH ( QgsLayerTreeNode *child, mChildren )
const auto constMChildren = mChildren;
for ( QgsLayerTreeNode *child : constMChildren )
{
if ( QgsLayerTree::isGroup( child ) )
lst << QgsLayerTree::toGroup( child )->findLayerIds();
Expand Down Expand Up @@ -432,7 +441,8 @@ void QgsLayerTreeGroup::updateChildVisibilityMutuallyExclusive()
mChangingChildVisibility = true; // guard against running again setVisible() triggered from children

int index = 0;
Q_FOREACH ( QgsLayerTreeNode *child, mChildren )
const auto constMChildren = mChildren;
for ( QgsLayerTreeNode *child : constMChildren )
{
child->setItemVisibilityChecked( index == mMutuallyExclusiveChildIndex );
++index;
Expand All @@ -448,7 +458,8 @@ void QgsLayerTreeGroup::setItemVisibilityCheckedRecursive( bool checked )
mChangingChildVisibility = true; // guard against running again setVisible() triggered from children

int index = 0;
Q_FOREACH ( QgsLayerTreeNode *child, mChildren )
const auto constMChildren = mChildren;
for ( QgsLayerTreeNode *child : constMChildren )
{
child->setItemVisibilityCheckedRecursive( checked && ( mMutuallyExclusiveChildIndex < 0 || index == mMutuallyExclusiveChildIndex ) );
++index;
Expand Down
39 changes: 25 additions & 14 deletions src/core/layertree/qgslayertreemodel.cpp
Expand Up @@ -474,7 +474,8 @@ static bool _isChildOfNode( QgsLayerTreeNode *child, QgsLayerTreeNode *node )

static bool _isChildOfNodes( QgsLayerTreeNode *child, const QList<QgsLayerTreeNode *> &nodes )
{
Q_FOREACH ( QgsLayerTreeNode *n, nodes )
const auto constNodes = nodes;
for ( QgsLayerTreeNode *n : constNodes )
{
if ( _isChildOfNode( child, n ) )
return true;
Expand All @@ -487,7 +488,8 @@ static bool _isChildOfNodes( QgsLayerTreeNode *child, const QList<QgsLayerTreeNo
QList<QgsLayerTreeNode *> QgsLayerTreeModel::indexes2nodes( const QModelIndexList &list, bool skipInternal ) const
{
QList<QgsLayerTreeNode *> nodes;
Q_FOREACH ( const QModelIndex &index, list )
const auto constList = list;
for ( const QModelIndex &index : constList )
{
QgsLayerTreeNode *node = index2node( index );
if ( !node )
Expand All @@ -501,7 +503,8 @@ QList<QgsLayerTreeNode *> QgsLayerTreeModel::indexes2nodes( const QModelIndexLis

// remove any children of nodes if both parent node and children are selected
QList<QgsLayerTreeNode *> nodesFinal;
Q_FOREACH ( QgsLayerTreeNode *node, nodes )
const auto constNodes = nodes;
for ( QgsLayerTreeNode *node : constNodes )
{
if ( !_isChildOfNodes( node, nodes ) )
nodesFinal << node;
Expand Down Expand Up @@ -1039,7 +1042,8 @@ QMimeData *QgsLayerTreeModel::mimeData( const QModelIndexList &indexes ) const

QDomDocument doc;
QDomElement rootElem = doc.createElement( QStringLiteral( "layer_tree_model_data" ) );
Q_FOREACH ( QgsLayerTreeNode *node, nodesFinal )
const auto constNodesFinal = nodesFinal;
for ( QgsLayerTreeNode *node : constNodesFinal )
node->writeXml( rootElem, QgsReadWriteContext() );
doc.appendChild( rootElem );
QString txt = doc.toString();
Expand Down Expand Up @@ -1144,7 +1148,8 @@ QList<QgsLayerTreeModelLegendNode *> QgsLayerTreeModel::filterLegendNodes( const

if ( mLegendFilterByScale > 0 )
{
Q_FOREACH ( QgsLayerTreeModelLegendNode *node, nodes )
const auto constNodes = nodes;
for ( QgsLayerTreeModelLegendNode *node : constNodes )
{
if ( node->isScaleOK( mLegendFilterByScale ) )
filtered << node;
Expand All @@ -1154,7 +1159,8 @@ QList<QgsLayerTreeModelLegendNode *> QgsLayerTreeModel::filterLegendNodes( const
{
if ( !nodes.isEmpty() && mLegendFilterMapSettings->layers().contains( nodes.at( 0 )->layerNode()->layer() ) )
{
Q_FOREACH ( QgsLayerTreeModelLegendNode *node, nodes )
const auto constNodes = nodes;
for ( QgsLayerTreeModelLegendNode *node : constNodes )
{
QString ruleKey = node->data( QgsSymbolLegendNode::RuleKeyRole ).toString();
bool checked = mLegendFilterUsesExtent || node->data( Qt::CheckStateRole ).toInt() == Qt::Checked;
Expand Down Expand Up @@ -1190,7 +1196,8 @@ QList<QgsLayerTreeModelLegendNode *> QgsLayerTreeModel::filterLegendNodes( const

void QgsLayerTreeModel::legendCleanup()
{
Q_FOREACH ( const LayerLegendData &data, mLegend )
const auto constMLegend = mLegend;
for ( const LayerLegendData &data : constMLegend )
{
qDeleteAll( data.originalNodes );
delete data.tree;
Expand Down Expand Up @@ -1242,7 +1249,8 @@ void QgsLayerTreeModel::addLegendToLayer( QgsLayerTreeLayer *nodeL )

QList<QgsLayerTreeModelLegendNode *> filteredLstNew = filterLegendNodes( lstNew );

Q_FOREACH ( QgsLayerTreeModelLegendNode *n, lstNew )
const auto constLstNew = lstNew;
for ( QgsLayerTreeModelLegendNode *n : constLstNew )
{
n->setParent( this );
connect( n, &QgsLayerTreeModelLegendNode::dataChanged, this, &QgsLayerTreeModel::legendNodeDataChanged );
Expand All @@ -1252,7 +1260,8 @@ void QgsLayerTreeModel::addLegendToLayer( QgsLayerTreeLayer *nodeL )
// Legend node embedded in parent does not have to be the first one,
// there can be also nodes generated for embedded widgets
QgsLayerTreeModelLegendNode *embeddedNode = nullptr;
Q_FOREACH ( QgsLayerTreeModelLegendNode *legendNode, filteredLstNew )
const auto constFilteredLstNew = filteredLstNew;
for ( QgsLayerTreeModelLegendNode *legendNode : constFilteredLstNew )
{
if ( legendNode->isEmbeddedInParent() )
{
Expand Down Expand Up @@ -1292,7 +1301,7 @@ QgsLayerTreeModel::LayerLegendTree *QgsLayerTreeModel::tryBuildLegendTree( const
{
// first check whether there are any legend nodes that are not top-level
bool hasParentKeys = false;
Q_FOREACH ( QgsLayerTreeModelLegendNode *n, nodes )
for ( QgsLayerTreeModelLegendNode *n : nodes )
{
if ( !n->data( QgsLayerTreeModelLegendNode::ParentRuleKeyRole ).toString().isEmpty() )
{
Expand All @@ -1306,7 +1315,7 @@ QgsLayerTreeModel::LayerLegendTree *QgsLayerTreeModel::tryBuildLegendTree( const
// make mapping from rules to nodes and do some sanity checks
QHash<QString, QgsLayerTreeModelLegendNode *> rule2node;
rule2node[QString()] = nullptr;
Q_FOREACH ( QgsLayerTreeModelLegendNode *n, nodes )
for ( QgsLayerTreeModelLegendNode *n : nodes )
{
QString ruleKey = n->data( QgsLayerTreeModelLegendNode::RuleKeyRole ).toString();
if ( ruleKey.isEmpty() ) // in tree all nodes must have key
Expand All @@ -1318,7 +1327,7 @@ QgsLayerTreeModel::LayerLegendTree *QgsLayerTreeModel::tryBuildLegendTree( const

// create the tree structure
LayerLegendTree *tree = new LayerLegendTree;
Q_FOREACH ( QgsLayerTreeModelLegendNode *n, nodes )
for ( QgsLayerTreeModelLegendNode *n : nodes )
{
QString parentRuleKey = n->data( QgsLayerTreeModelLegendNode::ParentRuleKeyRole ).toString();
QgsLayerTreeModelLegendNode *parent = rule2node.value( parentRuleKey, nullptr );
Expand Down Expand Up @@ -1541,7 +1550,8 @@ void QgsLayerTreeModel::invalidateLegendMapBasedData()

std::unique_ptr<QgsRenderContext> context( createTemporaryRenderContext() );

Q_FOREACH ( const LayerLegendData &data, mLegend )
const auto constMLegend = mLegend;
for ( const LayerLegendData &data : constMLegend )
{
QList<QgsSymbolLegendNode *> symbolNodes;
QMap<QString, int> widthMax;
Expand All @@ -1557,7 +1567,8 @@ void QgsLayerTreeModel::invalidateLegendMapBasedData()
symbolNodes.append( n );
}
}
Q_FOREACH ( QgsSymbolLegendNode *n, symbolNodes )
const auto constSymbolNodes = symbolNodes;
for ( QgsSymbolLegendNode *n : constSymbolNodes )
{
const QString parentKey( n->data( QgsLayerTreeModelLegendNode::ParentRuleKeyRole ).toString() );
Q_ASSERT( widthMax[parentKey] > 0 );
Expand Down
9 changes: 6 additions & 3 deletions src/core/layertree/qgslayertreenode.cpp
Expand Up @@ -109,7 +109,8 @@ bool QgsLayerTreeNode::isItemVisibilityCheckedRecursive() const
{
if ( !mChecked )
return false;
Q_FOREACH ( QgsLayerTreeNode *child, mChildren )
const auto constMChildren = mChildren;
for ( QgsLayerTreeNode *child : constMChildren )
{
if ( !child->isItemVisibilityCheckedRecursive() )
return false;
Expand All @@ -122,7 +123,8 @@ bool QgsLayerTreeNode::isItemVisibilityUncheckedRecursive() const
{
if ( mChecked )
return false;
Q_FOREACH ( QgsLayerTreeNode *child, mChildren )
const auto constMChildren = mChildren;
for ( QgsLayerTreeNode *child : constMChildren )
{
if ( !child->isItemVisibilityUncheckedRecursive() )
return false;
Expand Down Expand Up @@ -199,7 +201,8 @@ void QgsLayerTreeNode::insertChildrenPrivate( int index, QList<QgsLayerTreeNode
if ( nodes.isEmpty() )
return;

Q_FOREACH ( QgsLayerTreeNode *node, nodes )
const auto constNodes = nodes;
for ( QgsLayerTreeNode *node : constNodes )
{
Q_ASSERT( !node->mParent );
node->mParent = this;
Expand Down
9 changes: 6 additions & 3 deletions src/core/layertree/qgslayertreeregistrybridge.cpp
Expand Up @@ -49,7 +49,8 @@ void QgsLayerTreeRegistryBridge::layersAdded( const QList<QgsMapLayer *> &layers
return;

QList<QgsLayerTreeNode *> nodes;
Q_FOREACH ( QgsMapLayer *layer, layers )
const auto constLayers = layers;
for ( QgsMapLayer *layer : constLayers )
{
QgsLayerTreeLayer *nodeLayer = new QgsLayerTreeLayer( layer );
nodeLayer->setItemVisibilityChecked( mNewLayersVisible );
Expand Down Expand Up @@ -83,7 +84,8 @@ void QgsLayerTreeRegistryBridge::layersWillBeRemoved( const QStringList &layerId
// the registry _again_ in groupRemovedChildren() - this prevents it
mRegistryRemovingLayers = true;

Q_FOREACH ( const QString &layerId, layerIds )
const auto constLayerIds = layerIds;
for ( const QString &layerId : constLayerIds )
{
QgsLayerTreeLayer *nodeLayer = mRoot->findLayer( layerId );
if ( nodeLayer )
Expand Down Expand Up @@ -131,7 +133,8 @@ void QgsLayerTreeRegistryBridge::groupRemovedChildren()
// remove only those that really do not exist in the tree
// (ignores layers that were dragged'n'dropped: 1. drop new 2. remove old)
QStringList toRemove;
Q_FOREACH ( const QString &layerId, mLayerIdsForRemoval )
const auto constMLayerIdsForRemoval = mLayerIdsForRemoval;
for ( const QString &layerId : constMLayerIdsForRemoval )
if ( !mRoot->findLayer( layerId ) )
toRemove << layerId;
mLayerIdsForRemoval.clear();
Expand Down
12 changes: 8 additions & 4 deletions src/core/layertree/qgslayertreeutils.cpp
Expand Up @@ -93,7 +93,8 @@ bool QgsLayerTreeUtils::readOldLegendLayerOrder( const QDomElement &legendElem,
if ( !res && hasCustomOrder )
return false; // invalid state

Q_FOREACH ( const QString &layerId, layerIndexes )
const auto constLayerIndexes = layerIndexes;
for ( const QString &layerId : constLayerIndexes )
{
QgsDebugMsg( layerId );
order.append( layerId );
Expand Down Expand Up @@ -262,7 +263,8 @@ static void _readOldLegendLayer( const QDomElement &layerElem, QgsLayerTreeGroup

bool QgsLayerTreeUtils::layersEditable( const QList<QgsLayerTreeLayer *> &layerNodes )
{
Q_FOREACH ( QgsLayerTreeLayer *layerNode, layerNodes )
const auto constLayerNodes = layerNodes;
for ( QgsLayerTreeLayer *layerNode : constLayerNodes )
{
QgsVectorLayer *vl = qobject_cast<QgsVectorLayer *>( layerNode->layer() );
if ( !vl )
Expand All @@ -276,7 +278,8 @@ bool QgsLayerTreeUtils::layersEditable( const QList<QgsLayerTreeLayer *> &layerN

bool QgsLayerTreeUtils::layersModified( const QList<QgsLayerTreeLayer *> &layerNodes )
{
Q_FOREACH ( QgsLayerTreeLayer *layerNode, layerNodes )
const auto constLayerNodes = layerNodes;
for ( QgsLayerTreeLayer *layerNode : constLayerNodes )
{
QgsVectorLayer *vl = qobject_cast<QgsVectorLayer *>( layerNode->layer() );
if ( !vl )
Expand All @@ -302,7 +305,8 @@ void QgsLayerTreeUtils::removeInvalidLayers( QgsLayerTreeGroup *group )
}
}

Q_FOREACH ( QgsLayerTreeNode *node, nodesToRemove )
const auto constNodesToRemove = nodesToRemove;
for ( QgsLayerTreeNode *node : constNodesToRemove )
group->removeChildNode( node );
}

Expand Down

0 comments on commit 6958b7a

Please sign in to comment.