(setq save-as-active nil) (let* ((image (find-image (list '(:type xpm :file "s1.xpm")))) (image-dis (find-image (list '(:type xpm :file "s1.dis.xpm")))) (images (vector image image image-dis image-dis))) (define-key-after tool-bar-map [save-icon] `(menu-item "Save As" '("Save as" (nil) . save-i) :image ,images :enable save-as-active))) (let* ((image (find-image (list '(:type png :file "s1.png")))) (image-dis (find-image (list '(:type png :file "s1.dis.png")))) (images (vector image image image-dis image-dis))) (define-key-after tool-bar-map [save-icon-2] `(menu-item "Save As x" '("Save as" (nil) . save-i) :image ,images :enable save-as-active))) ;; at this point, only the png "disabled" icon is displayed, but not the xpm one. (setq save-as-active t) In GNU Emacs 22.0.50.1 (powerpc-apple-darwin7.9.0) of 2006-04-14 on rodrigues.inf.ed.ac.uk X server distributor `Apple Computers', version 10.4.6 configured using `configure '--without-x' '--prefix=/usr/local'' Important settings: value of $LC_ALL: nil value of $LC_COLLATE: nil value of $LC_CTYPE: nil value of $LC_MESSAGES: nil value of $LC_MONETARY: nil value of $LC_NUMERIC: nil value of $LC_TIME: nil value of $LANG: nil locale-coding-system: iso-8859-1 default-enable-multibyte-characters: t