patch 8.1.2062: the mouse code is spread out
Problem: The mouse code is spread out.
Solution: Move all the mouse code to mouse.c. (Yegappan Lakshmanan,
closes #4959)
diff --git a/src/proto/edit.pro b/src/proto/edit.pro
index db9cf3d..f1ab205 100644
--- a/src/proto/edit.pro
+++ b/src/proto/edit.pro
@@ -7,6 +7,7 @@
int prompt_curpos_editable(void);
void edit_unputchar(void);
void display_dollar(colnr_T col);
+void undisplay_dollar(void);
void change_indent(int type, int amount, int round, int replaced, int call_changed_bytes);
void truncate_spaces(char_u *line);
void backspace_until_column(int col);
@@ -36,6 +37,7 @@
int ins_eol(int c);
int ins_copychar(linenr_T lnum);
colnr_T get_nolist_virtcol(void);
-int can_cindent_get(void);
+int get_can_cindent(void);
+void set_can_cindent(int val);
int ins_apply_autocmds(event_T event);
/* vim: set ft=c : */
diff --git a/src/proto/misc1.pro b/src/proto/misc1.pro
index 8de1aff..8d60f66 100644
--- a/src/proto/misc1.pro
+++ b/src/proto/misc1.pro
@@ -23,7 +23,6 @@
char_u *skip_to_option_part(char_u *p);
void check_status(buf_T *buf);
int ask_yesno(char_u *str, int direct);
-int is_mouse_key(int c);
void f_mode(typval_T *argvars, typval_T *rettv);
void f_state(typval_T *argvars, typval_T *rettv);
int get_keystroke(void);
diff --git a/src/proto/misc2.pro b/src/proto/misc2.pro
index 546fa63..bcdcd31 100644
--- a/src/proto/misc2.pro
+++ b/src/proto/misc2.pro
@@ -74,8 +74,6 @@
int find_special_key_in_table(int c);
int get_special_key_code(char_u *name);
char_u *get_key_name(int i);
-int get_mouse_button(int code, int *is_click, int *is_drag);
-int get_pseudo_mouse_code(int button, int is_click, int is_drag);
int get_fileformat(buf_T *buf);
int get_fileformat_force(buf_T *buf, exarg_T *eap);
void set_fileformat(int t, int opt_flags);
diff --git a/src/proto/mouse.pro b/src/proto/mouse.pro
new file mode 100644
index 0000000..fe5cda1
--- /dev/null
+++ b/src/proto/mouse.pro
@@ -0,0 +1,19 @@
+/* mouse.c */
+int do_mouse(oparg_T *oap, int c, int dir, long count, int fixindent);
+void ins_mouse(int c);
+void ins_mousescroll(int dir);
+int is_mouse_key(int c);
+int get_mouse_button(int code, int *is_click, int *is_drag);
+int get_pseudo_mouse_code(int button, int is_click, int is_drag);
+void set_mouse_termcode(int n, char_u *s);
+void del_mouse_termcode(int n);
+void setmouse(void);
+int mouse_has(int c);
+int mouse_model_popup(void);
+int jump_to_mouse(int flags, int *inclusive, int which_button);
+void nv_mousescroll(cmdarg_T *cap);
+void nv_mouse(cmdarg_T *cap);
+int mouse_comp_pos(win_T *win, int *rowp, int *colp, linenr_T *lnump, int *plines_cache);
+win_T *mouse_find_win(int *rowp, int *colp, mouse_find_T popup);
+int vcol2col(win_T *wp, linenr_T lnum, int vcol);
+/* vim: set ft=c : */
diff --git a/src/proto/normal.pro b/src/proto/normal.pro
index dd62226..3a0a6e0 100644
--- a/src/proto/normal.pro
+++ b/src/proto/normal.pro
@@ -2,13 +2,15 @@
void init_normal_cmds(void);
void normal_cmd(oparg_T *oap, int toplevel);
void do_pending_operator(cmdarg_T *cap, int old_col, int gui_yank);
-int do_mouse(oparg_T *oap, int c, int dir, long count, int fixindent);
void check_visual_highlight(void);
void end_visual_mode(void);
void reset_VIsual_and_resel(void);
void reset_VIsual(void);
int find_ident_under_cursor(char_u **text, int find_type);
int find_ident_at_pos(win_T *wp, linenr_T lnum, colnr_T startcol, char_u **text, int *textcol, int find_type);
+void prep_redo(int regname, long, int, int, int, int, int);
+void clearop(oparg_T *oap);
+void clearopbeep(oparg_T *oap);
void clear_showcmd(void);
int add_to_showcmd(int c);
void add_to_showcmd_c(int c);
@@ -17,6 +19,7 @@
void do_check_scrollbind(int check);
void check_scrollbind(linenr_T topline_diff, long leftcol_diff);
int find_decl(char_u *ptr, int len, int locally, int thisblock, int flags_arg);
+void nv_scroll_line(cmdarg_T *cap);
void scroll_redraw(int up, long count);
void handle_tabmenu(void);
void do_nv_ident(int c1, int c2);
diff --git a/src/proto/term.pro b/src/proto/term.pro
index ec73d50..50e2f5e 100644
--- a/src/proto/term.pro
+++ b/src/proto/term.pro
@@ -2,8 +2,6 @@
guicolor_T termgui_get_color(char_u *name);
guicolor_T termgui_mch_get_rgb(guicolor_T color);
int set_termname(char_u *term);
-void set_mouse_termcode(int n, char_u *s);
-void del_mouse_termcode(int n);
void getlinecol(long *cp, long *rp);
int add_termcap_entry(char_u *name, int force);
int term_is_8bit(char_u *name);
@@ -47,9 +45,6 @@
void may_req_ambiguous_char_width(void);
void may_req_bg_color(void);
int swapping_screen(void);
-void setmouse(void);
-int mouse_has(int c);
-int mouse_model_popup(void);
void scroll_start(void);
void cursor_on_force(void);
void cursor_on(void);
@@ -64,6 +59,7 @@
void add_termcode(char_u *name, char_u *string, int flags);
char_u *find_termcode(char_u *name);
char_u *get_termcode(int i);
+void del_termcode(char_u *name);
void set_mouse_topline(win_T *wp);
int check_termcode(int max_offset, char_u *buf, int bufsize, int *buflen);
void term_get_fg_color(char_u *r, char_u *g, char_u *b);
diff --git a/src/proto/ui.pro b/src/proto/ui.pro
index 50d3d5e..7ba82cd 100644
--- a/src/proto/ui.pro
+++ b/src/proto/ui.pro
@@ -60,11 +60,6 @@
int clip_x11_own_selection(Widget myShell, Clipboard_T *cbd);
void clip_x11_set_selection(Clipboard_T *cbd);
void yank_cut_buffer0(Display *dpy, Clipboard_T *cbd);
-int jump_to_mouse(int flags, int *inclusive, int which_button);
-int mouse_comp_pos(win_T *win, int *rowp, int *colp, linenr_T *lnump, int *plines_cache);
-win_T *mouse_find_win(int *rowp, int *colp, mouse_find_T popup);
-int get_fpos_of_mouse(pos_T *mpos);
-int vcol2col(win_T *wp, linenr_T lnum, int vcol);
void ui_focus_change(int in_focus);
void im_save_status(long *psave);
/* vim: set ft=c : */