diff options
author | Thiago de Arruda <tpadilha84@gmail.com> | 2014-12-09 08:55:31 -0300 |
---|---|---|
committer | Thiago de Arruda <tpadilha84@gmail.com> | 2014-12-09 08:55:31 -0300 |
commit | c5b9e5d1d317b74d4adf7637cd9081be4ee52722 (patch) | |
tree | 46f2b1692851ae6afe3ffc5d9c2ebc700fe6b452 /src/nvim/ui.h | |
parent | 8bb7aa329d20cb265d8952c96c84a0e54a5726ab (diff) | |
parent | 1192fbd08a054cece0b48dfb695e77e689997980 (diff) | |
download | rneovim-c5b9e5d1d317b74d4adf7637cd9081be4ee52722.tar.gz rneovim-c5b9e5d1d317b74d4adf7637cd9081be4ee52722.tar.bz2 rneovim-c5b9e5d1d317b74d4adf7637cd9081be4ee52722.zip |
Merge PR #1605 'Abstract UI termcap'
Diffstat (limited to 'src/nvim/ui.h')
-rw-r--r-- | src/nvim/ui.h | 32 |
1 files changed, 32 insertions, 0 deletions
diff --git a/src/nvim/ui.h b/src/nvim/ui.h index b174af9abe..d0933055cc 100644 --- a/src/nvim/ui.h +++ b/src/nvim/ui.h @@ -1,7 +1,39 @@ #ifndef NVIM_UI_H #define NVIM_UI_H +#include <stddef.h> #include <stdbool.h> +#include <stdint.h> + +typedef struct { + bool bold, standout, underline, undercurl, italic, reverse; + int foreground, background; +} HlAttrs; + +typedef struct ui_t UI; + +struct ui_t { + int width, height; + void *data; + void (*resize)(UI *ui, int rows, int columns); + void (*clear)(UI *ui); + void (*eol_clear)(UI *ui); + void (*cursor_goto)(UI *ui, int row, int col); + void (*cursor_on)(UI *ui); + void (*cursor_off)(UI *ui); + void (*mouse_on)(UI *ui); + void (*mouse_off)(UI *ui); + void (*insert_mode)(UI *ui); + void (*normal_mode)(UI *ui); + void (*set_scroll_region)(UI *ui, int top, int bot, int left, int right); + void (*scroll)(UI *ui, int count); + void (*highlight_set)(UI *ui, HlAttrs attrs); + void (*put)(UI *ui, uint8_t *str, size_t len); + void (*bell)(UI *ui); + void (*visual_bell)(UI *ui); + void (*flush)(UI *ui); + void (*suspend)(UI *ui); +}; #ifdef INCLUDE_GENERATED_DECLARATIONS # include "ui.h.generated.h" |