Mercurial > emacs
changeset 42775:c9c59300d7a6
New maintainer. Change author's address.
(eudc-bob-mail-keymap): New keymap for e-mail addresses.
(eudc-display-mail): New function.
(eudc-bob-play-sound-at-point): Remove XEmacs case.
author | Pavel Janík <Pavel@Janik.cz> |
---|---|
date | Wed, 16 Jan 2002 08:02:10 +0000 |
parents | 3e935323396d |
children | ca4e5b0209a7 |
files | lisp/net/eudc-bob.el |
diffstat | 1 files changed, 22 insertions(+), 19 deletions(-) [+] |
line wrap: on
line diff
--- a/lisp/net/eudc-bob.el Wed Jan 16 06:48:30 2002 +0000 +++ b/lisp/net/eudc-bob.el Wed Jan 16 08:02:10 2002 +0000 @@ -2,8 +2,8 @@ ;; Copyright (C) 1999, 2000, 2002 Free Software Foundation, Inc. -;; Author: Oscar Figueiredo <oscar@xemacs.org> -;; Maintainer: Oscar Figueiredo <oscar@xemacs.org> +;; Author: Oscar Figueiredo <oscar@cpe.fr> +;; Maintainer: Pavel Janík <Pavel@Janik.cz> ;; Keywords: comm ;; This file is part of GNU Emacs. @@ -44,6 +44,9 @@ (defvar eudc-bob-url-keymap nil "Keymap for inline urls.") +(defvar eudc-bob-mail-keymap nil + "Keymap for inline e-mail addresses.") + (defconst eudc-bob-generic-menu '("EUDC Binary Object Menu" ["---" nil nil] @@ -206,22 +209,9 @@ (let (sound) (if (null (setq sound (eudc-bob-get-overlay-prop 'object-data))) (error "No sound data available here") - (cond (eudc-xemacs-p - (if (not (and (boundp 'sound-alist) - sound-alist)) - (error "Don't know how to play sound on this Emacs version") - (setq sound-alist - (cons (list 'eudc-sound - :sound sound) - sound-alist)) - (condition-case nil - (play-sound 'eudc-sound) - (t - (setq sound-alist (cdr sound-alist)))))) - (t - (unless (fboundp 'play-sound) - (error "Playing sounds not supported on this system")) - (play-sound (list 'sound :data sound))))))) + (unless (fboundp 'play-sound) + (error "Playing sounds not supported on this system")) + (play-sound (list 'sound :data sound))))) (defun eudc-bob-play-sound-at-mouse (event) "Play the sound data contained in the button where EVENT occurred." @@ -230,7 +220,6 @@ (eudc-jump-to-event event) (eudc-bob-play-sound-at-point))) - (defun eudc-bob-save-object () "Save the object data of the button at point." (interactive) @@ -318,6 +307,14 @@ [down-mouse-2]) 'browse-url-at-mouse) map)) +(setq eudc-bob-mail-keymap + (let ((map (make-sparse-keymap))) + (define-key map [return] 'goto-address-at-point) + (define-key map (if eudc-xemacs-p + [button2] + [down-mouse-2]) 'goto-address-at-mouse) + map)) + (set-keymap-parent eudc-bob-image-keymap eudc-bob-generic-keymap) (set-keymap-parent eudc-bob-sound-keymap eudc-bob-generic-keymap) @@ -348,6 +345,12 @@ (eudc-bob-make-button url eudc-bob-url-keymap)) ;;;###autoload +(defun eudc-display-mail (mail) + "Display e-mail address and make it clickable." + (require 'goto-addr) + (eudc-bob-make-button mail eudc-bob-mail-keymap)) + +;;;###autoload (defun eudc-display-sound (data) "Display a button to play the sound DATA." (eudc-bob-display-audio data))