Skip to content

Class UIAnsiProgram

Runs an interface over escape sequences, as an DarkEffekt.Terminal.ITerminalProgram: it works through any connection and in any terminal, at the cost of encoding every frame. Each frame it writes only the cells that changed. It takes over the alternate screen and hides the cursor, and puts both back when it stops.

Declaration
public sealed class UIAnsiProgram : ITerminalProgram, ITerminalTick

Implements:
DarkEffekt.Terminal.ITerminalProgram, DarkEffekt.Terminal.ITerminalTick

Declaration
public TerminalUI UI { get; }

Ask the terminal to report the pointer as it moves with no button held. Set before Start.

Declaration
public bool ReportHover { get; set; }
Declaration
public void Start(IProgramHost host)
Type Name
DarkEffekt.Terminal.IProgramHost host
Declaration
public void Stop()
Declaration
public void OnInput(byte[] data)
Type Name
System.Byte[] data
Declaration
public void OnResize(int cols, int rows)
Type Name
System.Int32 cols
System.Int32 rows
Declaration
public void Tick(float deltaSeconds)
Type Name
System.Single deltaSeconds