using System; using Spectre.Console.Rendering; namespace Spectre.Console { /// /// Represents a progress column. /// public abstract class ProgressColumn { /// /// Gets a value indicating whether or not content should not wrap. /// protected internal virtual bool NoWrap { get; } /// /// Gets a renderable representing the column. /// /// The render context. /// The task. /// The elapsed time since last call. /// A renderable representing the column. public abstract IRenderable Render(RenderContext context, ProgressTask task, TimeSpan deltaTime); /// /// Gets the width of the column. /// /// The context. /// The width of the column, or null to calculate. public virtual int? GetColumnWidth(RenderContext context) { return null; } } }