From: Bruno Haible Date: Fri, 3 Aug 2001 13:33:50 +0000 (+0000) Subject: Use XEmacs extents. X-Git-Tag: v0.11~566 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=a10f226d65599475c5f08e2462bc5ecd7ae82947;p=thirdparty%2Fgettext.git Use XEmacs extents. --- diff --git a/misc/ChangeLog b/misc/ChangeLog index 017f1b539..49c3021fa 100644 --- a/misc/ChangeLog +++ b/misc/ChangeLog @@ -1,3 +1,8 @@ +2000-05-31 Hrvoje Niksic + + * po-mode.el (po-create-overlay, po-highlight, po-rehighlight, + po-dehighlight): Use XEmacs extent primitives. + 2001-07-22 Bruno Haible * automake.diff: New file. diff --git a/misc/po-mode.el b/misc/po-mode.el index fe12dc8fd..fc1c27fad 100644 --- a/misc/po-mode.el +++ b/misc/po-mode.el @@ -295,33 +295,26 @@ The current buffer should be in PO mode, when this function is called." (defun po-create-overlay () "Create and return a deleted overlay structure." - (cons (make-marker) (make-marker))) - - (defun po-highlight (overlay start end &optional buffer) - "Use OVERLAY to highlight the string from START to END. + ;; The same as for GNU Emacs above, except the created extent is + ;; already detached, so there's no need to "delete" it + ;; explicitly. + (let ((extent (make-extent nil nil))) + (set-extent-face extent po-highlight-face) + extent)) + + (defun po-highlight (extent start end &optional buffer) + "Use EXTENT to highlight the string from START to END. If limits are not relative to the current buffer, use optional BUFFER." - (if buffer - (save-excursion - (set-buffer buffer) - (isearch-highlight start end)) - (isearch-highlight start end)) - (set-marker (car overlay) start (or buffer (current-buffer))) - (set-marker (cdr overlay) end (or buffer (current-buffer)))) + (set-extent-endpoints extent start end (or buffer (current-buffer)))) - (defun po-rehighlight (overlay) - "Ensure OVERLAY is highlighted." - (let ((buffer (marker-buffer (car overlay))) - (start (marker-position (car overlay))) - (end (marker-position (cdr overlay)))) - (and buffer - (buffer-name buffer) - (po-highlight overlay start end buffer)))) + (defun po-rehighlight (extent) + "Ensure EXTENT is highlighted." + ;; Nothing to do here. + nil) - (defun po-dehighlight (overlay) - "Display normally the last string which OVERLAY highlighted." - (isearch-dehighlight t) - (setcar overlay (make-marker)) - (setcdr overlay (make-marker)))) + (defun po-dehighlight (extent) + "Display normally the last string which EXTENT highlighted." + (detach-extent extent))) (t