Index: src/DeltaShell/DeltaShell.Plugins.SharpMapGis.Gui/Commands/ZoomLayerCommand.cs =================================================================== diff -u -r8f6ae890fed8e8eae3a32f9c0498a10f82e0ddf9 -r5fc71a385897af92ccb092f2f969b5709afab85a --- src/DeltaShell/DeltaShell.Plugins.SharpMapGis.Gui/Commands/ZoomLayerCommand.cs (.../ZoomLayerCommand.cs) (revision 8f6ae890fed8e8eae3a32f9c0498a10f82e0ddf9) +++ src/DeltaShell/DeltaShell.Plugins.SharpMapGis.Gui/Commands/ZoomLayerCommand.cs (.../ZoomLayerCommand.cs) (revision 5fc71a385897af92ccb092f2f969b5709afab85a) @@ -9,30 +9,40 @@ { public class ZoomLayerCommand : MapViewCommand, IGuiCommand { + public IGui Gui { get; set; } + protected override void OnExecute(params object[] arguments) { // parameter 0 must be a layer - ILayer layer = (arguments[0] is ILayer)? arguments[0] as ILayer : null; - if (layer == null) return; + ILayer layer = (arguments[0] is ILayer) ? arguments[0] as ILayer : null; + if (layer == null) + { + return; + } var manager = Gui.DocumentViews; - + // find the correct mapview var mapView = manager.GetActiveViews().FirstOrDefault(v => Equals(v.Data, layer.Map)); if (mapView == null) + { return; + } var envelope = new Envelope(); - SharpMap.Map.GetLayers(new[] { layer }, false, false).ForEach(l => envelope.ExpandToInclude(l.Envelope)); + SharpMap.Map.GetLayers(new[] + { + layer + }, false, false).ForEach(l => envelope.ExpandToInclude(l.Envelope)); - if (envelope.IsNull) + if (envelope.IsNull) + { return; + } mapView.Map.ZoomToFit(envelope, true); mapView.MapControl.Refresh(); } - - public IGui Gui { get; set; } } } \ No newline at end of file