3 * - By John Hodge (thePowersGang)
6 * - RichText terminal translation
12 #include <stddef.h> // size_t
15 typedef struct sTerminal tTerminal;
17 extern tTerminal *Display_Init(int Cols, int Lines, int ExtraScrollbackLines);
19 // TermState is a variable used by the terminal emulation code
20 extern void *Display_GetTermState(tTerminal *Term);
21 extern void Display_SetTermState(tTerminal *Term, void *State);
23 extern void Display_SendInput(tTerminal *Term, const char *String);
25 extern void Display_AddText(tTerminal *Term, size_t Length, const char *UTF8Text);
26 extern void Display_Newline(tTerminal *Term, bool bCarriageReturn);
27 extern void Display_SetScrollArea(tTerminal *Term, int Start, int Count); // Only valid in AltBuffer
28 extern void Display_ScrollDown(tTerminal *Term, int Count);
29 extern void Display_SetCursor(tTerminal *Term, int Row, int Col);
30 extern void Display_MoveCursor(tTerminal *Term, int RelRow, int RelCol);
31 extern void Display_SaveCursor(tTerminal *Term);
32 extern void Display_RestoreCursor(tTerminal *Term);
33 extern void Display_ClearLine(tTerminal *Term, int Dir); // 0: All, 1: Forward, -1: Reverse
34 extern void Display_ClearLines(tTerminal *Term, int Dir); // 0: All, 1: Forward, -1: Reverse
35 extern void Display_ResetAttributes(tTerminal *Term);
36 extern void Display_SetForeground(tTerminal *Term, uint32_t RGB);
37 extern void Display_SetBackground(tTerminal *Term, uint32_t RGB);
39 * \brief Ensure that recent updates are flushed to the server
40 * \note Called at the end of an "input" buffer
42 extern void Display_Flush(tTerminal *Term);
45 * \brief Switch the display to the alternate buffer (no scrollback)
47 extern void Display_ShowAltBuffer(tTerminal *Term, bool AltBufEnabled);
49 extern void Display_SetTitle(tTerminal *Term, const char *Title);