Subversion Repositories Projects

Compare Revisions

Ignore whitespace Rev 2419 → Rev 2420

/MKLiveView/v1.0/Source/GMapCustomMarkers/CustomMarkerWP.xaml
52,7 → 52,7
</TransformGroup>
</Rectangle.RenderTransform>
</Rectangle>
<TextBox x:Name="text" HorizontalAlignment="Center" Height="18" Margin="-2,2,-2,3" TextWrapping="Wrap" Text="P25" VerticalAlignment="Center" Width="27" Background="{x:Null}" BorderBrush="{x:Null}" Foreground="#FFFFFEFE" HorizontalContentAlignment="Center" VerticalContentAlignment="Center" FontSize="11" AllowDrop="False" Focusable="False" IsReadOnly="True" IsUndoEnabled="False">
<TextBox x:Name="text" HorizontalAlignment="Center" Height="18" Margin="-2,2,-2,3" TextWrapping="Wrap" Text="P25" VerticalAlignment="Center" Width="27" Background="{x:Null}" BorderBrush="{x:Null}" Foreground="#FFFFFEFE" HorizontalContentAlignment="Center" VerticalContentAlignment="Center" FontSize="11" AllowDrop="False" Focusable="False" IsReadOnly="True" IsUndoEnabled="False" IsTabStop="False" IsHitTestVisible="False">
<TextBox.Effect>
<DropShadowEffect BlurRadius="0" ShadowDepth="1" Direction="-45.2"/>
</TextBox.Effect>
/MKLiveView/v1.0/Source/GMapCustomMarkers/CustomMarkerWP.xaml.cs
15,6 → 15,12
GMapMarker Marker;
MainWindow MainWindow;
int _type = 0;
public event positionChangedEventHandler positionChanged;
public delegate void positionChangedEventHandler(CustomMarkerWP wp);
public event newPositionEventHandler newPosition;
public delegate void newPositionEventHandler(CustomMarkerWP wp);
public event mouseCapturedEventHandler mouseCaptured;
public delegate void mouseCapturedEventHandler(bool isCaptured);
 
public CustomMarkerWP(MainWindow window, GMapMarker marker, string title, int type)
{
28,13 → 34,18
//Label = new Label();
 
//this.Unloaded += new RoutedEventHandler(CustomMarkerWP_Unloaded);
//this.Loaded += new RoutedEventHandler(CustomMarkerWP_Loaded);
this.Loaded += new RoutedEventHandler(CustomMarkerWP_Loaded);
//this.SizeChanged += new SizeChangedEventHandler(CustomMarkerWP_SizeChanged);
//this.MouseEnter += new MouseEventHandler(MarkerControl_MouseEnter);
//this.MouseLeave += new MouseEventHandler(MarkerControl_MouseLeave);
//this.MouseMove += new MouseEventHandler(CustomMarkerWP_MouseMove);
//this.MouseLeftButtonUp += new MouseButtonEventHandler(CustomMarkerWP_MouseLeftButtonUp);
//this.MouseLeftButtonDown += new MouseButtonEventHandler(CustomMarkerWP_MouseLeftButtonDown);
this.MouseEnter += new MouseEventHandler(MarkerControl_MouseEnter);
this.MouseLeave += new MouseEventHandler(MarkerControl_MouseLeave);
this.MouseMove += new MouseEventHandler(CustomMarkerWP_MouseMove);
this.MouseLeftButtonUp += new MouseButtonEventHandler(CustomMarkerWP_MouseLeftButtonUp);
this.MouseLeftButtonDown += new MouseButtonEventHandler(CustomMarkerWP_MouseLeftButtonDown);
StylusEnter += CustomMarkerWP_StylusEnter;
StylusLeave += CustomMarkerWP_StylusLeave;
StylusDown += CustomMarkerWP_StylusDown;
StylusMove += CustomMarkerWP_StylusMove;
StylusUp += CustomMarkerWP_StylusUp;
 
//Popup.Placement = PlacementMode.Mouse;
//{
51,6 → 62,46
setType();
}
 
private void CustomMarkerWP_StylusUp(object sender, StylusEventArgs e)
{
if (IsStylusCaptured)
{
Stylus.Capture(null);
newPosition(this);
mouseCaptured(false);
}
}
 
private void CustomMarkerWP_StylusMove(object sender, StylusEventArgs e)
{
if (IsStylusCaptured)
{
Point p = e.GetPosition(MainWindow.MainMap);
Marker.Position = MainWindow.MainMap.FromLocalToLatLng((int)(p.X), (int)(p.Y));
if (positionChanged != null)
positionChanged(this);
}
}
 
private void CustomMarkerWP_StylusDown(object sender, StylusDownEventArgs e)
{
if (!IsStylusCaptured)
{
Stylus.Capture(this);
mouseCaptured(true);
}
}
 
private void CustomMarkerWP_StylusLeave(object sender, StylusEventArgs e)
{
Marker.ZIndex -= 10000;
}
 
private void CustomMarkerWP_StylusEnter(object sender, StylusEventArgs e)
{
Marker.ZIndex += 10000;
}
 
void setType()
{
if (_type == 0)
86,11 → 137,16
//this.Unloaded -= new RoutedEventHandler(CustomMarkerWP_Unloaded);
//this.Loaded -= new RoutedEventHandler(CustomMarkerWP_Loaded);
//this.SizeChanged -= new SizeChangedEventHandler(CustomMarkerWP_SizeChanged);
//this.MouseEnter -= new MouseEventHandler(MarkerControl_MouseEnter);
//this.MouseLeave -= new MouseEventHandler(MarkerControl_MouseLeave);
//this.MouseMove -= new MouseEventHandler(CustomMarkerWP_MouseMove);
//this.MouseLeftButtonUp -= new MouseButtonEventHandler(CustomMarkerWP_MouseLeftButtonUp);
//this.MouseLeftButtonDown -= new MouseButtonEventHandler(CustomMarkerWP_MouseLeftButtonDown);
this.MouseEnter -= new MouseEventHandler(MarkerControl_MouseEnter);
this.MouseLeave -= new MouseEventHandler(MarkerControl_MouseLeave);
this.MouseMove -= new MouseEventHandler(CustomMarkerWP_MouseMove);
this.MouseLeftButtonUp -= new MouseButtonEventHandler(CustomMarkerWP_MouseLeftButtonUp);
this.MouseLeftButtonDown -= new MouseButtonEventHandler(CustomMarkerWP_MouseLeftButtonDown);
StylusEnter -= CustomMarkerWP_StylusEnter;
StylusLeave -= CustomMarkerWP_StylusLeave;
StylusDown -= CustomMarkerWP_StylusDown;
StylusMove -= CustomMarkerWP_StylusMove;
StylusUp -= CustomMarkerWP_StylusUp;
 
Marker.Shape = null;
//icon.Source = null;
170,27 → 226,32
 
void CustomMarkerWP_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));
//}
if (e.LeftButton == MouseButtonState.Pressed && IsMouseCaptured)
{
Point p = e.GetPosition(MainWindow.MainMap);
Marker.Position = MainWindow.MainMap.FromLocalToLatLng((int)(p.X), (int)(p.Y));
if(positionChanged != null)
positionChanged(this);
}
}
 
void CustomMarkerWP_MouseLeftButtonDown(object sender, MouseButtonEventArgs e)
{
//if (!IsMouseCaptured)
//{
// Mouse.Capture(this);
//}
if (!IsMouseCaptured)
{
Mouse.Capture(this);
mouseCaptured(true);
}
}
 
void CustomMarkerWP_MouseLeftButtonUp(object sender, MouseButtonEventArgs e)
{
//if (IsMouseCaptured)
//{
// Mouse.Capture(null);
//}
if (IsMouseCaptured)
{
Mouse.Capture(null);
newPosition(this);
mouseCaptured(false);
}
}
 
void MarkerControl_MouseLeave(object sender, MouseEventArgs e)