]> git.eshelyaron.com Git - emacs.git/commitdiff
(tool-bar-add-item-from-menu): Handle case
authorGerd Moellmann <gerd@gnu.org>
Mon, 27 Nov 2000 11:28:24 +0000 (11:28 +0000)
committerGerd Moellmann <gerd@gnu.org>
Mon, 27 Nov 2000 11:28:24 +0000 (11:28 +0000)
that foreground and/or background colors of the face `tool-bar'
are unspecified.

lisp/toolbar/tool-bar.el

index aea24df51e9c73a3bdc62ce1d004009443b970e1..d26b0cab116bfac9b51b8830d930e7e5098a275b 100644 (file)
@@ -129,24 +129,25 @@ function."
     (setq map global-map))
   (let* ((menu-bar-map (lookup-key map [menu-bar]))
         (keys (where-is-internal command menu-bar-map))
-        (fg (face-foreground 'tool-bar))
-        (bg (face-background 'tool-bar))
-        (image (find-image
-                (if (display-color-p)
-                    `((:type xpm :file ,(concat icon ".xpm"))
-                      (:type pbm :file ,(concat icon ".pbm")
-                       :background ,bg
-                       :foreground ,fg)
-                      (:type xbm :file ,(concat icon ".xbm")
-                       :background ,bg
-                       :foreground ,fg))
-                  `((:type pbm :file ,(concat icon ".pbm")
-                     :background ,bg
-                     :foreground ,fg)
-                    (:type xbm :file ,(concat icon ".xbm")
-                     :background ,bg
-                     :foreground ,fg)
-                    (:type xpm :file ,(concat icon ".xpm"))))))
+        (fg (if (eq (face-foreground 'tool-bar) 'unspecified)
+                nil
+              (list :foreground (face-foreground 'tool-bar))))
+        (bg (if (eq (face-background 'tool-bar) 'unspecified)
+                nil
+              (list :background (face-background 'tool-bar))))
+        (colors (nconc fg bg))
+        (spec (if (display-color-p)
+                  (list (list :type 'xpm :file (concat icon ".xpm"))
+                        (append (list :type 'pbm :file (concat icon ".pbm"))
+                                      colors)
+                        (append (list :type 'xbm :file (concat icon ".xbm"))
+                                      colors))
+                (list (append (list :type 'pbm :file (concat icon ".pbm"))
+                                    colors)
+                      (append (list :type 'xbm :file (concat icon ".xbm"))
+                                    colors)
+                      (list :type 'xpm :file (concat icon ".xpm")))))
+        (image (find-image spec))
         submap key)
     (when image
       ;; We'll pick up the last valid entry in the list of keys if