ui_events.in.h (8003B)
1 #pragma once 2 3 // This file is not compiled, just parsed for definitions 4 #error "don't include this file, include nvim/ui.h" 5 6 #include "nvim/api/private/defs.h" 7 #include "nvim/func_attr.h" 8 #include "nvim/ui.h" 9 10 void mode_info_set(Boolean enabled, Array cursor_styles) 11 FUNC_API_SINCE(3); 12 void update_menu(void) 13 FUNC_API_SINCE(3); 14 void busy_start(void) 15 FUNC_API_SINCE(3); 16 void busy_stop(void) 17 FUNC_API_SINCE(3); 18 void mouse_on(void) 19 FUNC_API_SINCE(3); 20 void mouse_off(void) 21 FUNC_API_SINCE(3); 22 void mode_change(String mode, Integer mode_idx) 23 FUNC_API_SINCE(3); 24 void bell(void) 25 FUNC_API_SINCE(3); 26 void visual_bell(void) 27 FUNC_API_SINCE(3); 28 void flush(void) 29 FUNC_API_SINCE(3) FUNC_API_REMOTE_IMPL; 30 void connect(Array args) 31 FUNC_API_SINCE(14) FUNC_API_REMOTE_ONLY FUNC_API_REMOTE_IMPL FUNC_API_CLIENT_IMPL; 32 void restart(String progpath, Array argv) 33 FUNC_API_SINCE(14) FUNC_API_REMOTE_ONLY FUNC_API_REMOTE_IMPL FUNC_API_CLIENT_IMPL; 34 void suspend(void) 35 FUNC_API_SINCE(3); 36 void set_title(String title) 37 FUNC_API_SINCE(3); 38 void set_icon(String icon) 39 FUNC_API_SINCE(3); 40 void screenshot(String path) 41 FUNC_API_SINCE(7); 42 void option_set(String name, Object value) 43 FUNC_API_SINCE(4); 44 void chdir(String path) 45 FUNC_API_SINCE(12); 46 // Stop event is not exported as such, represented by EOF in the msgpack stream. 47 void stop(void) 48 FUNC_API_NOEXPORT; 49 void ui_send(String content) 50 FUNC_API_SINCE(14) FUNC_API_REMOTE_IMPL; 51 52 // First revision of the grid protocol, used by default 53 void update_fg(Integer fg) 54 FUNC_API_SINCE(3) FUNC_API_REMOTE_ONLY; 55 void update_bg(Integer bg) 56 FUNC_API_SINCE(3) FUNC_API_REMOTE_ONLY; 57 void update_sp(Integer sp) 58 FUNC_API_SINCE(3) FUNC_API_REMOTE_ONLY; 59 void resize(Integer width, Integer height) 60 FUNC_API_SINCE(3) FUNC_API_REMOTE_ONLY; 61 void clear(void) 62 FUNC_API_SINCE(3) FUNC_API_REMOTE_ONLY; 63 void eol_clear(void) 64 FUNC_API_SINCE(3) FUNC_API_REMOTE_ONLY; 65 void cursor_goto(Integer row, Integer col) 66 FUNC_API_SINCE(3) FUNC_API_REMOTE_ONLY; 67 void highlight_set(HlAttrs attrs) 68 FUNC_API_SINCE(3) FUNC_API_REMOTE_ONLY FUNC_API_REMOTE_IMPL; 69 void put(String str) 70 FUNC_API_SINCE(3) FUNC_API_REMOTE_ONLY; 71 void set_scroll_region(Integer top, Integer bot, Integer left, Integer right) 72 FUNC_API_SINCE(3) FUNC_API_REMOTE_ONLY; 73 void scroll(Integer count) 74 FUNC_API_SINCE(3) FUNC_API_REMOTE_ONLY; 75 76 // Second revision of the grid protocol, used with ext_linegrid ui option 77 void default_colors_set(Integer rgb_fg, Integer rgb_bg, Integer rgb_sp, Integer cterm_fg, 78 Integer cterm_bg) 79 FUNC_API_SINCE(4) FUNC_API_REMOTE_IMPL; 80 void hl_attr_define(Integer id, HlAttrs rgb_attrs, HlAttrs cterm_attrs, Array info) 81 FUNC_API_SINCE(5) FUNC_API_REMOTE_IMPL; 82 void hl_group_set(String name, Integer id) 83 FUNC_API_SINCE(6) FUNC_API_CLIENT_IGNORE; 84 void grid_resize(Integer grid, Integer width, Integer height) 85 FUNC_API_SINCE(5) FUNC_API_REMOTE_IMPL FUNC_API_COMPOSITOR_IMPL FUNC_API_CLIENT_IMPL; 86 void grid_clear(Integer grid) 87 FUNC_API_SINCE(5) FUNC_API_REMOTE_IMPL; 88 void grid_cursor_goto(Integer grid, Integer row, Integer col) 89 FUNC_API_SINCE(5) FUNC_API_REMOTE_IMPL FUNC_API_COMPOSITOR_IMPL; 90 void grid_line(Integer grid, Integer row, Integer col_start, Array data, Boolean wrap) 91 FUNC_API_SINCE(5) FUNC_API_REMOTE_ONLY FUNC_API_CLIENT_IMPL; 92 void grid_scroll(Integer grid, Integer top, Integer bot, Integer left, Integer right, Integer rows, 93 Integer cols) 94 FUNC_API_SINCE(5) FUNC_API_REMOTE_IMPL FUNC_API_COMPOSITOR_IMPL; 95 void grid_destroy(Integer grid) 96 FUNC_API_SINCE(6) FUNC_API_REMOTE_ONLY; 97 98 // For performance and simplicity, we use the dense screen representation 99 // in internal code, such as compositor and TUI. The remote_ui module will 100 // translate this in to the public grid_line format. 101 void raw_line(Integer grid, Integer row, Integer startcol, Integer endcol, Integer clearcol, 102 Integer clearattr, LineFlags flags, const schar_T *chunk, const sattr_T *attrs) 103 FUNC_API_NOEXPORT FUNC_API_COMPOSITOR_IMPL; 104 105 void win_pos(Integer grid, Window win, Integer startrow, Integer startcol, Integer width, 106 Integer height) 107 FUNC_API_SINCE(6) FUNC_API_REMOTE_ONLY; 108 void win_float_pos(Integer grid, Window win, String anchor, Integer anchor_grid, Float anchor_row, 109 Float anchor_col, Boolean mouse_enabled, Integer zindex, Integer compindex, 110 Integer screen_row, Integer screen_col) 111 FUNC_API_SINCE(6) FUNC_API_REMOTE_ONLY; 112 void win_external_pos(Integer grid, Window win) 113 FUNC_API_SINCE(6) FUNC_API_REMOTE_ONLY; 114 void win_hide(Integer grid) 115 FUNC_API_SINCE(6) FUNC_API_REMOTE_ONLY; 116 void win_close(Integer grid) 117 FUNC_API_SINCE(6) FUNC_API_REMOTE_ONLY; 118 119 void msg_set_pos(Integer grid, Integer row, Boolean scrolled, String sep_char, Integer zindex, 120 Integer compindex) 121 FUNC_API_SINCE(6) FUNC_API_COMPOSITOR_IMPL FUNC_API_CLIENT_IGNORE; 122 123 void win_viewport(Integer grid, Window win, Integer topline, Integer botline, Integer curline, 124 Integer curcol, Integer line_count, Integer scroll_delta) 125 FUNC_API_SINCE(7) FUNC_API_CLIENT_IGNORE; 126 127 void win_viewport_margins(Integer grid, Window win, Integer top, Integer bottom, Integer left, 128 Integer right) 129 FUNC_API_SINCE(12) FUNC_API_CLIENT_IGNORE; 130 131 void win_extmark(Integer grid, Window win, Integer ns_id, Integer mark_id, Integer row, Integer col) 132 FUNC_API_SINCE(10) FUNC_API_REMOTE_ONLY; 133 134 void popupmenu_show(Array items, Integer selected, Integer row, Integer col, Integer grid) 135 FUNC_API_SINCE(3) FUNC_API_REMOTE_ONLY; 136 void popupmenu_hide(void) 137 FUNC_API_SINCE(3) FUNC_API_REMOTE_ONLY; 138 void popupmenu_select(Integer selected) 139 FUNC_API_SINCE(3) FUNC_API_REMOTE_ONLY; 140 141 void tabline_update(Tabpage current, Array tabs, Buffer current_buffer, Array buffers) 142 FUNC_API_SINCE(3) FUNC_API_REMOTE_ONLY; 143 144 void cmdline_show(Array content, Integer pos, String firstc, String prompt, Integer indent, 145 Integer level, Integer hl_id) 146 FUNC_API_SINCE(3) FUNC_API_REMOTE_ONLY; 147 void cmdline_pos(Integer pos, Integer level) 148 FUNC_API_SINCE(3) FUNC_API_REMOTE_ONLY; 149 void cmdline_special_char(String c, Boolean shift, Integer level) 150 FUNC_API_SINCE(3) FUNC_API_REMOTE_ONLY; 151 void cmdline_hide(Integer level, Boolean abort) 152 FUNC_API_SINCE(3) FUNC_API_REMOTE_ONLY; 153 void cmdline_block_show(Array lines) 154 FUNC_API_SINCE(3) FUNC_API_REMOTE_ONLY; 155 void cmdline_block_append(Array lines) 156 FUNC_API_SINCE(3) FUNC_API_REMOTE_ONLY; 157 void cmdline_block_hide(void) 158 FUNC_API_SINCE(3) FUNC_API_REMOTE_ONLY; 159 160 void wildmenu_show(Array items) 161 FUNC_API_SINCE(3) FUNC_API_REMOTE_ONLY; 162 void wildmenu_select(Integer selected) 163 FUNC_API_SINCE(3) FUNC_API_REMOTE_ONLY; 164 void wildmenu_hide(void) 165 FUNC_API_SINCE(3) FUNC_API_REMOTE_ONLY; 166 167 void msg_show(String kind, Array content, Boolean replace_last, Boolean history, Boolean append, 168 Object id) 169 FUNC_API_SINCE(6) FUNC_API_REMOTE_ONLY; 170 void msg_clear(void) 171 FUNC_API_SINCE(6) FUNC_API_REMOTE_ONLY; 172 void msg_showcmd(Array content) 173 FUNC_API_SINCE(6) FUNC_API_REMOTE_ONLY; 174 void msg_showmode(Array content) 175 FUNC_API_SINCE(6) FUNC_API_REMOTE_ONLY; 176 void msg_ruler(Array content) 177 FUNC_API_SINCE(6) FUNC_API_REMOTE_ONLY; 178 void msg_history_show(Array entries, Boolean prev_cmd) 179 FUNC_API_SINCE(6) FUNC_API_REMOTE_ONLY; 180 181 // This UI event is currently undocumented. 182 // - When the server needs to intentionally exit with an exit code, and there is no 183 // message in server stderr for the user, this event is sent with positive `status` 184 // argument, to indicate that the UI should exit normally with `status`. 185 // - When the server has crashed or there is a message in server stderr for the user, 186 // this event is not sent, and the UI should make server stderr visible. 187 // - When :detach is used on the server, this event is sent with a zero `status` 188 // argument, to indicate that the UI shouldn't wait for server exit. 189 void error_exit(Integer status) 190 FUNC_API_SINCE(12) FUNC_API_CLIENT_IMPL;