Subversion Repositories Projects

Compare Revisions

Ignore whitespace Rev 2288 → Rev 2289

/MKLiveView/v1.0/Source/GMapCustomMarkers/CustomMarkerHome.xaml.cs
0,0 → 1,127
using System.Windows;
using System.Windows.Controls;
using System.Windows.Controls.Primitives;
using System.Windows.Input;
using System.Windows.Media;
using GMap.NET.WindowsPresentation;
using System.Diagnostics;
 
namespace MKLiveView.GMapCustomMarkers
{
/// <summary>
/// Interaction logic for CustomMarkerCopter.xaml
/// </summary>
public partial class CustomMarkerHome
{
//Popup Popup;
//Label Label;
GMapMarker Marker;
MainWindow MainWindow;
 
public CustomMarkerHome(MainWindow window, GMapMarker marker, string title)
{
this.InitializeComponent();
 
this.MainWindow = window;
this.Marker = marker;
 
//Popup = new Popup();
//Label = new Label();
 
this.Unloaded += new RoutedEventHandler(CustomMarkerHome_Unloaded);
this.Loaded += new RoutedEventHandler(CustomMarkerHome_Loaded);
this.SizeChanged += new SizeChangedEventHandler(CustomMarkerHome_SizeChanged);
//this.MouseEnter += new MouseEventHandler(MarkerControl_MouseEnter);
//this.MouseLeave += new MouseEventHandler(MarkerControl_MouseLeave);
//this.MouseMove += new MouseEventHandler(CustomMarkerCopter_MouseMove);
//this.MouseLeftButtonUp += new MouseButtonEventHandler(CustomMarkerCopter_MouseLeftButtonUp);
//this.MouseLeftButtonDown += new MouseButtonEventHandler(CustomMarkerCopter_MouseLeftButtonDown);
 
//Popup.Placement = PlacementMode.Mouse;
//{
// Label.Background = Brushes.Blue;
// Label.Foreground = Brushes.White;
// Label.BorderBrush = Brushes.WhiteSmoke;
// Label.BorderThickness = new Thickness(2);
// Label.Padding = new Thickness(5);
// Label.FontSize = 22;
// Label.Content = title;
//}
//Popup.Child = Label;
lbl.Content = title;
}
void CustomMarkerHome_Loaded(object sender, RoutedEventArgs e)
{
if (icon.Source.CanFreeze)
{
icon.Source.Freeze();
}
}
 
void CustomMarkerHome_Unloaded(object sender, RoutedEventArgs e)
{
this.Unloaded -= new RoutedEventHandler(CustomMarkerHome_Unloaded);
this.Loaded -= new RoutedEventHandler(CustomMarkerHome_Loaded);
this.SizeChanged -= new SizeChangedEventHandler(CustomMarkerHome_SizeChanged);
//this.MouseEnter -= new MouseEventHandler(MarkerControl_MouseEnter);
//this.MouseLeave -= new MouseEventHandler(MarkerControl_MouseLeave);
//this.MouseMove -= new MouseEventHandler(CustomMarkerCopter_MouseMove);
//this.MouseLeftButtonUp -= new MouseButtonEventHandler(CustomMarkerCopter_MouseLeftButtonUp);
//this.MouseLeftButtonDown -= new MouseButtonEventHandler(CustomMarkerCopter_MouseLeftButtonDown);
 
Marker.Shape = null;
icon.Source = null;
icon = null;
//Popup = null;
//Label = null;
}
public void setText(string s)
{
lbl.Content = s;
}
 
void CustomMarkerHome_SizeChanged(object sender, SizeChangedEventArgs e)
{
// Marker.Offset = new Point(-e.NewSize.Width / 4, -e.NewSize.Height /2);
}
 
void CustomMarkerHome_MouseMove(object sender, MouseEventArgs e)
{
if (e.LeftButton == MouseButtonState.Pressed && IsMouseCaptured)
{
Point p = e.GetPosition(MainWindow.MainMap);
Marker.Position = MainWindow.MainMap.FromLocalToLatLng((int)(p.X), (int)(p.Y));
}
}
 
void CustomMarkerHome_MouseLeftButtonDown(object sender, MouseButtonEventArgs e)
{
if (!IsMouseCaptured)
{
Mouse.Capture(this);
}
}
 
void CustomMarkerHome_MouseLeftButtonUp(object sender, MouseButtonEventArgs e)
{
if (IsMouseCaptured)
{
Mouse.Capture(null);
}
}
 
void MarkerControl_MouseLeave(object sender, MouseEventArgs e)
{
Marker.ZIndex -= 10000;
//Popup.IsOpen = false;
}
 
void MarkerControl_MouseEnter(object sender, MouseEventArgs e)
{
Marker.ZIndex += 10000;
//Popup.IsOpen = true;
}
 
}
}