ui.h
Go to the documentation of this file.
1 #ifndef NVIM_UI_H
2 #define NVIM_UI_H
3 
4 #include <stddef.h>
5 #include <stdbool.h>
6 #include <stdint.h>
7 
8 #include "nvim/globals.h"
10 #include "nvim/highlight_defs.h"
11 
12 typedef enum {
18 #define kUIGlobalCount kUILinegrid
25 } UIExtension;
26 
27 EXTERN const char *ui_ext_names[] INIT(= {
28  "ext_cmdline",
29  "ext_popupmenu",
30  "ext_tabline",
31  "ext_wildmenu",
32  "ext_messages",
33  "ext_linegrid",
34  "ext_multigrid",
35  "ext_hlstate",
36  "ext_termcolors",
37  "_debug_float",
38 });
39 
40 typedef struct ui_t UI;
41 
42 enum {
45 };
46 
47 typedef int LineFlags;
48 
49 struct ui_t {
50  bool rgb;
51  bool override;
52  bool composed;
54  int width;
55  int height;
56  int pum_nlines;
57  bool pum_pos;
58  double pum_row;
59  double pum_col;
60  double pum_height;
61  double pum_width;
62  void *data;
63 
64 #ifdef INCLUDE_GENERATED_DECLARATIONS
65 # include "ui_events.generated.h"
66 #endif
67 
68  void (*inspect)(UI *ui, Dictionary *info);
69 };
70 
71 #ifdef INCLUDE_GENERATED_DECLARATIONS
72 # include "ui.h.generated.h"
73 # include "ui_events_call.h.generated.h"
74 #endif
75 
76 
78 #endif // NVIM_UI_H
UIExtension
UIExtension
Definition: ui.h:12
highlight_defs.h
kUIWildmenu
@ kUIWildmenu
Definition: ui.h:16
kUICmdline
@ kUICmdline
Definition: ui.h:13
ui_t
Definition: ui.h:49
ui_t::rgb
bool rgb
Definition: ui.h:50
void
void(WINAPI *pClosePseudoConsole)(HPCON)
kUILinegrid
@ kUILinegrid
Definition: ui.h:19
kUIMultigrid
@ kUIMultigrid
Definition: ui.h:20
kUIMessages
@ kUIMessages
Definition: ui.h:17
defs.h
ui_t::pum_row
double pum_row
UI reports back pum position?
Definition: ui.h:58
globals.h
INIT
const EXTERN char *ui_ext_names[] INIT(={ "ext_cmdline", "ext_popupmenu", "ext_tabline", "ext_wildmenu", "ext_messages", "ext_linegrid", "ext_multigrid", "ext_hlstate", "ext_termcolors", "_debug_float", })
ui_t::width
int width
Definition: ui.h:54
ui_t::data
void * data
Definition: ui.h:62
ui_t::pum_height
double pum_height
Definition: ui.h:60
ui_t::height
int height
Definition: ui.h:55
kUIFloatDebug
@ kUIFloatDebug
Definition: ui.h:23
resize_events
EXTERN MultiQueue * resize_events
Definition: ui.h:77
ui_t::pum_col
double pum_col
Definition: ui.h:59
multiqueue
Definition: multiqueue.c:73
LineFlags
int LineFlags
Definition: ui.h:47
kUITabline
@ kUITabline
Definition: ui.h:15
kLineFlagInvalid
@ kLineFlagInvalid
Definition: ui.h:44
Dictionary
Definition: defs.h:94
EXTERN
#define EXTERN
Definition: macros.h:9
ui_t::pum_pos
bool pum_pos
actual nr. lines shown in PUM
Definition: ui.h:57
ui_t::pum_nlines
int pum_nlines
Definition: ui.h:56
kUITermColors
@ kUITermColors
Definition: ui.h:22
kUIPopupmenu
@ kUIPopupmenu
Definition: ui.h:14
kUIHlState
@ kUIHlState
Definition: ui.h:21
ui_t::inspect
void(* inspect)(UI *ui, Dictionary *info)
Definition: ui.h:68
kLineFlagWrap
@ kLineFlagWrap
Definition: ui.h:43
ui_t::ui_ext
bool ui_ext[kUIExtCount]
Externalized UI capabilities.
Definition: ui.h:53
kUIExtCount
@ kUIExtCount
Definition: ui.h:24
ui_t::pum_width
double pum_width
Definition: ui.h:61
ui_t::composed
bool composed
Definition: ui.h:52