38 lines
1.3 KiB
C#
38 lines
1.3 KiB
C#
namespace Lattice.Core.Models;
|
|
|
|
/// <summary>
|
|
/// Определение действия (команды), которое может быть отображено в интерфейсе.
|
|
/// </summary>
|
|
public record ActionDefinition
|
|
{
|
|
/// <summary>
|
|
/// Уникальный идентификатор команды.
|
|
/// </summary>
|
|
public string Id { get; init; } = Guid.NewGuid().ToString();
|
|
|
|
/// <summary>
|
|
/// Текст кнопки, отображаемый пользователю.
|
|
/// </summary>
|
|
public string Label { get; init; } = "Action";
|
|
|
|
/// <summary>
|
|
/// Код иконки из шрифта Segoe Fluent Icons (например, "\uE102").
|
|
/// </summary>
|
|
public string IconKey { get; init; } = "\uE102";
|
|
|
|
/// <summary>
|
|
/// Группа контекста, к которой привязана кнопка (например, "CodeEditor", "Common").
|
|
/// </summary>
|
|
public string TargetContext { get; init; } = "Common";
|
|
|
|
/// <summary>
|
|
/// Указывает, активна ли кнопка в данный момент.
|
|
/// </summary>
|
|
public bool IsEnabled { get; set; } = true;
|
|
|
|
/// <summary>
|
|
/// Подсказка, отображаемая при наведении (Tooltip).
|
|
/// </summary>
|
|
public string Tooltip { get; init; } = string.Empty;
|
|
}
|