GNU Emacs is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
-the Free Software Foundation; either version 2, or (at your option)
+the Free Software Foundation; either version 3, or (at your option)
any later version.
GNU Emacs is distributed in the hope that it will be useful,
struct position
{
- int bufpos;
- int bytepos;
- int hpos;
- int vpos;
- int prevhpos;
- int contin;
+ EMACS_INT bufpos;
+ EMACS_INT bytepos;
+ EMACS_INT hpos;
+ EMACS_INT vpos;
+ EMACS_INT prevhpos;
+ EMACS_INT contin;
/* Number of characters we have already handled
from the before and after strings at this position. */
- int ovstring_chars_done;
- int tab_offset;
+ EMACS_INT ovstring_chars_done;
+ EMACS_INT tab_offset;
};
-struct position *compute_motion P_ ((int, int, int, int, int, int, int,
- int, int, int, struct window *));
-struct position *vmotion P_ ((int, int, struct window *));
-int skip_invisible P_ ((int, int *, int, Lisp_Object));
+struct position *compute_motion P_ ((EMACS_INT from, EMACS_INT fromvpos,
+ EMACS_INT fromhpos, int did_motion,
+ EMACS_INT to, EMACS_INT tovpos,
+ EMACS_INT tohpos,
+ EMACS_INT width, EMACS_INT hscroll,
+ EMACS_INT tab_offset, struct window *));
+struct position *vmotion P_ ((EMACS_INT from, EMACS_INT vtarget,
+ struct window *));
+EMACS_INT skip_invisible P_ ((EMACS_INT pos, EMACS_INT *next_boundary_p,
+ EMACS_INT to, Lisp_Object window));
/* Value of point when current_column was called */
-extern int last_known_column_point;
+extern EMACS_INT last_known_column_point;
/* Functions for dealing with the column cache. */
-/* Return true iff the display table DISPTAB specifies the same widths
+/* Return true if the display table DISPTAB specifies the same widths
for characters as WIDTHTAB. We use this to decide when to
invalidate the buffer's column_cache. */
int disptab_matches_widthtab P_ ((struct Lisp_Char_Table *disptab,