Remove some XEmacs compat code from ezimage.el
* lisp/ezimage.el (defezimage): Remove XEmacs compat code.
This commit is contained in:
parent
094e48e4e7
commit
b0ef37758e
1 changed files with 5 additions and 73 deletions
|
|
@ -48,80 +48,12 @@
|
|||
:type 'boolean)
|
||||
|
||||
;;; Create our own version of defimage
|
||||
(eval-and-compile
|
||||
|
||||
(if (featurep 'emacs)
|
||||
(progn
|
||||
(defmacro defezimage (variable imagespec docstring)
|
||||
"Define VARIABLE as an image if `defimage' is not available.
|
||||
(defmacro defezimage (variable imagespec docstring)
|
||||
"Define VARIABLE as an image if `defimage' is not available.
|
||||
IMAGESPEC is the image data, and DOCSTRING is documentation for the image."
|
||||
`(progn
|
||||
(defimage ,variable ,imagespec ,docstring)
|
||||
(put (quote ,variable) 'ezimage t)))
|
||||
|
||||
;; This hack is for the ezimage install which has an icons directory for
|
||||
;; the default icons to be used.
|
||||
;; (add-to-list 'load-path
|
||||
;; (concat (file-name-directory
|
||||
;; (locate-library "ezimage.el"))
|
||||
;; "icons"))
|
||||
|
||||
)
|
||||
|
||||
;; XEmacs.
|
||||
(if (not (fboundp 'make-glyph))
|
||||
|
||||
(defmacro defezimage (variable _imagespec docstring)
|
||||
"Don't bother loading up an image...
|
||||
Argument VARIABLE is the variable to define.
|
||||
Argument IMAGESPEC is the list defining the image to create.
|
||||
Argument DOCSTRING is the documentation for VARIABLE."
|
||||
`(defvar ,variable nil ,docstring))
|
||||
|
||||
(defun ezimage-find-image-on-load-path (image)
|
||||
"Find the image file IMAGE on the load path."
|
||||
(let ((l (cons
|
||||
;; In XEmacs, try the data directory first (for an
|
||||
;; install in XEmacs proper.) Search the load
|
||||
;; path next (for user installs)
|
||||
(locate-data-directory "ezimage")
|
||||
load-path))
|
||||
(r nil))
|
||||
(while (and l (not r))
|
||||
(if (file-exists-p (concat (car l) "/" image))
|
||||
(setq r (concat (car l) "/" image))
|
||||
(if (file-exists-p (concat (car l) "/icons/" image))
|
||||
(setq r (concat (car l) "/icons/" image))
|
||||
))
|
||||
(setq l (cdr l)))
|
||||
r))
|
||||
|
||||
(defun ezimage-convert-emacs21-imagespec-to-xemacs (spec)
|
||||
"Convert the Emacs21 image SPEC into an XEmacs image spec.
|
||||
The Emacs 21 spec is what I first learned, and is easy to convert."
|
||||
(let* ((sl (car spec))
|
||||
(itype (nth 1 sl))
|
||||
(ifile (nth 3 sl)))
|
||||
(vector itype ':file (ezimage-find-image-on-load-path ifile))))
|
||||
|
||||
(defmacro defezimage (variable imagespec docstring)
|
||||
"Define VARIABLE as an image if `defimage' is not available.
|
||||
IMAGESPEC is the image data, and DOCSTRING is documentation for the image."
|
||||
`(progn
|
||||
(defvar ,variable
|
||||
;; The Emacs21 version of defimage looks just like the XEmacs image
|
||||
;; specifier, except that it needs a :type keyword. If we line
|
||||
;; stuff up right, we can use this cheat to support XEmacs specifiers.
|
||||
(condition-case nil
|
||||
(make-glyph
|
||||
(make-image-specifier
|
||||
(ezimage-convert-emacs21-imagespec-to-xemacs (quote ,imagespec)))
|
||||
'buffer)
|
||||
(error nil))
|
||||
,docstring)
|
||||
(put ',variable 'ezimage t)))
|
||||
|
||||
)))
|
||||
`(progn
|
||||
(defimage ,variable ,imagespec ,docstring)
|
||||
(put (quote ,variable) 'ezimage t)))
|
||||
|
||||
(defezimage ezimage-directory
|
||||
((:type xpm :file "ezimage/dir.xpm" :ascent center))
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue