Files
@ 65c134a3d619
Branch filter:
Location: seniordesign-ui/Testing/Demo.Docking/MainWindow.xaml.cs - annotation
65c134a3d619
5.4 KiB
text/x-csharp
Initial import of mapping source (huge commit)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 | 65c134a3d619 65c134a3d619 65c134a3d619 65c134a3d619 65c134a3d619 65c134a3d619 65c134a3d619 65c134a3d619 65c134a3d619 65c134a3d619 65c134a3d619 65c134a3d619 65c134a3d619 65c134a3d619 65c134a3d619 65c134a3d619 65c134a3d619 65c134a3d619 65c134a3d619 65c134a3d619 65c134a3d619 65c134a3d619 65c134a3d619 65c134a3d619 65c134a3d619 65c134a3d619 65c134a3d619 65c134a3d619 65c134a3d619 65c134a3d619 65c134a3d619 65c134a3d619 65c134a3d619 65c134a3d619 65c134a3d619 65c134a3d619 65c134a3d619 65c134a3d619 65c134a3d619 65c134a3d619 65c134a3d619 65c134a3d619 65c134a3d619 65c134a3d619 65c134a3d619 65c134a3d619 65c134a3d619 65c134a3d619 65c134a3d619 65c134a3d619 65c134a3d619 65c134a3d619 65c134a3d619 65c134a3d619 65c134a3d619 65c134a3d619 65c134a3d619 65c134a3d619 65c134a3d619 65c134a3d619 65c134a3d619 65c134a3d619 65c134a3d619 65c134a3d619 65c134a3d619 65c134a3d619 65c134a3d619 65c134a3d619 65c134a3d619 65c134a3d619 65c134a3d619 65c134a3d619 65c134a3d619 65c134a3d619 65c134a3d619 65c134a3d619 65c134a3d619 65c134a3d619 65c134a3d619 65c134a3d619 65c134a3d619 65c134a3d619 65c134a3d619 65c134a3d619 65c134a3d619 65c134a3d619 65c134a3d619 65c134a3d619 65c134a3d619 65c134a3d619 65c134a3d619 65c134a3d619 65c134a3d619 65c134a3d619 65c134a3d619 65c134a3d619 65c134a3d619 65c134a3d619 65c134a3d619 65c134a3d619 65c134a3d619 65c134a3d619 65c134a3d619 65c134a3d619 65c134a3d619 65c134a3d619 65c134a3d619 65c134a3d619 65c134a3d619 65c134a3d619 65c134a3d619 65c134a3d619 65c134a3d619 65c134a3d619 65c134a3d619 65c134a3d619 65c134a3d619 65c134a3d619 65c134a3d619 65c134a3d619 65c134a3d619 65c134a3d619 65c134a3d619 65c134a3d619 65c134a3d619 65c134a3d619 65c134a3d619 65c134a3d619 65c134a3d619 65c134a3d619 65c134a3d619 65c134a3d619 65c134a3d619 65c134a3d619 65c134a3d619 65c134a3d619 65c134a3d619 65c134a3d619 65c134a3d619 65c134a3d619 65c134a3d619 65c134a3d619 65c134a3d619 65c134a3d619 65c134a3d619 65c134a3d619 65c134a3d619 65c134a3d619 65c134a3d619 65c134a3d619 65c134a3d619 65c134a3d619 65c134a3d619 65c134a3d619 65c134a3d619 65c134a3d619 65c134a3d619 65c134a3d619 | using System;
using System.Windows;
using System.Diagnostics;
using System.Threading;
using GMap.NET.MapProviders;
namespace Sample3
{
/// <summary>
/// Interaction logic for MainWindow.xaml
/// </summary>
public partial class MainWindow : Window
{
public MainWindow()
{
InitializeComponent();
MainMap.MapProvider = GMapProviders.GoogleMap;
MapArcGISworldTopo.MapProvider = GMapProviders.ArcGIS_World_Topo_Map;
MapBing.MapProvider = GMapProviders.BingMap;
MapBingHybrid.MapProvider = GMapProviders.BingHybridMap;
MapBingOld.MapProvider = GMapProviders.BingMap;
MapGoogleHybrid.MapProvider = GMapProviders.GoogleHybridMap;
MapGoogleTerrain.MapProvider = GMapProviders.GoogleTerrainMap;
MapYahoo.MapProvider = GMapProviders.YahooMap;
MapYahooHybrid.MapProvider = GMapProviders.YahooHybridMap;
MapYandexMapRuHybrid.MapProvider = GMapProviders.YandexHybridMap;
MapYandexRu.MapProvider = GMapProviders.YandexMap;
MapLt.MapProvider = GMapProviders.LithuaniaMap;
MapLtHybrid.MapProvider = GMapProviders.LithuaniaOrtoFotoMap;
MapOpenStreet.MapProvider = GMapProviders.OpenStreetMap;
MapOpenStreetOsm.MapProvider = GMapProviders.OpenStreetOsm;
MapOpenStreetSurfer.MapProvider = GMapProviders.OpenStreetMapSurfer;
this.WindowState = System.Windows.WindowState.Minimized;
}
private void OnMapZoomChanged()
{
this.Dispatcher.BeginInvoke(System.Windows.Threading.DispatcherPriority.Normal, new Action(delegate()
{
var amap = dockManager.ActiveContent.Content as GMap.NET.WindowsPresentation.GMapControl;
if(amap != null)
{
foreach(var d in dockManager.Documents)
{
var map = d.Content as GMap.NET.WindowsPresentation.GMapControl;
if(map != null && map != amap)
{
if(map.MapProvider.Projection.ToString() == amap.MapProvider.Projection.ToString())
{
map.Zoom = amap.Zoom;
}
else
{
map.SetZoomToFitRect(amap.ViewArea);
}
}
}
}
}));
}
private void OnMapDrag()
{
this.Dispatcher.BeginInvoke(System.Windows.Threading.DispatcherPriority.Background, new Action(delegate()
{
var amap = dockManager.ActiveContent.Content as GMap.NET.WindowsPresentation.GMapControl;
if(amap != null)
{
last = amap.Position;
foreach(var d in dockManager.Documents)
{
var map = d.Content as GMap.NET.WindowsPresentation.GMapControl;
if(map != null && map != amap)
{
map.Position = amap.Position;
}
}
}
}));
}
GMap.NET.PointLatLng last = new GMap.NET.PointLatLng();
GMap.NET.WindowsPresentation.GMapControl lastMap;
private void DocumentPane_SelectionChanged(object sender, System.Windows.Controls.SelectionChangedEventArgs e)
{
if(e.RemovedItems.Count > 0 && e.AddedItems.Count > 0)
{
var befCont = (e.RemovedItems[0] as AvalonDock.DocumentContent).Content;
if(befCont != null)
{
var before = befCont as GMap.NET.WindowsPresentation.GMapControl;
if(before != null)
{
var aCont = (e.AddedItems[0] as AvalonDock.DocumentContent).Content;
if(aCont != null)
{
var amap = aCont as GMap.NET.WindowsPresentation.GMapControl;
if(amap != null)
{
//this.Dispatcher.BeginInvoke(System.Windows.Threading.DispatcherPriority.Normal, new Action(delegate()
//{
amap.Position = before.Position;
if(amap.MapProvider.Projection.ToString() == before.MapProvider.Projection.ToString())
{
amap.Zoom = before.Zoom;
}
else
{
amap.SetZoomToFitRect(before.ViewArea);
}
//}));
}
lastMap = amap;
}
}
}
}
}
private void GMapControl_Loaded(object sender, RoutedEventArgs e)
{
var map = sender as GMap.NET.WindowsPresentation.GMapControl;
if(lastMap != null && lastMap != map)
{
map.Position = lastMap.Position;
if(map.MapProvider.Projection.ToString() == lastMap.MapProvider.Projection.ToString())
{
map.Zoom = lastMap.Zoom;
}
else
{
map.SetZoomToFitRect(lastMap.ViewArea);
}
}
else
{
map.Position = last;
}
}
}
}
|