Files
DynamicDataDisplay/PointMarkers/DelegatePointMarker.cs
2024-02-23 00:46:06 -05:00

25 lines
707 B
C#

using System;
using System.Windows;
using System.Windows.Media;
namespace Microsoft.Research.DynamicDataDisplay.PointMarkers
{
/// <summary>Invokes specified delegate for rendering custon marker
/// at every point of graph</summary>
public sealed class DelegatePointMarker : PointMarker {
public MarkerRenderHandler RenderCallback { get; set; }
public DelegatePointMarker() { }
public DelegatePointMarker(MarkerRenderHandler renderCallback) {
if (renderCallback == null)
throw new ArgumentNullException("renderCallback");
RenderCallback = renderCallback;
}
public override void Render(DrawingContext dc, Point screenPoint) {
RenderCallback(dc, screenPoint);
}
}
}