public TextBufferEntry(Color Colors) : this(Colors, Colors) { }
public TextBufferEntry(Color Fore, Color Back) : this((char)0, Fore, Back) { }
public void Set(int Idx, char C, Color Fg, Color Bg) { Set(Idx, Fg, Bg); ForeDataRaw[Idx * 4 + 3] = (byte)C; Dirty = true; }
public void Set(int X, int Y, Color Fg, Color Bg) { Set(Y * W + X, Fg, Bg); }
public void Set(int Idx, Color Fg, Color Bg) { Idx *= 4; ForeDataRaw[Idx] = Fg.R; ForeDataRaw[Idx + 1] = Fg.G; ForeDataRaw[Idx + 2] = Fg.B; BackDataRaw[Idx] = Bg.R; BackDataRaw[Idx + 1] = Bg.G; BackDataRaw[Idx + 2] = Bg.B; BackDataRaw[Idx + 3] = Bg.A; Dirty = true; }
public void Set(int X, int Y, char C, Color Fg, Color Bg) { Set(Y * W + X, C, Fg, Bg); }
public void Print(int I, string Str, Color Fg, Color Bg) { for (int i = 0; i < Str.Length; i++) Set(I + i, Str[i], Fg, Bg); }
public void Print(int X, int Y, string Str, Color Fg, Color Bg) { Print(Y * W + X, Str, Fg, Bg); }
public void Clear(char C, Color Fg, Color Bg) { for (int i = 0; i < W * H; i++) Set(i, C, Fg, Bg); }
public TextBufferEntry(char Char, Color Fore, Color Back) { this.Char = Char; this.Fore = Fore; this.Back = Back; }