blob: 8fa86616855ecf468250f87be9028760585865ca [file] [log] [blame]
Bram Moolenaar071d4272004-06-13 20:20:40 +00001/* window.c */
Bram Moolenaar0f6e28f2022-02-20 20:49:35 +00002win_T *prevwin_curwin(void);
Bram Moolenaaref269542016-01-19 13:22:12 +01003void do_window(int nchar, long Prenum, int xchar);
4void get_wincmd_addr_type(char_u *arg, exarg_T *eap);
5int win_split(int size, int flags);
6int win_split_ins(int size, int flags, win_T *new_wp, int dir);
Bram Moolenaarb53fb312019-06-13 23:59:52 +02007int win_valid_popup(win_T *win);
Bram Moolenaaref269542016-01-19 13:22:12 +01008int win_valid(win_T *win);
Bram Moolenaarcbcd9cb2020-11-07 16:58:59 +01009win_T *win_find_by_id(int id);
Bram Moolenaare59215c2016-08-14 19:08:45 +020010int win_valid_any_tab(win_T *win);
Bram Moolenaaref269542016-01-19 13:22:12 +010011int win_count(void);
12int make_windows(int count, int vertical);
13void win_move_after(win_T *win1, win_T *win2);
14void win_equal(win_T *next_curwin, int current, int dir);
Bram Moolenaarbdf931c2020-10-01 22:37:40 +020015void entering_window(win_T *win);
LemonBoy09371822022-04-08 15:18:45 +010016void curwin_init(void);
Bram Moolenaaref269542016-01-19 13:22:12 +010017void close_windows(buf_T *buf, int keep_curwin);
18int one_window(void);
19int win_close(win_T *win, int free_buf);
zeertzjqd58862d2022-04-12 11:32:48 +010020void may_trigger_winscrolled(void);
Bram Moolenaaref269542016-01-19 13:22:12 +010021void win_close_othertab(win_T *win, int free_buf, tabpage_T *tp);
22void win_free_all(void);
23win_T *winframe_remove(win_T *win, int *dirp, tabpage_T *tp);
24void close_others(int message, int forceit);
Bram Moolenaaref269542016-01-19 13:22:12 +010025int win_alloc_first(void);
Bram Moolenaar4d784b22019-05-25 19:51:39 +020026win_T *win_alloc_popup_win(void);
27void win_init_popup_win(win_T *wp, buf_T *buf);
Bram Moolenaaref269542016-01-19 13:22:12 +010028void win_init_size(void);
29void free_tabpage(tabpage_T *tp);
30int win_new_tabpage(int after);
Bram Moolenaaref269542016-01-19 13:22:12 +010031int make_tabpages(int maxcount);
32int valid_tabpage(tabpage_T *tpc);
Bram Moolenaar8c752bd2017-03-19 17:09:56 +010033int valid_tabpage_win(tabpage_T *tpc);
Bram Moolenaarb1c91982018-05-17 17:04:55 +020034void close_tabpage(tabpage_T *tab);
Bram Moolenaaref269542016-01-19 13:22:12 +010035tabpage_T *find_tabpage(int n);
36int tabpage_index(tabpage_T *ftp);
37void goto_tabpage(int n);
38void goto_tabpage_tp(tabpage_T *tp, int trigger_enter_autocmds, int trigger_leave_autocmds);
Bram Moolenaar62a23252020-08-09 14:04:42 +020039int goto_tabpage_lastused(void);
Bram Moolenaaref269542016-01-19 13:22:12 +010040void goto_tabpage_win(tabpage_T *tp, win_T *wp);
41void tabpage_move(int nr);
42void win_goto(win_T *wp);
43win_T *win_find_nr(int winnr);
44tabpage_T *win_find_tabpage(win_T *win);
Bram Moolenaar46ad2882019-04-08 20:01:47 +020045win_T *win_vert_neighbor(tabpage_T *tp, win_T *wp, int up, long count);
Bram Moolenaarb9cdb372019-04-17 18:24:35 +020046win_T *win_horz_neighbor(tabpage_T *tp, win_T *wp, int left, long count);
Bram Moolenaaref269542016-01-19 13:22:12 +010047void win_enter(win_T *wp, int undo_sync);
48win_T *buf_jump_open_win(buf_T *buf);
49win_T *buf_jump_open_tab(buf_T *buf);
Bram Moolenaar6f2465d2022-03-22 18:13:01 +000050int win_unlisted(win_T *wp);
Bram Moolenaar4d784b22019-05-25 19:51:39 +020051void win_free_popup(win_T *win);
Bram Moolenaaref269542016-01-19 13:22:12 +010052void win_remove(win_T *wp, tabpage_T *tp);
53int win_alloc_lines(win_T *wp);
54void win_free_lsize(win_T *wp);
55void shell_new_rows(void);
56void shell_new_columns(void);
57void win_size_save(garray_T *gap);
58void win_size_restore(garray_T *gap);
59int win_comp_pos(void);
Bram Moolenaard0fb9072021-12-09 11:57:22 +000060void win_ensure_size(void);
Bram Moolenaaref269542016-01-19 13:22:12 +010061void win_setheight(int height);
62void win_setheight_win(int height, win_T *win);
63void win_setwidth(int width);
64void win_setwidth_win(int width, win_T *wp);
65void win_setminheight(void);
Bram Moolenaar1c3c1042018-06-12 16:49:30 +020066void win_setminwidth(void);
Bram Moolenaaref269542016-01-19 13:22:12 +010067void win_drag_status_line(win_T *dragwin, int offset);
68void win_drag_vsep_line(win_T *dragwin, int offset);
69void set_fraction(win_T *wp);
70void win_new_height(win_T *wp, int height);
Bram Moolenaar46328f92016-08-28 15:39:57 +020071void scroll_to_fraction(win_T *wp, int prev_height);
Bram Moolenaaref269542016-01-19 13:22:12 +010072void win_new_width(win_T *wp, int width);
73void win_comp_scroll(win_T *wp);
74void command_height(void);
75void last_status(int morewin);
76int tabline_height(void);
Bram Moolenaaref269542016-01-19 13:22:12 +010077int min_rows(void);
78int only_one_window(void);
79void check_lnums(int do_curwin);
Bram Moolenaar5fa9f232022-07-23 09:06:48 +010080void check_lnums_nested(int do_curwin);
Bram Moolenaara68e5952019-04-25 22:22:01 +020081void reset_lnums(void);
Bram Moolenaaref269542016-01-19 13:22:12 +010082void make_snapshot(int idx);
83void restore_snapshot(int idx, int close_curwin);
Bram Moolenaaref269542016-01-19 13:22:12 +010084int win_hasvertsplit(void);
Bram Moolenaaref269542016-01-19 13:22:12 +010085int get_win_number(win_T *wp, win_T *first_win);
86int get_tab_number(tabpage_T *tp);
Bram Moolenaare677df82019-09-02 22:31:11 +020087char *check_colorcolumn(win_T *wp);
Bram Moolenaar071d4272004-06-13 20:20:40 +000088/* vim: set ft=c : */