aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDavid Aspinall2001-08-17 17:17:41 +0000
committerDavid Aspinall2001-08-17 17:17:41 +0000
commit088e067b2bbe96a17ca0d91850c217906672b845 (patch)
tree530db6f58d9831bce1e925964be69150982045ad
parent1dfc1b88d78492acffa22a99d2a450d9476cd456 (diff)
Add span-delete-action hook
-rw-r--r--generic/span-extent.el4
-rw-r--r--generic/span-overlay.el2
2 files changed, 5 insertions, 1 deletions
diff --git a/generic/span-extent.el b/generic/span-extent.el
index d80848d7..ccbc1a93 100644
--- a/generic/span-extent.el
+++ b/generic/span-extent.el
@@ -60,6 +60,8 @@
(defsubst delete-span (span)
"Delete SPAN."
+ (let ((predelfn (span-property span 'span-delete-action)))
+ (and predelfn (funcall predelfn)))
(delete-extent span))
(defsubst mapcar-spans (fn start end prop &optional val)
@@ -68,7 +70,7 @@
(defsubst delete-spans (start end prop)
"Delete all spans between START and END with property PROP set."
- (mapcar-spans 'delete-extent start end prop))
+ (mapcar-spans 'delete-span start end prop))
(defsubst span-at (pt prop)
"Return the smallest SPAN at point PT with property PROP."
diff --git a/generic/span-overlay.el b/generic/span-overlay.el
index ea91bbb7..a36d95f7 100644
--- a/generic/span-overlay.el
+++ b/generic/span-overlay.el
@@ -209,6 +209,8 @@ For Emacs, we assume that spans don't overlap."
(defsubst delete-span (span)
"Delete SPAN."
+ (let ((predelfn (span-property span 'span-delete-action)))
+ (and predelfn (funcall predelfn)))
(remove-span span)
(delete-overlay span))