+2002-01-05 Pavel Jan\e,Bm\e(Bk <Pavel@Janik.cz>
+
+ * net/eudc-hotlist.el (eudc-edit-hotlist): Avoid error when
+ editing an empty hotlist.
+
+ * net/ldap.el (ldap-search-internal): Make the buffer unibyte.
+ Use buffer-string instead of buffer-substring for the whole
+ buffer.
+
+ * net/eudc-vars.el (eudc-external-viewers): Do not use xv, it is
+ not free.
+
+ * net/eudc-bob.el (eudc-bob-can-display-inline-images)
+ (eudc-bob-display-jpeg): Use fboundp instead of boundp.
+ (eudc-bob-save-object): Make the buffer unibyte.
+ (eudc-bob-generic-keymap): Add new keybinding `!' to pipe the
+ object to external program.
+
2002-01-05 Andre Spiegel <spiegel@gnu.org>
* vc.el (vc-branch-part): Return nil if there's no `.'
;;; eudc-bob.el --- Binary Objects Support for EUDC
-;; Copyright (C) 1999, 2000 Free Software Foundation, Inc.
+;; Copyright (C) 1999, 2000, 2002 Free Software Foundation, Inc.
;; Author: Oscar Figueiredo <oscar@xemacs.org>
;; Maintainer: Oscar Figueiredo <oscar@xemacs.org>
(if eudc-xemacs-p
(and (memq (console-type) '(x mswindows))
(fboundp 'make-glyph))
- (and (boundp 'display-graphic-p)
+ (and (fboundp 'display-graphic-p)
(display-graphic-p))))
(defun eudc-bob-make-button (label keymap &optional menu plist)
'start-open t
'end-open t
'object-data data))))
- ((boundp 'create-image)
+ ((fboundp 'create-image)
(let* ((image (create-image data nil t))
(props (list 'object-data data 'eudc-image image)))
(when (and inline (image-type-available-p 'jpeg))
(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."
(save-excursion
(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."
(if (fboundp 'set-buffer-file-coding-system)
(set-buffer-file-coding-system 'binary))
(set-buffer buffer)
+ (set-buffer-multibyte nil)
(insert data)
(save-buffer))
(kill-buffer buffer)))
(setq eudc-bob-generic-keymap
(let ((map (make-sparse-keymap)))
(define-key map "s" 'eudc-bob-save-object)
+ (define-key map "!" 'eudc-bob-pipe-object-to-external-program)
(define-key map (if eudc-xemacs-p
[button3]
[down-mouse-3]) 'eudc-bob-popup-menu)