// Copyright (C) Stichting Deltares 2016. All rights reserved. // // This file is part of Ringtoets. // // Ringtoets is free software: you can redistribute it and/or modify // it under the terms of the GNU Lesser General Public License as published by // the Free Software Foundation, either version 3 of the License, or // (at your option) any later version. // // This program is distributed in the hope that it will be useful, // but WITHOUT ANY WARRANTY; without even the implied warranty of // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the // GNU Lesser General Public License for more details. // // You should have received a copy of the GNU Lesser General Public License // along with this program. If not, see . // // All names, logos, and references to "Deltares" are registered trademarks of // Stichting Deltares and remain full property of Stichting Deltares at all times. // All rights reserved. using System.Drawing; using System.Windows.Forms; namespace Core.Common.Gui.ContextMenu { /// /// Specifies the interface for objects that build context menus. /// public interface IContextMenuBuilder { /// /// Adds an item to the , which starts edit mode for the name of . /// /// The itself. IContextMenuBuilder AddRenameItem(); /// /// Adds an item to the , which deletes the . /// /// The itself. IContextMenuBuilder AddDeleteItem(); /// /// Adds an item to the , which deletes the children /// of . /// /// The itself. IContextMenuBuilder AddDeleteChildrenItem(); /// /// 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. IContextMenuBuilder AddOpenItem(); /// /// Adds an item to the , which exports the data of the . /// /// The itself. IContextMenuBuilder AddExportItem(); /// /// Adds an item to the , which imports to the data of the . /// /// The itself. IContextMenuBuilder AddImportItem(); /// /// Adds an item to the , which imports to the data of the . /// /// The text of the import item. /// The tooltip of the import item. /// The image of the import item. /// The itself. IContextMenuBuilder AddCustomImportItem(string text, string toolTip, Image image); /// /// Adds an item to the , which shows properties of the data of the . /// /// The itself. 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(); } }