Mercurial > emacs
changeset 39855:cfc5c411cd06
(TEXT_PROP_MEANS_INVISIBLE_NOELLIPSIS): New macro.
(traverse_intervals_noorder, invisible_noellipsis_p): New funs.
author | Stefan Monnier <monnier@iro.umontreal.ca> |
---|---|
date | Fri, 12 Oct 2001 22:04:42 +0000 |
parents | a1e434124570 |
children | 3fb9aba0cbd4 |
files | src/intervals.h |
diffstat | 1 files changed, 14 insertions(+), 2 deletions(-) [+] |
line wrap: on
line diff
--- a/src/intervals.h Fri Oct 12 22:01:46 2001 +0000 +++ b/src/intervals.h Fri Oct 12 22:04:42 2001 +0000 @@ -199,7 +199,7 @@ #define TEXT_PROP_MEANS_INVISIBLE(prop) \ (EQ (current_buffer->invisibility_spec, Qt) \ - ? ! NILP (prop) \ + ? !NILP (prop) \ : invisible_p (prop, current_buffer->invisibility_spec)) /* If PROP is the `invisible' property of a character, @@ -211,6 +211,13 @@ ? 0 \ : invisible_ellipsis_p (prop, current_buffer->invisibility_spec)) +/* As above but for "completely" invisible (no ellipsis). */ + +#define TEXT_PROP_MEANS_INVISIBLE_NOELLIPSIS(prop) \ + (EQ (current_buffer->invisibility_spec, Qt) \ + ? !NILP (prop) \ + : invisible_noellipsis_p (prop, current_buffer->invisibility_spec)) + /* Declared in alloc.c */ extern INTERVAL make_interval P_ ((void)); @@ -220,7 +227,10 @@ extern INTERVAL create_root_interval P_ ((Lisp_Object)); extern void copy_properties P_ ((INTERVAL, INTERVAL)); extern int intervals_equal P_ ((INTERVAL, INTERVAL)); -extern void traverse_intervals P_ ((INTERVAL, int, int, +extern void traverse_intervals P_ ((INTERVAL, int, + void (*) (INTERVAL, Lisp_Object), + Lisp_Object)); +extern void traverse_intervals_noorder P_ ((INTERVAL, void (*) (INTERVAL, Lisp_Object), Lisp_Object)); extern INTERVAL split_interval_right P_ ((INTERVAL, int)); @@ -255,6 +265,8 @@ /* Defined in xdisp.c */ extern int invisible_ellipsis_p P_ ((Lisp_Object, Lisp_Object)); +extern int invisible_p P_ ((Lisp_Object, Lisp_Object)); +extern int invisible_noellipsis_p P_ ((Lisp_Object, Lisp_Object)); /* Declared in textprop.c */