diff --git a/Demo.WindowsForms/app.config b/Demo.WindowsForms/app.config
new file mode 100644
index 00000000..57c0f2cb
--- /dev/null
+++ b/Demo.WindowsForms/app.config
@@ -0,0 +1,3 @@
+
+
+
diff --git a/Demo.WindowsPresentation/app.config b/Demo.WindowsPresentation/app.config
new file mode 100644
index 00000000..cb2586be
--- /dev/null
+++ b/Demo.WindowsPresentation/app.config
@@ -0,0 +1,3 @@
+
+
+
diff --git a/GMap.NET.Core/GMap.NET.Core.csproj b/GMap.NET.Core/GMap.NET.Core.csproj
index 9f3dd676..7ba34079 100644
--- a/GMap.NET.Core/GMap.NET.Core.csproj
+++ b/GMap.NET.Core/GMap.NET.Core.csproj
@@ -9,7 +9,7 @@
Library
Properties
GMap.NET
- GMap.NET.Core
+ GMap.NET.Core
512
true
sn.snk
@@ -110,7 +110,7 @@
false
false
-
+
2.0
@@ -229,11 +229,11 @@
-
-
-
-
-
+
+
+
+
+
diff --git a/GMap.NET.Core/GMap.NET.Internals/Core.cs b/GMap.NET.Core/GMap.NET.Internals/Core.cs
index c2c7dfe5..92913703 100644
--- a/GMap.NET.Core/GMap.NET.Internals/Core.cs
+++ b/GMap.NET.Core/GMap.NET.Internals/Core.cs
@@ -807,7 +807,7 @@ void AddLoadTask(LoadTask t)
Debug.WriteLine(ctid + ": started");
do
- {
+ {
if (tileLoadQueue4.Count == 0)
{
Debug.WriteLine(ctid + ": ready");
diff --git a/GMap.NET.Core/GMap.NET.MapProviders/CzechOld/CzechHistoryMapProvider.cs b/GMap.NET.Core/GMap.NET.MapProviders/CzechOld/CzechHistoryMapProvider.cs
new file mode 100644
index 00000000..03e15519
--- /dev/null
+++ b/GMap.NET.Core/GMap.NET.MapProviders/CzechOld/CzechHistoryMapProvider.cs
@@ -0,0 +1,76 @@
+
+namespace GMap.NET.MapProviders
+{
+ using System;
+
+ ///
+ /// CzechHistoryMap provider, http://www.mapy.cz/
+ ///
+ public class CzechHistoryMapProviderOld : CzechMapProviderBaseOld
+ {
+ public static readonly CzechHistoryMapProviderOld Instance;
+
+ CzechHistoryMapProviderOld()
+ {
+ }
+
+ static CzechHistoryMapProviderOld()
+ {
+ Instance = new CzechHistoryMapProviderOld();
+ }
+
+ #region GMapProvider Members
+
+ readonly Guid id = new Guid("C666AAF4-9D27-418F-97CB-7F0D8CC44544");
+ public override Guid Id
+ {
+ get
+ {
+ return id;
+ }
+ }
+
+ readonly string name = "CzechHistoryMap";
+ public override string Name
+ {
+ get
+ {
+ return name;
+ }
+ }
+
+ GMapProvider[] overlays;
+ public override GMapProvider[] Overlays
+ {
+ get
+ {
+ if(overlays == null)
+ {
+ overlays = new GMapProvider[] { this, CzechHybridMapProviderOld.Instance };
+ }
+ return overlays;
+ }
+ }
+
+ public override PureImage GetTileImage(GPoint pos, int zoom)
+ {
+ string url = MakeTileImageUrl(pos, zoom, LanguageStr);
+
+ return GetTileImageUsingHttp(url);
+ }
+
+ #endregion
+
+ string MakeTileImageUrl(GPoint pos, int zoom, string language)
+ {
+ // http://m4.mapserver.mapy.cz/army2/9_7d00000_8080000
+
+ long xx = pos.X << (28 - zoom);
+ long yy = ((((long)Math.Pow(2.0, (double)zoom)) - 1) - pos.Y) << (28 - zoom);
+
+ return string.Format(UrlFormat, GetServerNum(pos, 3) + 1, zoom, xx, yy);
+ }
+
+ static readonly string UrlFormat = "http://m{0}.mapserver.mapy.cz/army2/{1}_{2:x7}_{3:x7}";
+ }
+}
\ No newline at end of file
diff --git a/GMap.NET.Core/GMap.NET.MapProviders/CzechOld/CzechHybridMapProvider.cs b/GMap.NET.Core/GMap.NET.MapProviders/CzechOld/CzechHybridMapProvider.cs
new file mode 100644
index 00000000..37929ee8
--- /dev/null
+++ b/GMap.NET.Core/GMap.NET.MapProviders/CzechOld/CzechHybridMapProvider.cs
@@ -0,0 +1,76 @@
+
+namespace GMap.NET.MapProviders
+{
+ using System;
+
+ ///
+ /// CzechHybridMap provider, http://www.mapy.cz/
+ ///
+ public class CzechHybridMapProviderOld : CzechMapProviderBaseOld
+ {
+ public static readonly CzechHybridMapProviderOld Instance;
+
+ CzechHybridMapProviderOld()
+ {
+ }
+
+ static CzechHybridMapProviderOld()
+ {
+ Instance = new CzechHybridMapProviderOld();
+ }
+
+ #region GMapProvider Members
+
+ readonly Guid id = new Guid("F785D98E-DD1D-46FD-8BC1-1AAB69604980");
+ public override Guid Id
+ {
+ get
+ {
+ return id;
+ }
+ }
+
+ readonly string name = "CzechHybridMap";
+ public override string Name
+ {
+ get
+ {
+ return name;
+ }
+ }
+
+ GMapProvider[] overlays;
+ public override GMapProvider[] Overlays
+ {
+ get
+ {
+ if(overlays == null)
+ {
+ overlays = new GMapProvider[] { CzechSatelliteMapProviderOld.Instance, this };
+ }
+ return overlays;
+ }
+ }
+
+ public override PureImage GetTileImage(GPoint pos, int zoom)
+ {
+ string url = MakeTileImageUrl(pos, zoom, LanguageStr);
+
+ return GetTileImageUsingHttp(url);
+ }
+
+ #endregion
+
+ string MakeTileImageUrl(GPoint pos, int zoom, string language)
+ {
+ // http://m2.mapserver.mapy.cz/hybrid/9_7d00000_7b80000
+
+ long xx = pos.X << (28 - zoom);
+ long yy = ((((long)Math.Pow(2.0, (double)zoom)) - 1) - pos.Y) << (28 - zoom);
+
+ return string.Format(UrlFormat, GetServerNum(pos, 3) + 1, zoom, xx, yy);
+ }
+
+ static readonly string UrlFormat = "http://m{0}.mapserver.mapy.cz/hybrid/{1}_{2:x7}_{3:x7}";
+ }
+}
\ No newline at end of file
diff --git a/GMap.NET.Core/GMap.NET.MapProviders/CzechOld/CzechMapProvider.cs b/GMap.NET.Core/GMap.NET.MapProviders/CzechOld/CzechMapProvider.cs
new file mode 100644
index 00000000..17a5db72
--- /dev/null
+++ b/GMap.NET.Core/GMap.NET.MapProviders/CzechOld/CzechMapProvider.cs
@@ -0,0 +1,118 @@
+
+namespace GMap.NET.MapProviders
+{
+ using System;
+ using GMap.NET.Projections;
+
+ public abstract class CzechMapProviderBaseOld : GMapProvider
+ {
+ public CzechMapProviderBaseOld()
+ {
+ RefererUrl = "http://www.mapy.cz/";
+ Area = new RectLatLng(51.2024819920053, 11.8401353319027, 7.22833716731277, 2.78312271922872);
+ }
+
+ #region GMapProvider Members
+ public override Guid Id
+ {
+ get
+ {
+ throw new NotImplementedException();
+ }
+ }
+
+ public override string Name
+ {
+ get
+ {
+ throw new NotImplementedException();
+ }
+ }
+
+ public override PureProjection Projection
+ {
+ get
+ {
+ return MapyCZProjection.Instance;
+ }
+ }
+
+ GMapProvider[] overlays;
+ public override GMapProvider[] Overlays
+ {
+ get
+ {
+ if(overlays == null)
+ {
+ overlays = new GMapProvider[] { this };
+ }
+ return overlays;
+ }
+ }
+
+ public override PureImage GetTileImage(GPoint pos, int zoom)
+ {
+ throw new NotImplementedException();
+ }
+ #endregion
+ }
+
+ ///
+ /// CzechMap provider, http://www.mapy.cz/
+ ///
+ public class CzechMapProviderOld : CzechMapProviderBaseOld
+ {
+ public static readonly CzechMapProviderOld Instance;
+
+ CzechMapProviderOld()
+ {
+ }
+
+ static CzechMapProviderOld()
+ {
+ Instance = new CzechMapProviderOld();
+ }
+
+ #region GMapProvider Members
+
+ readonly Guid id = new Guid("6A1AF99A-84C6-4EF6-91A5-77B9D03257C2");
+ public override Guid Id
+ {
+ get
+ {
+ return id;
+ }
+ }
+
+ readonly string name = "CzechMap";
+ public override string Name
+ {
+ get
+ {
+ return name;
+ }
+ }
+
+ public override PureImage GetTileImage(GPoint pos, int zoom)
+ {
+ string url = MakeTileImageUrl(pos, zoom, LanguageStr);
+
+ return GetTileImageUsingHttp(url);
+ }
+
+ #endregion
+
+ string MakeTileImageUrl(GPoint pos, int zoom, string language)
+ {
+ // ['base','ophoto','turist','army2']
+ // http://m1.mapserver.mapy.cz/base-n/3_8000000_8000000
+
+ long xx = pos.X << (28 - zoom);
+ long yy = ((((long)Math.Pow(2.0, (double)zoom)) - 1) - pos.Y) << (28 - zoom);
+
+ return string.Format(UrlFormat, GetServerNum(pos, 3) + 1, zoom, xx, yy);
+ }
+
+ static readonly string UrlFormat = "http://m{0}.mapserver.mapy.cz/base-n/{1}_{2:x7}_{3:x7}";
+ }
+}
\ No newline at end of file
diff --git a/GMap.NET.Core/GMap.NET.MapProviders/CzechOld/CzechSatelliteMapProvider.cs b/GMap.NET.Core/GMap.NET.MapProviders/CzechOld/CzechSatelliteMapProvider.cs
new file mode 100644
index 00000000..6f856307
--- /dev/null
+++ b/GMap.NET.Core/GMap.NET.MapProviders/CzechOld/CzechSatelliteMapProvider.cs
@@ -0,0 +1,63 @@
+
+namespace GMap.NET.MapProviders
+{
+ using System;
+
+ ///
+ /// CzechSatelliteMap provider, http://www.mapy.cz/
+ ///
+ public class CzechSatelliteMapProviderOld : CzechMapProviderBaseOld
+ {
+ public static readonly CzechSatelliteMapProviderOld Instance;
+
+ CzechSatelliteMapProviderOld()
+ {
+ }
+
+ static CzechSatelliteMapProviderOld()
+ {
+ Instance = new CzechSatelliteMapProviderOld();
+ }
+
+ #region GMapProvider Members
+
+ readonly Guid id = new Guid("7846D655-5F9C-4042-8652-60B6BF629C3C");
+ public override Guid Id
+ {
+ get
+ {
+ return id;
+ }
+ }
+
+ readonly string name = "CzechSatelliteMap";
+ public override string Name
+ {
+ get
+ {
+ return name;
+ }
+ }
+
+ public override PureImage GetTileImage(GPoint pos, int zoom)
+ {
+ string url = MakeTileImageUrl(pos, zoom, LanguageStr);
+
+ return GetTileImageUsingHttp(url);
+ }
+
+ #endregion
+
+ string MakeTileImageUrl(GPoint pos, int zoom, string language)
+ {
+ //http://m3.mapserver.mapy.cz/ophoto/9_7a80000_7a80000
+
+ long xx = pos.X << (28 - zoom);
+ long yy = ((((long)Math.Pow(2.0, (double)zoom)) - 1) - pos.Y) << (28 - zoom);
+
+ return string.Format(UrlFormat, GetServerNum(pos, 3) + 1, zoom, xx, yy);
+ }
+
+ static readonly string UrlFormat = "http://m{0}.mapserver.mapy.cz/ophoto/{1}_{2:x7}_{3:x7}";
+ }
+}
\ No newline at end of file
diff --git a/GMap.NET.Core/GMap.NET.MapProviders/CzechOld/CzechTuristMapProvider.cs b/GMap.NET.Core/GMap.NET.MapProviders/CzechOld/CzechTuristMapProvider.cs
new file mode 100644
index 00000000..165d4980
--- /dev/null
+++ b/GMap.NET.Core/GMap.NET.MapProviders/CzechOld/CzechTuristMapProvider.cs
@@ -0,0 +1,63 @@
+
+namespace GMap.NET.MapProviders
+{
+ using System;
+
+ ///
+ /// CzechTuristMap provider, http://www.mapy.cz/
+ ///
+ public class CzechTuristMapProviderOld : CzechMapProviderBaseOld
+ {
+ public static readonly CzechTuristMapProviderOld Instance;
+
+ CzechTuristMapProviderOld()
+ {
+ }
+
+ static CzechTuristMapProviderOld()
+ {
+ Instance = new CzechTuristMapProviderOld();
+ }
+
+ #region GMapProvider Members
+
+ readonly Guid id = new Guid("B923C81D-880C-42EB-88AB-AF8FE42B564D");
+ public override Guid Id
+ {
+ get
+ {
+ return id;
+ }
+ }
+
+ readonly string name = "CzechTuristMap";
+ public override string Name
+ {
+ get
+ {
+ return name;
+ }
+ }
+
+ public override PureImage GetTileImage(GPoint pos, int zoom)
+ {
+ string url = MakeTileImageUrl(pos, zoom, LanguageStr);
+
+ return GetTileImageUsingHttp(url);
+ }
+
+ #endregion
+
+ string MakeTileImageUrl(GPoint pos, int zoom, string language)
+ {
+ // http://m1.mapserver.mapy.cz/turist/3_8000000_8000000
+
+ long xx = pos.X << (28 - zoom);
+ long yy = ((((long)Math.Pow(2.0, (double)zoom)) - 1) - pos.Y) << (28 - zoom);
+
+ return string.Format(UrlFormat, GetServerNum(pos, 3) + 1, zoom, xx, yy);
+ }
+
+ static readonly string UrlFormat = "http://m{0}.mapserver.mapy.cz/turist/{1}_{2:x7}_{3:x7}";
+ }
+}
\ No newline at end of file
diff --git a/GMap.NET.Core/GMap.NET.MapProviders/GMapProvider.cs b/GMap.NET.Core/GMap.NET.MapProviders/GMapProvider.cs
index 100540d2..746c13f3 100644
--- a/GMap.NET.Core/GMap.NET.MapProviders/GMapProvider.cs
+++ b/GMap.NET.Core/GMap.NET.MapProviders/GMapProvider.cs
@@ -127,11 +127,11 @@ static GMapProviders()
public static readonly SpainMapProvider SpainMap = SpainMapProvider.Instance;
- public static readonly CzechMapProvider CzechMap = CzechMapProvider.Instance;
- public static readonly CzechSatelliteMapProvider CzechSatelliteMap = CzechSatelliteMapProvider.Instance;
- public static readonly CzechHybridMapProvider CzechHybridMap = CzechHybridMapProvider.Instance;
- public static readonly CzechTuristMapProvider CzechTuristMap = CzechTuristMapProvider.Instance;
- public static readonly CzechHistoryMapProvider CzechHistoryMap = CzechHistoryMapProvider.Instance;
+ public static readonly CzechMapProviderOld CzechMapOld = CzechMapProviderOld.Instance;
+ public static readonly CzechSatelliteMapProviderOld CzechSatelliteMapOld = CzechSatelliteMapProviderOld.Instance;
+ public static readonly CzechHybridMapProviderOld CzechHybridMapOld = CzechHybridMapProviderOld.Instance;
+ public static readonly CzechTuristMapProviderOld CzechTuristMapOld = CzechTuristMapProviderOld.Instance;
+ public static readonly CzechHistoryMapProviderOld CzechHistoryMapOld = CzechHistoryMapProviderOld.Instance;
public static readonly ArcGIS_Imagery_World_2D_MapProvider ArcGIS_Imagery_World_2D_Map = ArcGIS_Imagery_World_2D_MapProvider.Instance;
public static readonly ArcGIS_ShadedRelief_World_2D_MapProvider ArcGIS_ShadedRelief_World_2D_Map = ArcGIS_ShadedRelief_World_2D_MapProvider.Instance;
diff --git a/Testing/Demo.Docking/app.config b/Testing/Demo.Docking/app.config
new file mode 100644
index 00000000..57c0f2cb
--- /dev/null
+++ b/Testing/Demo.Docking/app.config
@@ -0,0 +1,3 @@
+
+
+