diff src/extents.h @ 189:489f57a838ef r20-3b21

Import from CVS: tag r20-3b21
author cvs
date Mon, 13 Aug 2007 09:57:07 +0200
parents 3d6bfa290dbd
children e45d5e7c476e
line wrap: on
line diff
--- a/src/extents.h	Mon Aug 13 09:56:30 2007 +0200
+++ b/src/extents.h	Mon Aug 13 09:57:07 2007 +0200
@@ -79,7 +79,7 @@
 				      /* Not used any more */
       unsigned int detachable	: 1;  /* 13  extent detaches if text deleted */
       unsigned int internal	: 1;  /* 14  used by map-extents etc.        */
-      unsigned int unused15	: 1;  /* 15  unused			     */
+      unsigned int unused15  	: 1;  /* 15  unused                          */
       unsigned int unused16	: 1;  /* 16  unused			     */
       /* --- Adding more flags will cause the extent struct grow by another
 	 word.  It's not clear that this would make a difference, however,
@@ -132,6 +132,7 @@
   Lisp_Object invisible;
   Lisp_Object read_only;
   Lisp_Object mouse_face;
+  Lisp_Object one_shot_function;
 #ifdef ENERGIZE
   Energize_Extent_Data *energize_data;
 #endif
@@ -254,6 +255,7 @@
 #define extent_invisible(e)	extent_aux_field (e, invisible)
 #define extent_read_only(e)	extent_aux_field (e, read_only)
 #define extent_mouse_face(e)	extent_aux_field (e, mouse_face)
+#define extent_one_shot_function(e)	extent_aux_field (e, one_shot_function)
 #ifdef ENERGIZE
 #define extent_energize_data(e)	extent_aux_field (e, energize_data)
 #endif
@@ -270,6 +272,9 @@
   set_extent_aux_field (e, read_only, value)
 #define set_extent_mouse_face(e, value)					\
   set_extent_aux_field (e, mouse_face, value)
+/* Use Fset_extent_one_shot_function unless you know what you are ding */
+#define set_extent_one_shot_function(e, value)			         \
+  set_extent_aux_field (e, one_shot_function, value)
 #ifdef ENERGIZE
 #define set_extent_energize_data(e, value)				\
   set_extent_aux_field (e, energize_data, value)