screen.h
Go to the documentation of this file.
1 #ifndef NVIM_SCREEN_H
2 #define NVIM_SCREEN_H
3 
4 #include <stdbool.h>
5 
6 #include "nvim/buffer_defs.h"
7 #include "nvim/grid.h"
8 #include "nvim/pos.h"
9 #include "nvim/types.h"
10 
11 // flags for update_screen()
12 // The higher the value, the higher the priority
13 #define VALID 10 // buffer not changed, or changes marked
14  // with b_mod_*
15 #define INVERTED 20 // redisplay inverted part that changed
16 #define INVERTED_ALL 25 // redisplay whole inverted part
17 #define REDRAW_TOP 30 // display first w_upd_rows screen lines
18 #define SOME_VALID 35 // like NOT_VALID but may scroll
19 #define NOT_VALID 40 // buffer needs complete redraw
20 #define CLEAR 50 // screen messed up, clear it
21 
23 typedef enum {
28 } WindowCorner;
29 
30 // Maximum columns for terminal highlight attributes
31 #define TERM_ATTRS_MAX 1024
32 
34 typedef struct {
35  enum {
36  kStlClickDisabled = 0,
40  } type;
41  int tabnr;
42  char *func;
44 
46 typedef struct {
48  const char *start;
50 
53 
55 extern long tab_page_click_defs_size;
56 
57 #define W_ENDCOL(wp) ((wp)->w_wincol + (wp)->w_width)
58 #define W_ENDROW(wp) ((wp)->w_winrow + (wp)->w_height)
59 
60 #ifdef INCLUDE_GENERATED_DECLARATIONS
61 # include "screen.h.generated.h"
62 #endif
63 #endif // NVIM_SCREEN_H
StlClickRecord::start
const char * start
Location where region starts.
Definition: screen.h:48
WC_TOP_LEFT
@ WC_TOP_LEFT
Definition: screen.h:24
StlClickDefinition::kStlClickFuncRun
@ kStlClickFuncRun
Run user function.
Definition: screen.h:39
types.h
type
err type
Definition: helpers.c:1114
grid.h
StlClickDefinition::kStlClickTabSwitch
@ kStlClickTabSwitch
Switch to the given tab.
Definition: screen.h:37
tab_page_click_defs
StlClickDefinition * tab_page_click_defs
Array defining what should be done when tabline is clicked.
Definition: screen.c:134
WC_TOP_RIGHT
@ WC_TOP_RIGHT
Definition: screen.h:25
WC_BOTTOM_LEFT
@ WC_BOTTOM_LEFT
Definition: screen.h:26
StlClickRecord::def
StlClickDefinition def
Click definition.
Definition: screen.h:47
WC_BOTTOM_RIGHT
@ WC_BOTTOM_RIGHT
Definition: screen.h:27
StlClickDefinition::kStlClickTabClose
@ kStlClickTabClose
Close given tab.
Definition: screen.h:38
StlClickRecord
Used for tabline clicks.
Definition: screen.h:46
StlClickDefinition::tabnr
int tabnr
Tab page number.
Definition: screen.h:41
buffer_defs.h
StlClickDefinition::func
char * func
Function to run.
Definition: screen.h:42
StlClickDefinition
Status line click definition.
Definition: screen.h:34
tab_page_click_defs_size
long tab_page_click_defs_size
Size of the tab_page_click_defs array.
Definition: screen.c:136
pos.h
WindowCorner
WindowCorner
corner value flags for hsep_connected and vsep_connected
Definition: screen.h:23