namespace Spectre.Console
{
///
/// Contains extension methods for .
///
public static class AlignableExtensions
{
///
/// Sets the alignment for an object.
///
/// The alignable type.
/// The alignable object.
/// The alignment.
/// The same alignable object.
public static T WithAlignment(this T alignable, Justify alignment)
where T : IAlignable
{
alignable.Alignment = alignment;
return alignable;
}
///
/// Sets the object to be left aligned.
///
/// The alignable type.
/// The alignable object.
/// The same alignable object.
public static T LeftAligned(this T alignable)
where T : IAlignable
{
alignable.Alignment = Justify.Left;
return alignable;
}
///
/// Sets the object to be centered.
///
/// The alignable type.
/// The alignable object.
/// The same alignable object.
public static T Centered(this T alignable)
where T : IAlignable
{
alignable.Alignment = Justify.Center;
return alignable;
}
///
/// Sets the object to be right aligned.
///
/// The alignable type.
/// The alignable object.
/// The same alignable object.
public static T RightAligned(this T alignable)
where T : IAlignable
{
alignable.Alignment = Justify.Right;
return alignable;
}
}
}