using System;
using System.Windows.Forms;
using Core.Common.Controls;
namespace Core.Common.Gui.ContextMenu
{
public interface IContextMenuBuilder {
///
/// Adds an item to the , which deletes the .
///
/// The itself.
IContextMenuBuilder AddDeleteItem();
///
/// Adds an item to the , which expands the .
///
/// The itself.
IContextMenuBuilder AddExpandAllItem();
///
/// Adds an item to the , which collapses the .
///
/// The itself.
IContextMenuBuilder AddCollapseAllItem();
///
/// Adds an item to the , which opens a view for the data of the .
///
/// The itself.
/// Thrown when the was not passed on construction.
IContextMenuBuilder AddOpenItem();
///
/// Adds an item to the , which exports the data of the .
///
/// The itself.
/// Thrown when the was not passed on construction.
IContextMenuBuilder AddExportItem();
///
/// Adds an item to the , which imports the data of the .
///
/// The itself.
/// Thrown when the was not passed on construction.
IContextMenuBuilder AddImportItem();
///
/// Adds an item to the , which shows properties of the data of the .
///
/// The itself.
/// Thrown when the was not passed on construction.
IContextMenuBuilder AddPropertiesItem();
///
/// Adds a to the . A
/// is only added if the last item that was added to the exists and is not a
/// .
///
/// The itself.
IContextMenuBuilder AddSeparator();
///
/// Adds a custom item to the .
///
/// The custom to add to the .
/// The itself.
IContextMenuBuilder AddCustomItem(StrictContextMenuItem item);
///
/// Obtain the , which has been constructed by using the other methods of
/// .
///
/// The constructed .
ContextMenuStrip Build();
}
}