Keybindings are made in the map `tool-bar-map'. To define items in
some local map, bind `tool-bar-map' with `let' around calls of this
function."
- (let ((image (find-image
+ (let* ((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"))
- (:type xbm :file ,(concat icon ".xbm")))
- `((:type pbm :file ,(concat icon ".pbm"))
- (:type xbm :file ,(concat icon ".xbm"))
- (:type xpm :file ,(concat icon ".xpm")))))))
+ `((: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")))))))
(when image
(unless (image-mask-p image)
(setq image (append image '(:mask heuristic))))
(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"))
- (:type xbm :file ,(concat icon ".xbm")))
- `((:type pbm :file ,(concat icon ".pbm"))
- (:type xbm :file ,(concat icon ".xbm"))
+ (: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"))))))
submap key)
(when image