50 lines
2.2 KiB
C#
50 lines
2.2 KiB
C#
namespace Lattice.UI.Docking.Abstractions;
|
|
|
|
/// <summary>
|
|
/// Определяет контракт для менеджера контекстных меню док-системы.
|
|
/// </summary>
|
|
public interface IDockContextManager
|
|
{
|
|
/// <summary>
|
|
/// Показывает контекстное меню для указанного элемента.
|
|
/// </summary>
|
|
/// <param name="element">Элемент, для которого показывается меню.</param>
|
|
/// <param name="x">Координата X для отображения меню.</param>
|
|
/// <param name="y">Координата Y для отображения меню.</param>
|
|
/// <exception cref="ArgumentNullException">
|
|
/// Выбрасывается, если <paramref name="element"/> равен null.
|
|
/// </exception>
|
|
void ShowContextMenu(IDockControl element, double x, double y);
|
|
|
|
/// <summary>
|
|
/// Скрывает текущее контекстное меню.
|
|
/// </summary>
|
|
void HideContextMenu();
|
|
|
|
/// <summary>
|
|
/// Регистрирует команду в контекстном меню.
|
|
/// </summary>
|
|
/// <param name="commandId">Идентификатор команды.</param>
|
|
/// <param name="command">Команда для регистрации.</param>
|
|
/// <exception cref="ArgumentNullException">
|
|
/// Выбрасывается, если <paramref name="commandId"/> или <paramref name="command"/>
|
|
/// равны null.
|
|
/// </exception>
|
|
void RegisterCommand(string commandId, IDockCommand command);
|
|
|
|
/// <summary>
|
|
/// Удаляет команду из контекстного меню.
|
|
/// </summary>
|
|
/// <param name="commandId">Идентификатор команды.</param>
|
|
void UnregisterCommand(string commandId);
|
|
|
|
/// <summary>
|
|
/// Происходит при показе контекстного меню.
|
|
/// </summary>
|
|
event EventHandler<ContextMenuShownEventArgs> ContextMenuShown;
|
|
|
|
/// <summary>
|
|
/// Происходит при скрытии контекстного меню.
|
|
/// </summary>
|
|
event EventHandler ContextMenuHidden;
|
|
} |