@@ -14623,10 +14623,10 @@ void QgisApp::updateLabelToolButtons()
14623
14623
14624
14624
bool QgisApp::selectedLayersHaveSelection()
14625
14625
{
14626
- QList<QgsMapLayer *> layers = mLayerTreeView->selectedLayers();
14626
+ const QList<QgsMapLayer *> layers = mLayerTreeView->selectedLayers();
14627
14627
14628
14628
// If no selected layers, use active layer
14629
- if ( layers.size () == 0 )
14629
+ if ( layers.empty () && activeLayer() )
14630
14630
{
14631
14631
if ( QgsVectorLayer *layer = qobject_cast<QgsVectorLayer *>( activeLayer() ) )
14632
14632
return layer->selectedFeatureCount() > 0;
@@ -14647,10 +14647,10 @@ bool QgisApp::selectedLayersHaveSelection()
14647
14647
14648
14648
bool QgisApp::selectedLayersHaveSpatial()
14649
14649
{
14650
- QList<QgsMapLayer *> layers = mLayerTreeView->selectedLayers();
14650
+ const QList<QgsMapLayer *> layers = mLayerTreeView->selectedLayers();
14651
14651
14652
14652
// If no selected layers, use active layer
14653
- if ( layers.size () == 0 )
14653
+ if ( layers.empty () && activeLayer() )
14654
14654
return activeLayer()->isSpatial();
14655
14655
14656
14656
for ( QgsMapLayer *mapLayer : layers )
@@ -14666,12 +14666,14 @@ bool QgisApp::selectedLayersHaveSpatial()
14666
14666
14667
14667
void QgisApp::activateDeactivateMultipleLayersRelatedActions()
14668
14668
{
14669
+ // these actions are enabled whenever ANY selected layer is spatial
14669
14670
const bool hasSpatial = selectedLayersHaveSpatial();
14670
- const bool hasSelection = selectedLayersHaveSelection();
14671
-
14672
14671
mActionZoomToLayers->setEnabled( hasSpatial );
14673
- mActionZoomToSelected->setEnabled( hasSelection );
14674
14672
mActionPanToSelected->setEnabled( hasSpatial );
14673
+
14674
+ // this action is enabled whenever ANY selected layer has a selection
14675
+ const bool hasSelection = selectedLayersHaveSelection();
14676
+ mActionZoomToSelected->setEnabled( hasSelection );
14675
14677
}
14676
14678
14677
14679
void QgisApp::activateDeactivateLayerRelatedActions( QgsMapLayer *layer )
0 commit comments