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(); } }