blob: e685b1c7b25e731c4b1510bff12365a42a466ee7 [file] [log] [blame]
Bram Moolenaar071d4272004-06-13 20:20:40 +00001/* window.c */
Bram Moolenaaref269542016-01-19 13:22:12 +01002void do_window(int nchar, long Prenum, int xchar);
3void get_wincmd_addr_type(char_u *arg, exarg_T *eap);
4int win_split(int size, int flags);
5int win_split_ins(int size, int flags, win_T *new_wp, int dir);
Bram Moolenaarb53fb312019-06-13 23:59:52 +02006int win_valid_popup(win_T *win);
Bram Moolenaaref269542016-01-19 13:22:12 +01007int win_valid(win_T *win);
Bram Moolenaare59215c2016-08-14 19:08:45 +02008int win_valid_any_tab(win_T *win);
Bram Moolenaaref269542016-01-19 13:22:12 +01009int win_count(void);
10int make_windows(int count, int vertical);
11void win_move_after(win_T *win1, win_T *win2);
12void win_equal(win_T *next_curwin, int current, int dir);
13void close_windows(buf_T *buf, int keep_curwin);
14int one_window(void);
15int win_close(win_T *win, int free_buf);
16void win_close_othertab(win_T *win, int free_buf, tabpage_T *tp);
17void win_free_all(void);
18win_T *winframe_remove(win_T *win, int *dirp, tabpage_T *tp);
19void close_others(int message, int forceit);
20void curwin_init(void);
Bram Moolenaaref269542016-01-19 13:22:12 +010021int win_alloc_first(void);
Bram Moolenaar4d784b22019-05-25 19:51:39 +020022win_T *win_alloc_popup_win(void);
23void win_init_popup_win(win_T *wp, buf_T *buf);
Bram Moolenaaref269542016-01-19 13:22:12 +010024void win_init_size(void);
25void free_tabpage(tabpage_T *tp);
26int win_new_tabpage(int after);
Bram Moolenaaref269542016-01-19 13:22:12 +010027int make_tabpages(int maxcount);
28int valid_tabpage(tabpage_T *tpc);
Bram Moolenaar8c752bd2017-03-19 17:09:56 +010029int valid_tabpage_win(tabpage_T *tpc);
Bram Moolenaarb1c91982018-05-17 17:04:55 +020030void close_tabpage(tabpage_T *tab);
Bram Moolenaaref269542016-01-19 13:22:12 +010031tabpage_T *find_tabpage(int n);
32int tabpage_index(tabpage_T *ftp);
33void goto_tabpage(int n);
34void goto_tabpage_tp(tabpage_T *tp, int trigger_enter_autocmds, int trigger_leave_autocmds);
35void goto_tabpage_win(tabpage_T *tp, win_T *wp);
36void tabpage_move(int nr);
37void win_goto(win_T *wp);
38win_T *win_find_nr(int winnr);
39tabpage_T *win_find_tabpage(win_T *win);
Bram Moolenaar46ad2882019-04-08 20:01:47 +020040win_T *win_vert_neighbor(tabpage_T *tp, win_T *wp, int up, long count);
Bram Moolenaarb9cdb372019-04-17 18:24:35 +020041win_T *win_horz_neighbor(tabpage_T *tp, win_T *wp, int left, long count);
Bram Moolenaaref269542016-01-19 13:22:12 +010042void win_enter(win_T *wp, int undo_sync);
43win_T *buf_jump_open_win(buf_T *buf);
44win_T *buf_jump_open_tab(buf_T *buf);
Bram Moolenaar4d784b22019-05-25 19:51:39 +020045void win_free_popup(win_T *win);
Bram Moolenaaref269542016-01-19 13:22:12 +010046void win_remove(win_T *wp, tabpage_T *tp);
47int win_alloc_lines(win_T *wp);
48void win_free_lsize(win_T *wp);
49void shell_new_rows(void);
50void shell_new_columns(void);
51void win_size_save(garray_T *gap);
52void win_size_restore(garray_T *gap);
53int win_comp_pos(void);
54void win_setheight(int height);
55void win_setheight_win(int height, win_T *win);
56void win_setwidth(int width);
57void win_setwidth_win(int width, win_T *wp);
58void win_setminheight(void);
Bram Moolenaar1c3c1042018-06-12 16:49:30 +020059void win_setminwidth(void);
Bram Moolenaaref269542016-01-19 13:22:12 +010060void win_drag_status_line(win_T *dragwin, int offset);
61void win_drag_vsep_line(win_T *dragwin, int offset);
62void set_fraction(win_T *wp);
63void win_new_height(win_T *wp, int height);
Bram Moolenaar46328f92016-08-28 15:39:57 +020064void scroll_to_fraction(win_T *wp, int prev_height);
Bram Moolenaaref269542016-01-19 13:22:12 +010065void win_new_width(win_T *wp, int width);
66void win_comp_scroll(win_T *wp);
67void command_height(void);
68void last_status(int morewin);
69int tabline_height(void);
Bram Moolenaaref269542016-01-19 13:22:12 +010070int min_rows(void);
71int only_one_window(void);
72void check_lnums(int do_curwin);
Bram Moolenaara68e5952019-04-25 22:22:01 +020073void reset_lnums(void);
Bram Moolenaaref269542016-01-19 13:22:12 +010074void make_snapshot(int idx);
75void restore_snapshot(int idx, int close_curwin);
76int switch_win(win_T **save_curwin, tabpage_T **save_curtab, win_T *win, tabpage_T *tp, int no_display);
Bram Moolenaar89adc3a2019-05-30 17:29:40 +020077int switch_win_noblock(win_T **save_curwin, tabpage_T **save_curtab, win_T *win, tabpage_T *tp, int no_display);
Bram Moolenaaref269542016-01-19 13:22:12 +010078void restore_win(win_T *save_curwin, tabpage_T *save_curtab, int no_display);
Bram Moolenaar89adc3a2019-05-30 17:29:40 +020079void restore_win_noblock(win_T *save_curwin, tabpage_T *save_curtab, int no_display);
Bram Moolenaar7c0a2f32016-07-10 22:11:16 +020080void switch_buffer(bufref_T *save_curbuf, buf_T *buf);
81void restore_buffer(bufref_T *save_curbuf);
Bram Moolenaaref269542016-01-19 13:22:12 +010082int win_hasvertsplit(void);
Bram Moolenaaref269542016-01-19 13:22:12 +010083int get_win_number(win_T *wp, win_T *first_win);
84int get_tab_number(tabpage_T *tp);
Bram Moolenaar86edef62016-03-13 18:07:30 +010085int win_getid(typval_T *argvars);
86int win_gotoid(typval_T *argvars);
87void win_id2tabwin(typval_T *argvars, list_T *list);
Bram Moolenaareeb1b9c2019-02-10 22:59:04 +010088win_T *win_id2wp(int id);
Bram Moolenaar820680b2019-08-09 14:56:22 +020089win_T *win_id2wp_tp(int id, tabpage_T **tpp);
Bram Moolenaar86edef62016-03-13 18:07:30 +010090int win_id2win(typval_T *argvars);
Bram Moolenaar9cdf86b2016-03-13 19:04:51 +010091void win_findbuf(typval_T *argvars, list_T *list);
Bram Moolenaar8d71b542019-08-30 15:46:30 +020092win_T *find_win_by_nr(typval_T *vp, tabpage_T *tp);
93win_T *find_win_by_nr_or_id(typval_T *vp);
94win_T *find_tabwin(typval_T *wvp, typval_T *tvp, tabpage_T **ptp);
Bram Moolenaar32d19c12018-09-13 17:26:54 +020095void get_framelayout(frame_T *fr, list_T *l, int outer);
Bram Moolenaar071d4272004-06-13 20:20:40 +000096/* vim: set ft=c : */