Initial Commit
This commit is contained in:
32
Common/Auxiliary/PlotterChildrenCollectionExtensions.cs
Normal file
32
Common/Auxiliary/PlotterChildrenCollectionExtensions.cs
Normal file
@@ -0,0 +1,32 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using Microsoft.Research.DynamicDataDisplay.Common;
|
||||
using System.Windows.Threading;
|
||||
|
||||
namespace Microsoft.Research.DynamicDataDisplay
|
||||
{
|
||||
public static class PlotterChildrenCollectionExtensions
|
||||
{
|
||||
public static void RemoveAll<T>(this PlotterChildrenCollection children)
|
||||
{
|
||||
var childrenToDelete = children.OfType<T>().ToList();
|
||||
|
||||
foreach (var child in childrenToDelete)
|
||||
{
|
||||
children.Remove(child as IPlotterElement);
|
||||
}
|
||||
}
|
||||
|
||||
public static void BeginAdd(this PlotterChildrenCollection children, IPlotterElement child)
|
||||
{
|
||||
children.Plotter.Dispatcher.BeginInvoke(((Action)(() => { children.Add(child); })), DispatcherPriority.Send);
|
||||
}
|
||||
|
||||
public static void BeginRemove(this PlotterChildrenCollection children, IPlotterElement child)
|
||||
{
|
||||
children.Plotter.Dispatcher.BeginInvoke(((Action)(() => { children.Remove(child); })), DispatcherPriority.Send);
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user