Добавлен Core

This commit is contained in:
2026-01-07 21:31:57 +03:00
parent fc994edf71
commit b6de0543b7
4 changed files with 170 additions and 8 deletions

View File

@@ -1,16 +1,32 @@
namespace Lattice.Core.Models;
/// <summary>
/// Определение команды для панели инструментов или меню.
/// Определение действия (команды), которое может быть отображено в интерфейсе.
/// </summary>
public class ActionDefinition
public record ActionDefinition
{
public string Id { get; init; } = string.Empty;
public string Label { get; init; } = string.Empty;
public string IconKey { get; init; } = string.Empty;
/// <summary>
/// Уникальный идентификатор команды.
/// </summary>
public string Id { get; init; } = Guid.NewGuid().ToString();
/// <summary>
/// Контекст, в котором эта кнопка должна быть доступна (например, "C#", "XAML", "Common").
/// Текст кнопки.
/// </summary>
public string Label { get; init; } = "Action";
/// <summary>
/// Группа контекста, к которой привязана кнопка (например, "CodeEditor").
/// </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;
}