using System;
using System.Collections.Generic;
using System.Drawing;
namespace Core.Common.BaseDelftTools
{
///
/// Interface for data export to external formats.
///
public interface IFileExporter
{
///
/// User readable name of the exporter.
///
string Name { get; }
///
/// The category of the exporter
///
string Category { get; }
///
/// Must be implemented if exporter exports to the file, otherwise null.
///
/// "My file format1 (*.ext1)|*.ext1|My file format2 (*.ext2)|*.ext2"
///
///
string FileFilter { get; }
///
/// The icon shown in dialogs for the exporter
///
Bitmap Icon { get; }
///
/// Exports given item to the data source provided by path.
///
/// True if the export was successful, false otherwise.
bool Export(object item, string path);
///
/// Exporter supports export of the following data types
///
///
IEnumerable SourceTypes();
///
/// Checks if the item can be exported
///
/// object to export
bool CanExportFor(object item);
}
}