diff --git a/Caching/FileDbCache/Properties/AssemblyInfo.cs b/Caching/FileDbCache/Properties/AssemblyInfo.cs
index 5433b719..be8c9071 100644
--- a/Caching/FileDbCache/Properties/AssemblyInfo.cs
+++ b/Caching/FileDbCache/Properties/AssemblyInfo.cs
@@ -8,8 +8,8 @@ using System.Runtime.InteropServices;
[assembly: AssemblyCompany("Clemens Fischer")]
[assembly: AssemblyCopyright("Copyright © Clemens Fischer 2012-2013")]
[assembly: AssemblyTrademark("")]
-[assembly: AssemblyVersion("1.3.0")]
-[assembly: AssemblyFileVersion("1.3.0")]
+[assembly: AssemblyVersion("1.3.1")]
+[assembly: AssemblyFileVersion("1.3.1")]
[assembly: AssemblyConfiguration("")]
[assembly: AssemblyCulture("")]
[assembly: ComVisible(false)]
diff --git a/Caching/ImageFileCache/Properties/AssemblyInfo.cs b/Caching/ImageFileCache/Properties/AssemblyInfo.cs
index 9503e6af..18c1c75e 100644
--- a/Caching/ImageFileCache/Properties/AssemblyInfo.cs
+++ b/Caching/ImageFileCache/Properties/AssemblyInfo.cs
@@ -8,8 +8,8 @@ using System.Runtime.InteropServices;
[assembly: AssemblyCompany("Clemens Fischer")]
[assembly: AssemblyCopyright("Copyright © Clemens Fischer 2012-2013")]
[assembly: AssemblyTrademark("")]
-[assembly: AssemblyVersion("1.3.0")]
-[assembly: AssemblyFileVersion("1.3.0")]
+[assembly: AssemblyVersion("1.3.1")]
+[assembly: AssemblyFileVersion("1.3.1")]
[assembly: AssemblyConfiguration("")]
[assembly: AssemblyCulture("")]
[assembly: ComVisible(false)]
diff --git a/MapControl/Map.Silverlight.cs b/MapControl/Map.Silverlight.cs
index c0be4951..ffc05cd4 100644
--- a/MapControl/Map.Silverlight.cs
+++ b/MapControl/Map.Silverlight.cs
@@ -12,11 +12,13 @@ namespace MapControl
///
public class Map : MapBase
{
+ public static readonly DependencyProperty MouseWheelZoomChangeProperty = DependencyProperty.Register(
+ "MouseWheelZoomChange", typeof(double), typeof(Map), new PropertyMetadata(1d));
+
private Point? mousePosition;
public Map()
{
- MouseWheelZoomChange = 1d;
MouseWheel += OnMouseWheel;
MouseLeftButtonDown += OnMouseLeftButtonDown;
MouseLeftButtonUp += OnMouseLeftButtonUp;
@@ -26,7 +28,11 @@ namespace MapControl
///
/// Gets or sets the amount by which the ZoomLevel property changes during a MouseWheel event.
///
- public double MouseWheelZoomChange { get; set; }
+ public double MouseWheelZoomChange
+ {
+ get { return (double)GetValue(MouseWheelZoomChangeProperty); }
+ set { SetValue(MouseWheelZoomChangeProperty, value); }
+ }
private void OnMouseWheel(object sender, MouseWheelEventArgs e)
{
diff --git a/MapControl/Map.WPF.cs b/MapControl/Map.WPF.cs
index ae2ce278..63843104 100644
--- a/MapControl/Map.WPF.cs
+++ b/MapControl/Map.WPF.cs
@@ -12,17 +12,36 @@ namespace MapControl
///
public class Map : MapBase
{
+ public static readonly DependencyProperty ManipulationModeProperty = DependencyProperty.Register(
+ "ManipulationMode", typeof(ManipulationModes), typeof(Map), new PropertyMetadata(ManipulationModes.All));
+
+ public static readonly DependencyProperty MouseWheelZoomChangeProperty = DependencyProperty.Register(
+ "MouseWheelZoomChange", typeof(double), typeof(Map), new PropertyMetadata(1d));
+
private Point? mousePosition;
- public Map()
+ static Map()
{
- MouseWheelZoomChange = 1d;
+ IsManipulationEnabledProperty.OverrideMetadata(typeof(Map), new FrameworkPropertyMetadata(true));
+ }
+
+ ///
+ /// Gets or sets a value that specifies how the map control handles manipulations.
+ ///
+ public ManipulationModes ManipulationMode
+ {
+ get { return (ManipulationModes)GetValue(ManipulationModeProperty); }
+ set { SetValue(ManipulationModeProperty, value); }
}
///
/// Gets or sets the amount by which the ZoomLevel property changes during a MouseWheel event.
///
- public double MouseWheelZoomChange { get; set; }
+ public double MouseWheelZoomChange
+ {
+ get { return (double)GetValue(MouseWheelZoomChangeProperty); }
+ set { SetValue(MouseWheelZoomChangeProperty, value); }
+ }
protected override void OnMouseWheel(MouseWheelEventArgs e)
{
@@ -65,6 +84,13 @@ namespace MapControl
}
}
+ protected override void OnManipulationStarted(ManipulationStartedEventArgs e)
+ {
+ base.OnManipulationStarted(e);
+
+ Manipulation.SetManipulationMode(this, ManipulationMode);
+ }
+
protected override void OnManipulationDelta(ManipulationDeltaEventArgs e)
{
base.OnManipulationDelta(e);
diff --git a/MapControl/Map.WinRT.cs b/MapControl/Map.WinRT.cs
index 54324c23..16ca3627 100644
--- a/MapControl/Map.WinRT.cs
+++ b/MapControl/Map.WinRT.cs
@@ -4,6 +4,7 @@
using Windows.Devices.Input;
using Windows.Foundation;
+using Windows.UI.Xaml;
using Windows.UI.Xaml.Input;
namespace MapControl
@@ -13,11 +14,13 @@ namespace MapControl
///
public class Map : MapBase
{
+ public static readonly DependencyProperty MouseWheelZoomChangeProperty = DependencyProperty.Register(
+ "MouseWheelZoomChange", typeof(double), typeof(Map), new PropertyMetadata(1d));
+
private Point? mousePosition;
public Map()
{
- MouseWheelZoomChange = 1d;
ManipulationMode = ManipulationModes.All;
ManipulationDelta += OnManipulationDelta;
PointerWheelChanged += OnPointerWheelChanged;
@@ -31,7 +34,11 @@ namespace MapControl
///
/// Gets or sets the amount by which the ZoomLevel property changes during a MouseWheel event.
///
- public double MouseWheelZoomChange { get; set; }
+ public double MouseWheelZoomChange
+ {
+ get { return (double)GetValue(MouseWheelZoomChangeProperty); }
+ set { SetValue(MouseWheelZoomChangeProperty, value); }
+ }
private void OnPointerWheelChanged(object sender, PointerRoutedEventArgs e)
{
diff --git a/MapControl/MapBase.cs b/MapControl/MapBase.cs
index d5369add..d42e72c1 100644
--- a/MapControl/MapBase.cs
+++ b/MapControl/MapBase.cs
@@ -806,8 +806,8 @@ namespace MapControl
private void UpdateTransform()
{
var center = Center;
- var origin = transformOrigin != null ? transformOrigin : center;
- var scale = tileContainer.SetViewportTransform(ZoomLevel, Heading, mapTransform.Transform(origin), viewportOrigin, RenderSize);
+ var origin = mapTransform.Transform(transformOrigin ?? center);
+ var scale = tileContainer.SetViewportTransform(ZoomLevel, Heading, origin, viewportOrigin, RenderSize);
if (transformOrigin != null)
{
diff --git a/MapControl/MapOverlay.cs b/MapControl/MapOverlay.cs
index 600f3cd5..cffed6e2 100644
--- a/MapControl/MapOverlay.cs
+++ b/MapControl/MapOverlay.cs
@@ -204,7 +204,7 @@ namespace MapControl
{
pen = new Pen
{
- Brush = Stroke != null ? Stroke : Foreground,
+ Brush = Stroke ?? Foreground,
Thickness = StrokeThickness,
DashStyle = new DashStyle(StrokeDashArray, StrokeDashOffset),
DashCap = StrokeDashCap,
diff --git a/MapControl/Properties/AssemblyInfo.cs b/MapControl/Properties/AssemblyInfo.cs
index 1c92f2d5..f276af65 100644
--- a/MapControl/Properties/AssemblyInfo.cs
+++ b/MapControl/Properties/AssemblyInfo.cs
@@ -15,8 +15,8 @@ using System.Windows;
[assembly: AssemblyCompany("Clemens Fischer")]
[assembly: AssemblyCopyright("Copyright © Clemens Fischer 2012-2013")]
[assembly: AssemblyTrademark("")]
-[assembly: AssemblyVersion("1.3.0")]
-[assembly: AssemblyFileVersion("1.3.0")]
+[assembly: AssemblyVersion("1.3.1")]
+[assembly: AssemblyFileVersion("1.3.1")]
[assembly: AssemblyConfiguration("")]
[assembly: AssemblyCulture("")]
[assembly: ComVisible(false)]
diff --git a/MapControl/TileLayer.WPF.cs b/MapControl/TileLayer.WPF.cs
index 5c00cf4a..24fd85f0 100644
--- a/MapControl/TileLayer.WPF.cs
+++ b/MapControl/TileLayer.WPF.cs
@@ -15,6 +15,8 @@ namespace MapControl
VisualEdgeMode = EdgeMode.Aliased;
}
+ public Brush Background { get; set; }
+
protected ContainerVisual TileContainer
{
get { return Parent as ContainerVisual; }
diff --git a/MapControl/TileLayer.cs b/MapControl/TileLayer.cs
index 27d1bce0..a81bba14 100644
--- a/MapControl/TileLayer.cs
+++ b/MapControl/TileLayer.cs
@@ -64,7 +64,6 @@ namespace MapControl
public int MaxZoomLevel { get; set; }
public int MaxParallelDownloads { get; set; }
public bool LoadLowerZoomLevels { get; set; }
- public Brush Background { get; set; }
public Brush Foreground { get; set; }
public string Description
diff --git a/MapControl/WinRT/Properties/AssemblyInfo.cs b/MapControl/WinRT/Properties/AssemblyInfo.cs
index 1275606a..dd8d8c29 100644
--- a/MapControl/WinRT/Properties/AssemblyInfo.cs
+++ b/MapControl/WinRT/Properties/AssemblyInfo.cs
@@ -8,8 +8,8 @@ using System.Runtime.InteropServices;
[assembly: AssemblyCompany("Clemens Fischer")]
[assembly: AssemblyCopyright("Copyright © Clemens Fischer 2012-2013")]
[assembly: AssemblyTrademark("")]
-[assembly: AssemblyVersion("1.3.0")]
-[assembly: AssemblyFileVersion("1.3.0")]
+[assembly: AssemblyVersion("1.3.1")]
+[assembly: AssemblyFileVersion("1.3.1")]
[assembly: AssemblyConfiguration("")]
[assembly: AssemblyCulture("")]
[assembly: ComVisible(false)]
diff --git a/SampleApps/SilverlightApplication.Web/Properties/AssemblyInfo.cs b/SampleApps/SilverlightApplication.Web/Properties/AssemblyInfo.cs
index 4717c493..37d31a26 100644
--- a/SampleApps/SilverlightApplication.Web/Properties/AssemblyInfo.cs
+++ b/SampleApps/SilverlightApplication.Web/Properties/AssemblyInfo.cs
@@ -8,8 +8,8 @@ using System.Runtime.InteropServices;
[assembly: AssemblyCompany("Clemens Fischer")]
[assembly: AssemblyCopyright("Copyright © Clemens Fischer 2012-2013")]
[assembly: AssemblyTrademark("")]
-[assembly: AssemblyVersion("1.3.0")]
-[assembly: AssemblyFileVersion("1.3.0")]
+[assembly: AssemblyVersion("1.3.1")]
+[assembly: AssemblyFileVersion("1.3.1")]
[assembly: AssemblyConfiguration("")]
[assembly: AssemblyCulture("")]
[assembly: ComVisible(false)]
diff --git a/SampleApps/SilverlightApplication/MainPage.xaml b/SampleApps/SilverlightApplication/MainPage.xaml
index d7db4acd..66b895dd 100644
--- a/SampleApps/SilverlightApplication/MainPage.xaml
+++ b/SampleApps/SilverlightApplication/MainPage.xaml
@@ -7,8 +7,7 @@
xmlns:map="clr-namespace:MapControl;assembly=MapControl.Silverlight"
xmlns:sys="clr-namespace:System;assembly=mscorlib"
xmlns:local="clr-namespace:SilverlightApplication"
- mc:Ignorable="d"
- d:DesignHeight="300" d:DesignWidth="400">
+ mc:Ignorable="d" d:DesignHeight="300" d:DesignWidth="400">
-
+
-
+
diff --git a/SampleApps/SurfaceApplication/Properties/AssemblyInfo.cs b/SampleApps/SurfaceApplication/Properties/AssemblyInfo.cs
index 397b7e02..f7478f6e 100644
--- a/SampleApps/SurfaceApplication/Properties/AssemblyInfo.cs
+++ b/SampleApps/SurfaceApplication/Properties/AssemblyInfo.cs
@@ -8,8 +8,8 @@ using System.Runtime.InteropServices;
[assembly: AssemblyCompany("Clemens Fischer")]
[assembly: AssemblyCopyright("Copyright © Clemens Fischer 2012-2013")]
[assembly: AssemblyTrademark("")]
-[assembly: AssemblyVersion("1.3.0")]
-[assembly: AssemblyFileVersion("1.3.0")]
+[assembly: AssemblyVersion("1.3.1")]
+[assembly: AssemblyFileVersion("1.3.1")]
[assembly: AssemblyConfiguration("")]
[assembly: AssemblyCulture("")]
[assembly: ComVisible(false)]
diff --git a/SampleApps/WpfApplication/MainWindow.xaml b/SampleApps/WpfApplication/MainWindow.xaml
index c0c82dd6..100a2a3d 100644
--- a/SampleApps/WpfApplication/MainWindow.xaml
+++ b/SampleApps/WpfApplication/MainWindow.xaml
@@ -152,8 +152,7 @@
-