aboutsummaryrefslogtreecommitdiffstats
path: root/src/intervals.h
diff options
context:
space:
mode:
authorStefan Monnier2001-10-12 22:04:42 +0000
committerStefan Monnier2001-10-12 22:04:42 +0000
commitdf1958c4fe88a1f22ba9b65d7ea46c15f581b255 (patch)
tree3007182ea9a33e594c4f97bd33c4f66d094a6080 /src/intervals.h
parent42005513e85063b8a15bf384480d2c381a38fd33 (diff)
downloademacs-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.h16
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
216extern INTERVAL make_interval P_ ((void)); 223extern INTERVAL make_interval P_ ((void));
@@ -220,7 +227,10 @@ extern INTERVAL make_interval P_ ((void));
220extern INTERVAL create_root_interval P_ ((Lisp_Object)); 227extern INTERVAL create_root_interval P_ ((Lisp_Object));
221extern void copy_properties P_ ((INTERVAL, INTERVAL)); 228extern void copy_properties P_ ((INTERVAL, INTERVAL));
222extern int intervals_equal P_ ((INTERVAL, INTERVAL)); 229extern int intervals_equal P_ ((INTERVAL, INTERVAL));
223extern void traverse_intervals P_ ((INTERVAL, int, int, 230extern void traverse_intervals P_ ((INTERVAL, int,
231 void (*) (INTERVAL, Lisp_Object),
232 Lisp_Object));
233extern void traverse_intervals_noorder P_ ((INTERVAL,
224 void (*) (INTERVAL, Lisp_Object), 234 void (*) (INTERVAL, Lisp_Object),
225 Lisp_Object)); 235 Lisp_Object));
226extern INTERVAL split_interval_right P_ ((INTERVAL, int)); 236extern 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 */
257extern int invisible_ellipsis_p P_ ((Lisp_Object, Lisp_Object)); 267extern int invisible_ellipsis_p P_ ((Lisp_Object, Lisp_Object));
268extern int invisible_p P_ ((Lisp_Object, Lisp_Object));
269extern int invisible_noellipsis_p P_ ((Lisp_Object, Lisp_Object));
258 270
259/* Declared in textprop.c */ 271/* Declared in textprop.c */
260 272