48 lines
1.1 KiB
C
48 lines
1.1 KiB
C
#pragma once
|
|
#include "tlibc/errors.h"
|
|
|
|
typedef struct TerminalSize {
|
|
i16 cols;
|
|
i16 rows;
|
|
} TerminalSize;
|
|
|
|
typedef enum Color16 {
|
|
Color16_Black = 30,
|
|
Color16_DarkRed = 31,
|
|
Color16_DarkGreen = 32,
|
|
Color16_DarkYellow = 33,
|
|
Color16_DarkBlue = 34,
|
|
Color16_DarkMagenta = 35,
|
|
Color16_DarkCyan = 36,
|
|
Color16_Gray = 37,
|
|
Color16_DarkGray = 90,
|
|
Color16_Red = 91,
|
|
Color16_Green = 92,
|
|
Color16_Yellow = 93,
|
|
Color16_Blue = 94,
|
|
Color16_Magenta = 95,
|
|
Color16_Cyan = 96,
|
|
Color16_White = 97
|
|
} Color16;
|
|
|
|
Result(void) term_init();
|
|
Result(void) term_getSize(TerminalSize* out);
|
|
|
|
Result(void) term_readLine(char* buf, u32 bufsize);
|
|
Result(void) term_readLineHidden(char *buf, u32 bufsize);
|
|
|
|
void term_setFgColor16(Color16 c);
|
|
void term_setBgColor16(Color16 c);
|
|
void term_bold();
|
|
void term_italic();
|
|
void term_underline();
|
|
void term_strikethrough();
|
|
void term_resetColors();
|
|
|
|
void term_clear();
|
|
void term_eraseRow();
|
|
void term_resetCursor();
|
|
void term_cursorMove(u16 row, u16 column);
|
|
void term_cursorHide();
|
|
void term_cursorShow();
|