using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using DataPerformer;
using Chart.Drawing.Series;
using Chart.Drawing.Interfaces;
namespace DataPerformerUI
{
/// <summary>
/// Static extensions
/// </summary>
public static class StaticExtension
{
/// <summary>
/// Saves series
/// </summary>
/// <param name="series">Series for saving</param>
/// <param name="control">Parent control</param>
public static void Save(this Series series, Control control)
{
SaveFileDialog dlg = new SaveFileDialog();
dlg.Filter = "Graph files |*.gra";
if (control == null)
{
if (dlg.ShowDialog() != DialogResult.OK)
{
return;
}
}
if (dlg.ShowDialog(control) != DialogResult.OK)
{
return;
}
series.Save(dlg.FileName);
}
/// <summary>
/// Loads series
/// </summary>
/// <param name="series">Series for loading</param>
/// <param name="control">Parent control</param>
public static void Load(this Series series, Control control)
{
OpenFileDialog dlg = new OpenFileDialog();
dlg.Filter = "Graph files |*.gra";
if (control == null)
{
if (dlg.ShowDialog() != DialogResult.OK)
{
return;
}
}
if (dlg.ShowDialog(control) != DialogResult.OK)
{
return;
}
series.Load(dlg.FileName);
}
/// <summary>
/// Copies series to clipboard
/// </summary>
/// <param name="series">Series to copy to clipboard</param>
public static void CopyToClipboard(this Series series)
{
if (series == null)
{
return;
}
PureSeries ps = new PureSeries();
for (int i = 0; i < series.Count; i++)
{
ps.AddXY(series[i, 0], series[i, 1]);
}
Clipboard.SetDataObject(ps, false);
}
}
}