diff options
| author | Stefan Monnier | 2001-10-12 22:04:42 +0000 |
|---|---|---|
| committer | Stefan Monnier | 2001-10-12 22:04:42 +0000 |
| commit | df1958c4fe88a1f22ba9b65d7ea46c15f581b255 (patch) | |
| tree | 3007182ea9a33e594c4f97bd33c4f66d094a6080 /src/intervals.h | |
| parent | 42005513e85063b8a15bf384480d2c381a38fd33 (diff) | |
| download | emacs-df1958c4fe88a1f22ba9b65d7ea46c15f581b255.tar.gz emacs-df1958c4fe88a1f22ba9b65d7ea46c15f581b255.zip | |
(TEXT_PROP_MEANS_INVISIBLE_NOELLIPSIS): New macro.
(traverse_intervals_noorder, invisible_noellipsis_p): New funs.
Diffstat (limited to 'src/intervals.h')
| -rw-r--r-- | src/intervals.h | 16 |
1 files changed, 14 insertions, 2 deletions
diff --git a/src/intervals.h b/src/intervals.h index 3b01440cf40..c5dd03b4250 100644 --- a/src/intervals.h +++ b/src/intervals.h | |||
| @@ -199,7 +199,7 @@ Boston, MA 02111-1307, USA. */ | |||
| 199 | 199 | ||
| 200 | #define TEXT_PROP_MEANS_INVISIBLE(prop) \ | 200 | #define TEXT_PROP_MEANS_INVISIBLE(prop) \ |
| 201 | (EQ (current_buffer->invisibility_spec, Qt) \ | 201 | (EQ (current_buffer->invisibility_spec, Qt) \ |
| 202 | ? ! NILP (prop) \ | 202 | ? !NILP (prop) \ |
| 203 | : invisible_p (prop, current_buffer->invisibility_spec)) | 203 | : invisible_p (prop, current_buffer->invisibility_spec)) |
| 204 | 204 | ||
| 205 | /* If PROP is the `invisible' property of a character, | 205 | /* If PROP is the `invisible' property of a character, |
| @@ -211,6 +211,13 @@ Boston, MA 02111-1307, USA. */ | |||
| 211 | ? 0 \ | 211 | ? 0 \ |
| 212 | : invisible_ellipsis_p (prop, current_buffer->invisibility_spec)) | 212 | : invisible_ellipsis_p (prop, current_buffer->invisibility_spec)) |
| 213 | 213 | ||
| 214 | /* As above but for "completely" invisible (no ellipsis). */ | ||
| 215 | |||
| 216 | #define TEXT_PROP_MEANS_INVISIBLE_NOELLIPSIS(prop) \ | ||
| 217 | (EQ (current_buffer->invisibility_spec, Qt) \ | ||
| 218 | ? !NILP (prop) \ | ||
| 219 | : invisible_noellipsis_p (prop, current_buffer->invisibility_spec)) | ||
| 220 | |||
| 214 | /* Declared in alloc.c */ | 221 | /* Declared in alloc.c */ |
| 215 | 222 | ||
| 216 | extern INTERVAL make_interval P_ ((void)); | 223 | extern INTERVAL make_interval P_ ((void)); |
| @@ -220,7 +227,10 @@ extern INTERVAL make_interval P_ ((void)); | |||
| 220 | extern INTERVAL create_root_interval P_ ((Lisp_Object)); | 227 | extern INTERVAL create_root_interval P_ ((Lisp_Object)); |
| 221 | extern void copy_properties P_ ((INTERVAL, INTERVAL)); | 228 | extern void copy_properties P_ ((INTERVAL, INTERVAL)); |
| 222 | extern int intervals_equal P_ ((INTERVAL, INTERVAL)); | 229 | extern int intervals_equal P_ ((INTERVAL, INTERVAL)); |
| 223 | extern void traverse_intervals P_ ((INTERVAL, int, int, | 230 | extern void traverse_intervals P_ ((INTERVAL, int, |
| 231 | void (*) (INTERVAL, Lisp_Object), | ||
| 232 | Lisp_Object)); | ||
| 233 | extern void traverse_intervals_noorder P_ ((INTERVAL, | ||
| 224 | void (*) (INTERVAL, Lisp_Object), | 234 | void (*) (INTERVAL, Lisp_Object), |
| 225 | Lisp_Object)); | 235 | Lisp_Object)); |
| 226 | extern INTERVAL split_interval_right P_ ((INTERVAL, int)); | 236 | extern INTERVAL split_interval_right P_ ((INTERVAL, int)); |
| @@ -255,6 +265,8 @@ extern INTERVAL validate_interval_range P_ ((Lisp_Object, Lisp_Object *, | |||
| 255 | 265 | ||
| 256 | /* Defined in xdisp.c */ | 266 | /* Defined in xdisp.c */ |
| 257 | extern int invisible_ellipsis_p P_ ((Lisp_Object, Lisp_Object)); | 267 | extern int invisible_ellipsis_p P_ ((Lisp_Object, Lisp_Object)); |
| 268 | extern int invisible_p P_ ((Lisp_Object, Lisp_Object)); | ||
| 269 | extern int invisible_noellipsis_p P_ ((Lisp_Object, Lisp_Object)); | ||
| 258 | 270 | ||
| 259 | /* Declared in textprop.c */ | 271 | /* Declared in textprop.c */ |
| 260 | 272 | ||