class

Anvil::Surface::Memory

Inherits Anvil::Surface < Reference < Object

Zeichenfläche im Speicher — für Tests und für alles, was eine Ausgabe prüfen statt anzeigen will (Abnahmebilder, Fehlerberichte).

Hält ein Raster aus Graphemen und merkt sich, was committet wurde. Damit laufen die Specs der App-Schicht ohne Terminal.

Constructors

new(width : Int32 = 40, height : Int32 = 10, max_height : Int32 = 10)
Source

Instance methods

begin_frame
Source
close
Source
commit(lines : Array(Text::StyledLine)) : Nil

Schreibt Zeilen dauerhaft oberhalb der Zeichenfläche.

Source
commits
Source
committed_text
Source
cursor
Source
cursor_at(x : Int32, y : Int32) : Nil
Source
end_frame
Source
frames
Source
height
Source
height=(value : Int32) : Nil

Höhe der Live-Region. Im Vollbild fest.

Source
hide_cursor
Source
invalidate!

Erklärt den Bildschirminhalt für ungültig: der nächste Frame wird vollständig neu gezeichnet statt gediffed. Nötig, wenn etwas anderes auf das Terminal geschrieben hat (ein Subprozess) oder der Nutzer Ctrl-L drückt.

Source
max_height

Wie hoch die Region höchstens werden darf.

Source
put_cell(x : Int32, y : Int32, grapheme : String, style : Text::Style) : Nil
Source
size
Source
style_at(x : Int32, y : Int32) : Text::Style
Source
to_lines

Was auf der Fläche steht, als einfacher Text — ohne nachlaufende Leerzeichen, damit Erwartungen in Specs lesbar bleiben.

Source