summaryrefslogtreecommitdiff
path: root/lisp/select.el
diff options
context:
space:
mode:
authorRichard M. Stallman <rms@gnu.org>1994-03-20 21:12:45 +0000
committerRichard M. Stallman <rms@gnu.org>1994-03-20 21:12:45 +0000
commit6eac0de6962c308903ad214fbc5ad17fbef17c85 (patch)
treea361f0f655b7a77071fa9bfdfa410125d9a14de4 /lisp/select.el
parente0de7bcbbb39456ff4cb315a7d02857751943a0c (diff)
downloademacs-6eac0de6962c308903ad214fbc5ad17fbef17c85.tar.gz
(x-valid-simple-selection-p): Accept an overlay.
(xselect-convert-to-string, xselect-convert-to-length): (xselect-convert-to-filename xselect-convert-to-charpos): (xselect-convert-to-lineno, xselect-convert-to-colno): Likewise.
Diffstat (limited to 'lisp/select.el')
-rw-r--r--lisp/select.el49
1 files changed, 24 insertions, 25 deletions
diff --git a/lisp/select.el b/lisp/select.el
index 85c8d4a2ade..060c63ec231 100644
--- a/lisp/select.el
+++ b/lisp/select.el
@@ -77,8 +77,7 @@ The data may also be a vector of valid non-vector selection values."
(or (integerp (cdr data))
(and (consp (cdr data))
(integerp (car (cdr data))))))
-;;; (and (fboundp 'extentp)
-;;; (extentp data))
+ (overlayp data)
(and (consp data)
(markerp (car data))
(markerp (cdr data))
@@ -122,11 +121,13 @@ Cut buffers are considered obsolete; you should use selections instead."
(defun xselect-convert-to-string (selection type value)
(cond ((stringp value)
value)
-;;; ((extentp value)
-;;; (save-excursion
-;;; (set-buffer (extent-buffer value))
-;;; (buffer-substring (extent-start-position value)
-;;; (extent-end-position value))))
+ ((overlayp value)
+ (save-excursion
+ (or (buffer-name (overlay-buffer value))
+ (error "selection is in a killed buffer"))
+ (set-buffer (overlay-buffer value))
+ (buffer-substring (overlay-start value)
+ (overlay-end value))))
((and (consp value)
(markerp (car value))
(markerp (cdr value)))
@@ -144,8 +145,8 @@ Cut buffers are considered obsolete; you should use selections instead."
(let ((value
(cond ((stringp value)
(length value))
-;;; ((extentp value)
-;;; (extent-length value))
+ ((overlayp value)
+ (abs (- (overlay-end value) (overlay-start value))))
((and (consp value)
(markerp (car value))
(markerp (cdr value)))
@@ -180,10 +181,9 @@ Cut buffers are considered obsolete; you should use selections instead."
'NULL)
(defun xselect-convert-to-filename (selection type value)
- (cond
-;;; ((extentp value)
-;;; (buffer-file-name (or (extent-buffer value)
-;;; (error "selection is in a killed buffer"))))
+ (cond ((overlayp value)
+ (buffer-file-name (or (overlay-buffer value)
+ (error "selection is in a killed buffer"))))
((and (consp value)
(markerp (car value))
(markerp (cdr value)))
@@ -193,10 +193,9 @@ Cut buffers are considered obsolete; you should use selections instead."
(defun xselect-convert-to-charpos (selection type value)
(let (a b tmp)
- (cond ((cond
-;;; ((extentp value)
-;;; (setq a (extent-start-position value)
-;;; b (extent-end-position value)))
+ (cond ((cond ((overlayp value)
+ (setq a (overlay-start value)
+ b (overlay-end value)))
((and (consp value)
(markerp (car value))
(markerp (cdr value)))
@@ -216,10 +215,10 @@ Cut buffers are considered obsolete; you should use selections instead."
(setq a (marker-position (car value))
b (marker-position (cdr value))
buf (marker-buffer (car value))))
-;;; ((extentp value)
-;;; (setq buf (extent-buffer value)
-;;; a (extent-start-position value)
-;;; b (extent-end-position value)))
+ ((overlayp value)
+ (setq buf (overlay-buffer value)
+ a (overlay-start value)
+ b (overlay-end value)))
)
(save-excursion
(set-buffer buf)
@@ -238,10 +237,10 @@ Cut buffers are considered obsolete; you should use selections instead."
(setq a (car value)
b (cdr value)
buf (marker-buffer a)))
-;;; ((extentp value)
-;;; (setq buf (extent-buffer value)
-;;; a (extent-start-position value)
-;;; b (extent-end-position value)))
+ ((overlayp value)
+ (setq buf (overlay-buffer value)
+ a (overlay-start value)
+ b (overlay-end value)))
)
(save-excursion
(set-buffer buf)