Skip to content

Commit

Permalink
Changed to range based for. Also typo
Browse files Browse the repository at this point in the history
  • Loading branch information
uclaros authored and nyalldawson committed Apr 4, 2020
1 parent 6aca7b6 commit 595b5dc
Showing 1 changed file with 8 additions and 7 deletions.
15 changes: 8 additions & 7 deletions src/gui/layertree/qgslayertreeviewdefaultactions.cpp
Expand Up @@ -437,25 +437,26 @@ void QgsLayerTreeViewDefaultActions::moveOutOfGroup()
void QgsLayerTreeViewDefaultActions::moveToTop()
{
QList< QgsLayerTreeNode * > selectedNodes = mView->selectedNodes();
// sort the nodes by depth first to avoid moving a group before it's contents
std::reverse( selectedNodes.begin(), selectedNodes.end() );
// sort the nodes by depth first to avoid moving a group before its contents
std::stable_sort( selectedNodes.begin(), selectedNodes.end(), []( const QgsLayerTreeNode * a, const QgsLayerTreeNode * b )
{
return a->depth() < b->depth();
return a->depth() > b->depth();
} );
for ( auto it = selectedNodes.rbegin(); it < selectedNodes.rend(); ++it )
for ( QgsLayerTreeNode *n : qgis::as_const( selectedNodes ) )
{
QgsLayerTreeGroup *parentGroup = qobject_cast<QgsLayerTreeGroup *>( ( *it )->parent() );
QgsLayerTreeNode *clonedNode = ( *it )->clone();
QgsLayerTreeGroup *parentGroup = qobject_cast<QgsLayerTreeGroup *>( n->parent() );
QgsLayerTreeNode *clonedNode = n->clone();
parentGroup->insertChildNode( 0, clonedNode );
parentGroup->removeChildNode( ( *it ) );
parentGroup->removeChildNode( n );
}
}


void QgsLayerTreeViewDefaultActions::moveToBottom()
{
QList< QgsLayerTreeNode * > selectedNodes = mView->selectedNodes();
// sort the nodes by depth first to avoid moving a group before it's contents
// sort the nodes by depth first to avoid moving a group before its contents
std::stable_sort( selectedNodes.begin(), selectedNodes.end(), []( const QgsLayerTreeNode * a, const QgsLayerTreeNode * b )
{
return a->depth() > b->depth();
Expand Down

0 comments on commit 595b5dc

Please sign in to comment.