[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: tool-bar-setup overwrites local tool-bar-map
From: |
Bill Wohler |
Subject: |
Re: tool-bar-setup overwrites local tool-bar-map |
Date: |
Thu, 20 Apr 2006 17:44:19 -0700 |
Bill Wohler <address@hidden> wrote:
> emacs22 -Q
> M-x info
> M-x tool-bar-mode
>
> Note how Preferences and Help icons are present.
>
> C-x b *scratch* RET
>
> Note how Preferences and Help icons are absent.
>
> To see what should have happened:
>
> emacs22 -Q
> M-x tool-bar-mode
>
> Note how Preferences and Help icons are present.
>
> M-x info
>
> Note how Preferences and Help icons are absent.
>
> This is particularly bad if you fire up mh-rmail before tool-bar-mode
> since you get two pairs of Help and Preferences.
>
> I see that tool-bar-add-item-from-menu passes (default-value
> 'tool-bar-map) to tool-bar-local-item-from-menu while tool-bar-add-item
> does not. Coincidentally, it is the tool-bar-add-item calls in
> tool-bar-setup which are a problem (Preferences and Help). Changing
> tool-bar-add-item to match tool-bar-item-from-menu fixes the problem.
>
> Does anyone know why tool-bar-add-item-from-menu got the (default-value
> 'tool-bar-map) and tool-bar-add-item did not? If not, may I check in
> this patch?
No, I may not ;-). It breaks the idiom from the tool-bar-add-item
documentation, namely:
(defvar foo-tool-bar-map
(let ((tool-bar-map (make-sparse-keymap)))
(tool-bar-add-item ...)
...
tool-bar-map))
It also did some mean and nasty things to the MH-E toolbar. The
following patch (to tool-bar-setup) seems to be working a little better.
Index: tool-bar.el
===================================================================
RCS file: /cvsroot/emacs/emacs/lisp/tool-bar.el,v
retrieving revision 1.5
diff -u -u -r1.5 tool-bar.el
--- tool-bar.el 6 Feb 2006 14:33:35 -0000 1.5
+++ tool-bar.el 21 Apr 2006 00:25:35 -0000
@@ -267,14 +267,16 @@
;;(tool-bar-add-item-from-menu 'compose-mail "mail/compose")
(tool-bar-add-item-from-menu 'print-buffer "print")
- (tool-bar-add-item "preferences" 'customize 'customize
- :help "Edit preferences (customize)")
+ (tool-bar-local-item "preferences" 'customize 'customize
+ (default-value 'tool-bar-map)
+ :help "Edit preferences (customize)")
- (tool-bar-add-item "help" (lambda ()
- (interactive)
- (popup-menu menu-bar-help-menu))
- 'help
- :help "Pop up the Help menu")
+ (tool-bar-local-item "help" (lambda ()
+ (interactive)
+ (popup-menu menu-bar-help-menu))
+ 'help
+ (default-value 'tool-bar-map)
+ :help "Pop up the Help menu")
)
(provide 'tool-bar)
--
Bill Wohler <address@hidden> http://www.newt.com/wohler/ GnuPG ID:610BD9AD
Maintainer of comp.mail.mh FAQ and MH-E. Vote Libertarian!
If you're passed on the right, you're in the wrong lane.
- Re: tool-bar-setup overwrites local tool-bar-map,
Bill Wohler <=