From 9df04db892ac3bfcd08689b8be11ef7f87fac45c Mon Sep 17 00:00:00 2001 From: ClemensFischer Date: Sat, 18 May 2024 20:24:04 +0200 Subject: [PATCH] Update MapBase.cs --- MapControl/Shared/MapBase.cs | 104 +++++++++++++++++------------------ 1 file changed, 52 insertions(+), 52 deletions(-) diff --git a/MapControl/Shared/MapBase.cs b/MapControl/Shared/MapBase.cs index 8dbeb50c..02499f67 100644 --- a/MapControl/Shared/MapBase.cs +++ b/MapControl/Shared/MapBase.cs @@ -425,6 +425,58 @@ namespace MapControl return longitude; } + private void SetValueInternal(DependencyProperty property, object value) + { + internalPropertyChange = true; + + SetValue(property, value); + + internalPropertyChange = false; + } + + private void AdjustCenterProperty(DependencyProperty property, ref Location center) + { + var c = center; + + if (center == null) + { + center = new Location(); + } + else if ( + center.Latitude < -maxLatitude || center.Latitude > maxLatitude || + center.Longitude < -180d || center.Longitude > 180d) + { + center = new Location( + Math.Min(Math.Max(center.Latitude, -maxLatitude), maxLatitude), + Location.NormalizeLongitude(center.Longitude)); + } + + if (center != c) + { + SetValueInternal(property, center); + } + } + + private void AdjustZoomLevelProperty(DependencyProperty property, ref double zoomLevel) + { + if (zoomLevel < MinZoomLevel || zoomLevel > MaxZoomLevel) + { + zoomLevel = Math.Min(Math.Max(zoomLevel, MinZoomLevel), MaxZoomLevel); + + SetValueInternal(property, zoomLevel); + } + } + + private void AdjustHeadingProperty(DependencyProperty property, ref double heading) + { + if (heading < 0d || heading > 360d) + { + heading = ((heading % 360d) + 360d) % 360d; + + SetValueInternal(property, heading); + } + } + private void MapLayerPropertyChanged(UIElement oldLayer, UIElement newLayer) { if (oldLayer != null) @@ -489,29 +541,6 @@ namespace MapControl UpdateTransform(); } - private void AdjustCenterProperty(DependencyProperty property, ref Location center) - { - var c = center; - - if (center == null) - { - center = new Location(); - } - else if ( - center.Latitude < -maxLatitude || center.Latitude > maxLatitude || - center.Longitude < -180d || center.Longitude > 180d) - { - center = new Location( - Math.Min(Math.Max(center.Latitude, -maxLatitude), maxLatitude), - Location.NormalizeLongitude(center.Longitude)); - } - - if (center != c) - { - SetValueInternal(property, center); - } - } - private void CenterPropertyChanged(Location center) { if (!internalPropertyChange) @@ -604,16 +633,6 @@ namespace MapControl } } - private void AdjustZoomLevelProperty(DependencyProperty property, ref double zoomLevel) - { - if (zoomLevel < MinZoomLevel || zoomLevel > MaxZoomLevel) - { - zoomLevel = Math.Min(Math.Max(zoomLevel, MinZoomLevel), MaxZoomLevel); - - SetValueInternal(property, zoomLevel); - } - } - private void ZoomLevelPropertyChanged(double zoomLevel) { if (!internalPropertyChange) @@ -669,16 +688,6 @@ namespace MapControl } } - private void AdjustHeadingProperty(DependencyProperty property, ref double heading) - { - if (heading < 0d || heading > 360d) - { - heading = ((heading % 360d) + 360d) % 360d; - - SetValueInternal(property, heading); - } - } - private void HeadingPropertyChanged(double heading) { if (!internalPropertyChange) @@ -745,15 +754,6 @@ namespace MapControl } } - private void SetValueInternal(DependencyProperty property, object value) - { - internalPropertyChange = true; - - SetValue(property, value); - - internalPropertyChange = false; - } - private void UpdateTransform(bool resetTransformCenter = false, bool projectionChanged = false) { var transformCenterChanged = false;