Mercurial > emacs
changeset 4382:c11d710e0403
(MERGE_INSERTIONS): Define as 1.
(FRONT_STICKY): Add real definition.
(END_NONSTICKY): New macro.
(END_STICKY): Deleted.
(textget_direct, Qfront_sticky, Qrear_nonsticky): Declared.
(Qhidden): Declared.
author | Richard M. Stallman <rms@gnu.org> |
---|---|
date | Sat, 31 Jul 1993 21:55:38 +0000 |
parents | b0556af4d680 |
children | d4a36c1669e6 |
files | src/intervals.h |
diffstat | 1 files changed, 13 insertions(+), 4 deletions(-) [+] |
line wrap: on
line diff
--- a/src/intervals.h Sat Jul 31 21:54:10 1993 +0000 +++ b/src/intervals.h Sat Jul 31 21:55:38 1993 +0000 @@ -129,7 +129,7 @@ /* Macro determining whether the properties of an interval being inserted should be merged with the properties of the text where they are being inserted. */ -#define MERGE_INSERTIONS(i) 0 +#define MERGE_INSERTIONS(i) 1 /* Macro determining if an invisible interval should be displayed as a special glyph, or not at all. */ @@ -150,8 +150,13 @@ /* Macros to tell whether insertions before or after this interval should stick to it. */ -#define FRONT_STICKY_P(i) ((i)->front_sticky != 0) -#define END_STICKY_P(i) ((i)->rear_sticky != 0) +/* Replace later with cache access */ +/*#define FRONT_STICKY_P(i) ((i)->front_sticky != 0) + #define END_STICKY_P(i) ((i)->rear_sticky != 0)*/ +#define FRONT_STICKY_P(i) \ + (! NULL_INTERVAL_P (i) && ! NILP (textget ((i)->plist, Qfront_sticky))) +#define END_NONSTICKY_P(i) \ + (! NULL_INTERVAL_P (i) && ! NILP (textget ((i)->plist, Qrear_nonsticky))) /* Declared in alloc.c */ @@ -180,6 +185,7 @@ extern INLINE void copy_intervals_to_string (); extern INTERVAL copy_intervals (); extern Lisp_Object textget (); +extern Lisp_Object textget_direct (); extern Lisp_Object get_local_map (); /* Declared in textprop.c */ @@ -195,10 +201,13 @@ /* Visual properties text (including strings) may have. */ extern Lisp_Object Qforeground, Qbackground, Qfont, Qunderline, Qstipple; -extern Lisp_Object Qinvisible, Qread_only; +extern Lisp_Object Qinvisible, Qhidden, Qread_only; extern Lisp_Object Vinhibit_point_motion_hooks; +/* Sticky properties */ +extern Lisp_Object Qfront_sticky, Qrear_nonsticky; + extern Lisp_Object Ftext_properties_at (); extern Lisp_Object Fnext_property_change (), Fprevious_property_change (); extern Lisp_Object Fadd_text_properties (), Fset_text_properties ();