RenderCell
classin packageklyn.gui.terminal
public class RenderCell extends Object:
└ RenderCell

One logical terminal cell.

A cell normally contains one Unicode scalar value. For terminal grapheme clusters such as emoji variation sequences (for example ⚙️) or emoji ZWJ sequences, text keeps the exact string that must be emitted to the real terminal, while glyph keeps the first scalar for compatibility with the rest of the renderer. Continuation cells used by wide glyphs have glyph == Char(0) and an empty text.

@since 1.0

Fields
Modifier and Type Member Description
public dirty
dirty as Boolean = true
No summary.
public glyph
glyph as Char = ' '
No summary.
public style
style as RenderStyle = null
No summary.
public text
text as String = " "
No summary.
Properties inherited from Object: type
Constructors
Modifier and Type Member Description
public RenderCell
RenderCell(glyph as Char = ' ', style as RenderStyle = null):
Builds a cell with a glyph and a style.
Methods
Modifier and Type Member Description
public clear
clear(style as RenderStyle = null) as Void:
Clears the cell with the provided style.
public copy
copy() as RenderCell:
Returns a deep copy of the cell.
public sameAs
sameAs(other as RenderCell) as Boolean:
Returns true when both cells are visually identical.
public set
set(glyph as Char, style as RenderStyle) as Void:
Overwrites the cell content with a single scalar glyph.
public setContinuation
setContinuation(style as RenderStyle) as Void:
Marks the cell as the second half of a wide glyph.
public setText
setText(text as String, glyph as Char, style as RenderStyle) as Void:
Overwrites the cell content with an exact terminal grapheme cluster.
public override toString
toString() as String:
Returns the plain character content of the cell.
Methods inherited from Object: fromJson, toDict, toJson, toString, toXml