namespace Lattice.UI.Docking.Abstractions;
///
/// Определяет контракт для команды док-системы.
///
public interface IDockCommand
{
///
/// Получает идентификатор команды.
///
string Id { get; }
///
/// Получает отображаемое имя команды.
///
string Name { get; }
///
/// Получает описание команды.
///
string Description { get; }
///
/// Получает значок команды.
///
string Icon { get; }
///
/// Получает комбинацию клавиш для команды.
///
string Shortcut { get; }
///
/// Определяет, можно ли выполнить команду.
///
/// Параметр команды.
/// true, если команду можно выполнить; в противном случае — false.
bool CanExecute(object? parameter);
///
/// Выполняет команду.
///
/// Параметр команды.
void Execute(object? parameter);
///
/// Событие, возникающее при изменении возможности выполнения команды.
///
event EventHandler CanExecuteChanged;
}