Files
Lattice/Lattice.Core/Abstractions/ILayoutElement.cs

43 lines
1.3 KiB
C#

namespace Lattice.Core.Abstractions;
/// <summary>
/// Представляет базовый элемент иерархии компоновки Lattice.
/// </summary>
public interface ILayoutElement
{
/// <summary>
/// Уникальный идентификатор элемента.
/// </summary>
Guid Id { get; }
/// <summary>
/// Имя элемента для отображения или идентификации в логах.
/// </summary>
string Name { get; set; }
/// <summary>
/// Значение ширины (в пикселях или долях "star").
/// </summary>
double WidthValue { get; set; }
/// <summary>
/// Указывает, является ли ширина пропорциональной (star).
/// </summary>
bool IsWidthStar { get; set; }
/// <summary>
/// Значение высоты (в пикселях или долях "star").
/// </summary>
double HeightValue { get; set; }
/// <summary>
/// Указывает, является ли высота пропорциональной (star).
/// </summary>
bool IsHeightStar { get; set; }
/// <summary>
/// Родительский элемент в дереве компоновки.
/// </summary>
ILayoutElement? Parent { get; set; }
}