9 typedef struct UiWin UiWin
;
17 UI_OPTION_LINE_NUMBERS_ABSOLUTE
= 1 << 0,
18 UI_OPTION_LINE_NUMBERS_RELATIVE
= 1 << 1,
19 UI_OPTION_SYMBOL_SPACE
= 1 << 2,
20 UI_OPTION_SYMBOL_TAB
= 1 << 3,
21 UI_OPTION_SYMBOL_TAB_FILL
= 1 << 4,
22 UI_OPTION_SYMBOL_EOL
= 1 << 5,
23 UI_OPTION_SYMBOL_EOF
= 1 << 6,
24 UI_OPTION_CURSOR_LINE
= 1 << 7,
28 UI_STYLE_LEXER_MAX
= 64,
34 UI_STYLE_COLOR_COLUMN
,
43 bool (*init
)(Ui
*, Vis
*);
46 UiWin
* (*window_new
)(Ui
*, View
*, File
*);
47 void (*window_free
)(UiWin
*);
48 void (*window_focus
)(UiWin
*);
49 UiWin
* (*prompt_new
)(Ui
*, View
*, File
*);
50 void (*prompt
)(Ui
*, const char *title
, const char *value
);
51 char* (*prompt_input
)(Ui
*);
52 void (*prompt_hide
)(Ui
*);
53 void (*die
)(Ui
*, const char *msg
, va_list ap
) __attribute__((noreturn
));
54 void (*info
)(Ui
*, const char *msg
, va_list ap
);
55 void (*info_hide
)(Ui
*);
56 void (*arrange
)(Ui
*, enum UiLayout
);
61 const char* (*getkey
)(Ui
*);
63 void (*terminal_save
)(Ui
*);
64 void (*terminal_restore
)(Ui
*);
65 TermKey
* (*termkey_get
)(Ui
*);
70 void (*draw_status
)(UiWin
*);
71 void (*reload
)(UiWin
*, File
*);
72 void (*options_set
)(UiWin
*, enum UiOption
);
73 enum UiOption (*options_get
)(UiWin
*);
74 bool (*syntax_style
)(UiWin
*, int id
, const char *style
);