Mercurial > emacs
annotate lisp/toolbar/tool-bar.el @ 51151:fe11e703042b
Summary: MIME support added for e-mail processing that
skips encoded regions. Allow user to skip saving Fcc messages with
large attachments. Fixed region skipping bug with multi-line
comments - e.g. tex $ regions spanning multiple lines.
Added support for postscript and uuencoded regions.
Redundant dictionary file names purged.
Dictionary definition field name changed from "Character Set"
to "Coding System". Fixed bug in reloading dictionaries.
Modified headers to reflect new version. XEmacs menu now adds
customize item.
(ispell-check-version): No longer an aliased function.
Returns library path if not called interactively.
Variable `temporary-file-directory' protected if not loaded.
(check-ispell-version): Now the alias for `ispell-check-version'.
(ispell-message-fcc-skip): New variable that determines if and when
to query about saving Fcc copy of message if an attachment is large.
(ispell-skip-html): Declared buffer-local.
(ispell-local-dictionary-alist): Docstring expanded.
Tag name changed from "Character Set" to "Coding System".
(ispell-dictionary-alist-1): Removed redundant command-line option to
load brasileiro, british, and castellano dictionary files.
(ispell-dictionary-alist-2): Removed redundant command-line option to
load czech dictionary file.
(ispell-dictionary-alist-3): Moved francais-tex here.
(ispell-dictionary-alist-4): Removed german and german8 dictionaries.
The deutsch ones are the correct definitions. `nederlands'
and `nederlands8' dictionaries moved here.
(ispell-dictionary-alist-5): `polish' and `portugues' dictionaries
moved here. Removed redundant command-line option to `norsk'
and `portugues'.
(ispell-dictionary-alist-6): Removed redundant command-line option to
load `russian' and `slovak' dictionary files.
(ispell-dictionary-alist): Tag name changed from "Character Set" to
"Coding System".
(ispell-version): Updated to 3.6.
(ispell-library-directory): Calls non-deprecated function.
(ispell-valid-dictionary-list): New function returning all valid
dictionaries on machine.
(ispell-checking-message): Documentation string improved.
(ispell-skip-region-alist): Added uuencoded and postscript region
skipping. Improved http/e-mail/file regexp to not match `/.\w'.
(ispell-html-skip-alists): New variable for html region support.
(ispell-send-string): Removed redundant xemacs check.
(ispell-word): Fix spelling error in documentation string, added
extent information to support highlighting in ispell-minor-mode.
(ispell-command-loop): Disable horizontal scrollbar in XEmacs
choices buffer.
(ispell-show-choices): Directly select `choices-window'.
(ispell-help): Use default buffer size for electric help.
(ispell-adjusted-window-height): Correct for xemacs detection.
(ispell-start-process): Don't double specify dictionary file name.
(ispell-init-process): Set `ispell-library-path' each call.
(ispell-change-dictionary): Now only completes valid dictionaries.
(ispell-region): Add support for MIME region skipping and Fcc
message query for large attachments.
(ispell-begin-skip-region-regexp): Add documentation string.
Added message support and cleaned up code for generic and html regions.
(ispell-begin-skip-region): Function is now requires alist argument.
(ispell-begin-tex-skip-regexp): Added comments and support
improved html and message regions.
(ispell-skip-region-list): New function for MIME and region skipping.
(ispell-tex-arg-end): Add documentation string.
(ispell-ignore-fcc): New function to query saving Fcc message.
(ispell-skip-region): Calculate alist for key match dynamically,
html skipping pushed to alists.
(ispell-get-line): Add support for multi-line comment regions.
(ispell): Check that variables to continue spelling are bound.
(ispell-message-text-end): Postscript and uuencoded regions now
supported as MIME regions, rather than as end-of-message region.
(ispell-mime-multipartp): New function supporting MIME.
(ispell-mime-skip-part): New function supporting MIME.
(ispell-message): Add MIME support.
(ispell-buffer-local-parsing): Variable `ispell-skip-html' now local.
(ispell-buffer-local-dict): Fixed bug for detecting and reloading
new dictionary.
author | Stefan Monnier <monnier@iro.umontreal.ca> |
---|---|
date | Thu, 22 May 2003 21:34:00 +0000 |
parents | 7350385eb42a |
children | 695cf19ef79e |
rev | line source |
---|---|
38436
b174db545cfd
Some fixes to follow coding conventions.
Pavel Janík <Pavel@Janik.cz>
parents:
38144
diff
changeset
|
1 ;;; tool-bar.el --- setting up the tool bar |
31738
e8458588eb55
Renamed from toolbar.el. Change `toolbar'
Dave Love <fx@gnu.org>
parents:
diff
changeset
|
2 ;; |
43246
c187056ac630
2002-02-11 Per Abrahamsen <abraham@dina.kvl.dk>
Per Abrahamsen <abraham@dina.kvl.dk>
parents:
39019
diff
changeset
|
3 ;; Copyright (C) 2000, 2001, 2002 Free Software Foundation, Inc. |
31738
e8458588eb55
Renamed from toolbar.el. Change `toolbar'
Dave Love <fx@gnu.org>
parents:
diff
changeset
|
4 ;; |
e8458588eb55
Renamed from toolbar.el. Change `toolbar'
Dave Love <fx@gnu.org>
parents:
diff
changeset
|
5 ;; Author: Dave Love <fx@gnu.org> |
e8458588eb55
Renamed from toolbar.el. Change `toolbar'
Dave Love <fx@gnu.org>
parents:
diff
changeset
|
6 ;; Keywords: mouse frames |
e8458588eb55
Renamed from toolbar.el. Change `toolbar'
Dave Love <fx@gnu.org>
parents:
diff
changeset
|
7 |
e8458588eb55
Renamed from toolbar.el. Change `toolbar'
Dave Love <fx@gnu.org>
parents:
diff
changeset
|
8 ;; This file is part of GNU Emacs. |
e8458588eb55
Renamed from toolbar.el. Change `toolbar'
Dave Love <fx@gnu.org>
parents:
diff
changeset
|
9 |
e8458588eb55
Renamed from toolbar.el. Change `toolbar'
Dave Love <fx@gnu.org>
parents:
diff
changeset
|
10 ;; GNU Emacs is free software; you can redistribute it and/or modify |
e8458588eb55
Renamed from toolbar.el. Change `toolbar'
Dave Love <fx@gnu.org>
parents:
diff
changeset
|
11 ;; it under the terms of the GNU General Public License as published by |
e8458588eb55
Renamed from toolbar.el. Change `toolbar'
Dave Love <fx@gnu.org>
parents:
diff
changeset
|
12 ;; the Free Software Foundation; either version 2, or (at your option) |
e8458588eb55
Renamed from toolbar.el. Change `toolbar'
Dave Love <fx@gnu.org>
parents:
diff
changeset
|
13 ;; any later version. |
e8458588eb55
Renamed from toolbar.el. Change `toolbar'
Dave Love <fx@gnu.org>
parents:
diff
changeset
|
14 |
e8458588eb55
Renamed from toolbar.el. Change `toolbar'
Dave Love <fx@gnu.org>
parents:
diff
changeset
|
15 ;; GNU Emacs is distributed in the hope that it will be useful, |
e8458588eb55
Renamed from toolbar.el. Change `toolbar'
Dave Love <fx@gnu.org>
parents:
diff
changeset
|
16 ;; but WITHOUT ANY WARRANTY; without even the implied warranty of |
e8458588eb55
Renamed from toolbar.el. Change `toolbar'
Dave Love <fx@gnu.org>
parents:
diff
changeset
|
17 ;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
e8458588eb55
Renamed from toolbar.el. Change `toolbar'
Dave Love <fx@gnu.org>
parents:
diff
changeset
|
18 ;; GNU General Public License for more details. |
e8458588eb55
Renamed from toolbar.el. Change `toolbar'
Dave Love <fx@gnu.org>
parents:
diff
changeset
|
19 |
e8458588eb55
Renamed from toolbar.el. Change `toolbar'
Dave Love <fx@gnu.org>
parents:
diff
changeset
|
20 ;; You should have received a copy of the GNU General Public License |
e8458588eb55
Renamed from toolbar.el. Change `toolbar'
Dave Love <fx@gnu.org>
parents:
diff
changeset
|
21 ;; along with GNU Emacs; see the file COPYING. If not, write to the |
e8458588eb55
Renamed from toolbar.el. Change `toolbar'
Dave Love <fx@gnu.org>
parents:
diff
changeset
|
22 ;; Free Software Foundation, Inc., 59 Temple Place - Suite 330, |
e8458588eb55
Renamed from toolbar.el. Change `toolbar'
Dave Love <fx@gnu.org>
parents:
diff
changeset
|
23 ;; Boston, MA 02111-1307, USA. |
e8458588eb55
Renamed from toolbar.el. Change `toolbar'
Dave Love <fx@gnu.org>
parents:
diff
changeset
|
24 |
e8458588eb55
Renamed from toolbar.el. Change `toolbar'
Dave Love <fx@gnu.org>
parents:
diff
changeset
|
25 ;;; Commentary: |
e8458588eb55
Renamed from toolbar.el. Change `toolbar'
Dave Love <fx@gnu.org>
parents:
diff
changeset
|
26 |
45935 | 27 ;; Provides `tool-bar-mode' to control display of the tool-bar and |
31738
e8458588eb55
Renamed from toolbar.el. Change `toolbar'
Dave Love <fx@gnu.org>
parents:
diff
changeset
|
28 ;; bindings for the global tool bar with convenience functions |
e8458588eb55
Renamed from toolbar.el. Change `toolbar'
Dave Love <fx@gnu.org>
parents:
diff
changeset
|
29 ;; `tool-bar-add-item' and `tool-bar-add-item-from-menu'. |
e8458588eb55
Renamed from toolbar.el. Change `toolbar'
Dave Love <fx@gnu.org>
parents:
diff
changeset
|
30 |
32285 | 31 ;; The normal global binding for [tool-bar] (below) uses the value of |
33574 | 32 ;; `tool-bar-map' as the actual keymap to define the tool bar. Modes |
33 ;; may either bind items under the [tool-bar] prefix key of the local | |
34 ;; map to add to the global bar or may set `tool-bar-map' | |
32382 | 35 ;; buffer-locally to override it. (Some items are removed from the |
32285 | 36 ;; global bar in modes which have `special' as their `mode-class' |
44153
3db8348dbbfa
Fix typo in commentary.
Juanma Barranquero <lekktu@gmail.com>
parents:
43445
diff
changeset
|
37 ;; property.) |
32285 | 38 |
32331
d1c0cf83e365
(tool-bar-mode): Check whether tool-bar-map
Dave Love <fx@gnu.org>
parents:
32285
diff
changeset
|
39 ;; Todo: Somehow make tool bars easily customizable by the naive? |
d1c0cf83e365
(tool-bar-mode): Check whether tool-bar-map
Dave Love <fx@gnu.org>
parents:
32285
diff
changeset
|
40 |
31738
e8458588eb55
Renamed from toolbar.el. Change `toolbar'
Dave Love <fx@gnu.org>
parents:
diff
changeset
|
41 ;;; Code: |
e8458588eb55
Renamed from toolbar.el. Change `toolbar'
Dave Love <fx@gnu.org>
parents:
diff
changeset
|
42 |
e8458588eb55
Renamed from toolbar.el. Change `toolbar'
Dave Love <fx@gnu.org>
parents:
diff
changeset
|
43 ;;;###autoload |
e8458588eb55
Renamed from toolbar.el. Change `toolbar'
Dave Love <fx@gnu.org>
parents:
diff
changeset
|
44 (define-minor-mode tool-bar-mode |
e8458588eb55
Renamed from toolbar.el. Change `toolbar'
Dave Love <fx@gnu.org>
parents:
diff
changeset
|
45 "Toggle use of the tool bar. |
34004 | 46 With numeric ARG, display the tool bar if and only if ARG is positive. |
31738
e8458588eb55
Renamed from toolbar.el. Change `toolbar'
Dave Love <fx@gnu.org>
parents:
diff
changeset
|
47 |
e8458588eb55
Renamed from toolbar.el. Change `toolbar'
Dave Love <fx@gnu.org>
parents:
diff
changeset
|
48 See `tool-bar-add-item' and `tool-bar-add-item-from-menu' for |
e8458588eb55
Renamed from toolbar.el. Change `toolbar'
Dave Love <fx@gnu.org>
parents:
diff
changeset
|
49 conveniently adding tool bar items." |
43445
2fca4318df9a
2002-02-21 Per Abrahamsen <abraham@dina.kvl.dk>
Per Abrahamsen <abraham@dina.kvl.dk>
parents:
43412
diff
changeset
|
50 :init-value nil |
31738
e8458588eb55
Renamed from toolbar.el. Change `toolbar'
Dave Love <fx@gnu.org>
parents:
diff
changeset
|
51 :global t |
e8458588eb55
Renamed from toolbar.el. Change `toolbar'
Dave Love <fx@gnu.org>
parents:
diff
changeset
|
52 :group 'mouse |
e8458588eb55
Renamed from toolbar.el. Change `toolbar'
Dave Love <fx@gnu.org>
parents:
diff
changeset
|
53 :group 'frames |
39019
a9bd717014f0
(tool-bar-mode): Make it a no-op if images
Eli Zaretskii <eliz@gnu.org>
parents:
38698
diff
changeset
|
54 (and (display-images-p) |
a9bd717014f0
(tool-bar-mode): Make it a no-op if images
Eli Zaretskii <eliz@gnu.org>
parents:
38698
diff
changeset
|
55 (let ((lines (if tool-bar-mode 1 0))) |
a9bd717014f0
(tool-bar-mode): Make it a no-op if images
Eli Zaretskii <eliz@gnu.org>
parents:
38698
diff
changeset
|
56 ;; Alter existing frames... |
a9bd717014f0
(tool-bar-mode): Make it a no-op if images
Eli Zaretskii <eliz@gnu.org>
parents:
38698
diff
changeset
|
57 (mapc (lambda (frame) |
a9bd717014f0
(tool-bar-mode): Make it a no-op if images
Eli Zaretskii <eliz@gnu.org>
parents:
38698
diff
changeset
|
58 (modify-frame-parameters frame |
a9bd717014f0
(tool-bar-mode): Make it a no-op if images
Eli Zaretskii <eliz@gnu.org>
parents:
38698
diff
changeset
|
59 (list (cons 'tool-bar-lines lines)))) |
a9bd717014f0
(tool-bar-mode): Make it a no-op if images
Eli Zaretskii <eliz@gnu.org>
parents:
38698
diff
changeset
|
60 (frame-list)) |
a9bd717014f0
(tool-bar-mode): Make it a no-op if images
Eli Zaretskii <eliz@gnu.org>
parents:
38698
diff
changeset
|
61 ;; ...and future ones. |
a9bd717014f0
(tool-bar-mode): Make it a no-op if images
Eli Zaretskii <eliz@gnu.org>
parents:
38698
diff
changeset
|
62 (let ((elt (assq 'tool-bar-lines default-frame-alist))) |
a9bd717014f0
(tool-bar-mode): Make it a no-op if images
Eli Zaretskii <eliz@gnu.org>
parents:
38698
diff
changeset
|
63 (if elt |
a9bd717014f0
(tool-bar-mode): Make it a no-op if images
Eli Zaretskii <eliz@gnu.org>
parents:
38698
diff
changeset
|
64 (setcdr elt lines) |
a9bd717014f0
(tool-bar-mode): Make it a no-op if images
Eli Zaretskii <eliz@gnu.org>
parents:
38698
diff
changeset
|
65 (add-to-list 'default-frame-alist (cons 'tool-bar-lines lines))))) |
a9bd717014f0
(tool-bar-mode): Make it a no-op if images
Eli Zaretskii <eliz@gnu.org>
parents:
38698
diff
changeset
|
66 (if (and tool-bar-mode |
a9bd717014f0
(tool-bar-mode): Make it a no-op if images
Eli Zaretskii <eliz@gnu.org>
parents:
38698
diff
changeset
|
67 (display-graphic-p) |
a9bd717014f0
(tool-bar-mode): Make it a no-op if images
Eli Zaretskii <eliz@gnu.org>
parents:
38698
diff
changeset
|
68 (= 1 (length (default-value 'tool-bar-map)))) ; not yet setup |
a9bd717014f0
(tool-bar-mode): Make it a no-op if images
Eli Zaretskii <eliz@gnu.org>
parents:
38698
diff
changeset
|
69 (tool-bar-setup)))) |
31738
e8458588eb55
Renamed from toolbar.el. Change `toolbar'
Dave Love <fx@gnu.org>
parents:
diff
changeset
|
70 |
43445
2fca4318df9a
2002-02-21 Per Abrahamsen <abraham@dina.kvl.dk>
Per Abrahamsen <abraham@dina.kvl.dk>
parents:
43412
diff
changeset
|
71 ;;;###autoload |
2fca4318df9a
2002-02-21 Per Abrahamsen <abraham@dina.kvl.dk>
Per Abrahamsen <abraham@dina.kvl.dk>
parents:
43412
diff
changeset
|
72 ;; We want to pretend the toolbar by standard is on, as this will make |
2fca4318df9a
2002-02-21 Per Abrahamsen <abraham@dina.kvl.dk>
Per Abrahamsen <abraham@dina.kvl.dk>
parents:
43412
diff
changeset
|
73 ;; customize consider disabling the toolbar a customization, and save |
2fca4318df9a
2002-02-21 Per Abrahamsen <abraham@dina.kvl.dk>
Per Abrahamsen <abraham@dina.kvl.dk>
parents:
43412
diff
changeset
|
74 ;; that. We could do this for real by setting :init-value above, but |
2fca4318df9a
2002-02-21 Per Abrahamsen <abraham@dina.kvl.dk>
Per Abrahamsen <abraham@dina.kvl.dk>
parents:
43412
diff
changeset
|
75 ;; that would turn on the toolbar in MS Windows where it is currently |
2fca4318df9a
2002-02-21 Per Abrahamsen <abraham@dina.kvl.dk>
Per Abrahamsen <abraham@dina.kvl.dk>
parents:
43412
diff
changeset
|
76 ;; useless, and it would overwrite disabling the tool bar from X |
2fca4318df9a
2002-02-21 Per Abrahamsen <abraham@dina.kvl.dk>
Per Abrahamsen <abraham@dina.kvl.dk>
parents:
43412
diff
changeset
|
77 ;; resources. If anyone want to implement this in a cleaner way, |
2fca4318df9a
2002-02-21 Per Abrahamsen <abraham@dina.kvl.dk>
Per Abrahamsen <abraham@dina.kvl.dk>
parents:
43412
diff
changeset
|
78 ;; please do so. |
2fca4318df9a
2002-02-21 Per Abrahamsen <abraham@dina.kvl.dk>
Per Abrahamsen <abraham@dina.kvl.dk>
parents:
43412
diff
changeset
|
79 ;; -- Per Abrahamsen <abraham@dina.kvl.dk> 2002-02-21. |
2fca4318df9a
2002-02-21 Per Abrahamsen <abraham@dina.kvl.dk>
Per Abrahamsen <abraham@dina.kvl.dk>
parents:
43412
diff
changeset
|
80 (put 'tool-bar-mode 'standard-value '(t)) |
2fca4318df9a
2002-02-21 Per Abrahamsen <abraham@dina.kvl.dk>
Per Abrahamsen <abraham@dina.kvl.dk>
parents:
43412
diff
changeset
|
81 |
32285 | 82 (defvar tool-bar-map (make-sparse-keymap) |
83 "Keymap for the tool bar. | |
84 Define this locally to override the global tool bar.") | |
85 | |
86 (global-set-key [tool-bar] | |
87 '(menu-item "tool bar" ignore | |
88 :filter (lambda (ignore) tool-bar-map))) | |
31738
e8458588eb55
Renamed from toolbar.el. Change `toolbar'
Dave Love <fx@gnu.org>
parents:
diff
changeset
|
89 |
e8458588eb55
Renamed from toolbar.el. Change `toolbar'
Dave Love <fx@gnu.org>
parents:
diff
changeset
|
90 ;;;###autoload |
32285 | 91 (defun tool-bar-add-item (icon def key &rest props) |
31738
e8458588eb55
Renamed from toolbar.el. Change `toolbar'
Dave Love <fx@gnu.org>
parents:
diff
changeset
|
92 "Add an item to the tool bar. |
e8458588eb55
Renamed from toolbar.el. Change `toolbar'
Dave Love <fx@gnu.org>
parents:
diff
changeset
|
93 ICON names the image, DEF is the key definition and KEY is a symbol |
32285 | 94 for the fake function key in the menu keymap. Remaining arguments |
95 PROPS are additional items to add to the menu item specification. See | |
96 Info node `(elisp)Tool Bar'. Items are added from left to right. | |
31738
e8458588eb55
Renamed from toolbar.el. Change `toolbar'
Dave Love <fx@gnu.org>
parents:
diff
changeset
|
97 |
35764
0a2ba9c8fde1
(tool-bar-add-item): Doc fix.
Eli Zaretskii <eliz@gnu.org>
parents:
34019
diff
changeset
|
98 ICON is the base name of a file containing the image to use. The |
0a2ba9c8fde1
(tool-bar-add-item): Doc fix.
Eli Zaretskii <eliz@gnu.org>
parents:
34019
diff
changeset
|
99 function will first try to use ICON.xpm, then ICON.pbm, and finally |
0a2ba9c8fde1
(tool-bar-add-item): Doc fix.
Eli Zaretskii <eliz@gnu.org>
parents:
34019
diff
changeset
|
100 ICON.xbm, using `find-image'. |
32285 | 101 |
44307
62bd2c6cd91f
(tool-bar-local-item): Renamed from tool-bar-add-item, and new arg MAP.
Richard M. Stallman <rms@gnu.org>
parents:
44153
diff
changeset
|
102 Use this function only to make bindings in the global value of `tool-bar-map'. |
62bd2c6cd91f
(tool-bar-local-item): Renamed from tool-bar-add-item, and new arg MAP.
Richard M. Stallman <rms@gnu.org>
parents:
44153
diff
changeset
|
103 To define items in any other map, use `tool-bar-local-item'." |
62bd2c6cd91f
(tool-bar-local-item): Renamed from tool-bar-add-item, and new arg MAP.
Richard M. Stallman <rms@gnu.org>
parents:
44153
diff
changeset
|
104 (apply 'tool-bar-local-item icon def key tool-bar-map props)) |
62bd2c6cd91f
(tool-bar-local-item): Renamed from tool-bar-add-item, and new arg MAP.
Richard M. Stallman <rms@gnu.org>
parents:
44153
diff
changeset
|
105 |
62bd2c6cd91f
(tool-bar-local-item): Renamed from tool-bar-add-item, and new arg MAP.
Richard M. Stallman <rms@gnu.org>
parents:
44153
diff
changeset
|
106 ;;;###autoload |
62bd2c6cd91f
(tool-bar-local-item): Renamed from tool-bar-add-item, and new arg MAP.
Richard M. Stallman <rms@gnu.org>
parents:
44153
diff
changeset
|
107 (defun tool-bar-local-item (icon def key map &rest props) |
62bd2c6cd91f
(tool-bar-local-item): Renamed from tool-bar-add-item, and new arg MAP.
Richard M. Stallman <rms@gnu.org>
parents:
44153
diff
changeset
|
108 "Add an item to the tool bar in map MAP. |
62bd2c6cd91f
(tool-bar-local-item): Renamed from tool-bar-add-item, and new arg MAP.
Richard M. Stallman <rms@gnu.org>
parents:
44153
diff
changeset
|
109 ICON names the image, DEF is the key definition and KEY is a symbol |
62bd2c6cd91f
(tool-bar-local-item): Renamed from tool-bar-add-item, and new arg MAP.
Richard M. Stallman <rms@gnu.org>
parents:
44153
diff
changeset
|
110 for the fake function key in the menu keymap. Remaining arguments |
62bd2c6cd91f
(tool-bar-local-item): Renamed from tool-bar-add-item, and new arg MAP.
Richard M. Stallman <rms@gnu.org>
parents:
44153
diff
changeset
|
111 PROPS are additional items to add to the menu item specification. See |
62bd2c6cd91f
(tool-bar-local-item): Renamed from tool-bar-add-item, and new arg MAP.
Richard M. Stallman <rms@gnu.org>
parents:
44153
diff
changeset
|
112 Info node `(elisp)Tool Bar'. Items are added from left to right. |
62bd2c6cd91f
(tool-bar-local-item): Renamed from tool-bar-add-item, and new arg MAP.
Richard M. Stallman <rms@gnu.org>
parents:
44153
diff
changeset
|
113 |
62bd2c6cd91f
(tool-bar-local-item): Renamed from tool-bar-add-item, and new arg MAP.
Richard M. Stallman <rms@gnu.org>
parents:
44153
diff
changeset
|
114 ICON is the base name of a file containing the image to use. The |
62bd2c6cd91f
(tool-bar-local-item): Renamed from tool-bar-add-item, and new arg MAP.
Richard M. Stallman <rms@gnu.org>
parents:
44153
diff
changeset
|
115 function will first try to use ICON.xpm, then ICON.pbm, and finally |
62bd2c6cd91f
(tool-bar-local-item): Renamed from tool-bar-add-item, and new arg MAP.
Richard M. Stallman <rms@gnu.org>
parents:
44153
diff
changeset
|
116 ICON.xbm, using `find-image'." |
34019
3d6f9638e8e5
(tool-bar-add-item-from-menu): Use
Gerd Moellmann <gerd@gnu.org>
parents:
34004
diff
changeset
|
117 (let* ((fg (face-attribute 'tool-bar :foreground)) |
3d6f9638e8e5
(tool-bar-add-item-from-menu): Use
Gerd Moellmann <gerd@gnu.org>
parents:
34004
diff
changeset
|
118 (bg (face-attribute 'tool-bar :background)) |
3d6f9638e8e5
(tool-bar-add-item-from-menu): Use
Gerd Moellmann <gerd@gnu.org>
parents:
34004
diff
changeset
|
119 (colors (nconc (if (eq fg 'unspecified) nil (list :foreground fg)) |
3d6f9638e8e5
(tool-bar-add-item-from-menu): Use
Gerd Moellmann <gerd@gnu.org>
parents:
34004
diff
changeset
|
120 (if (eq bg 'unspecified) nil (list :background bg)))) |
32788 | 121 (image (find-image |
32358 | 122 (if (display-color-p) |
34019
3d6f9638e8e5
(tool-bar-add-item-from-menu): Use
Gerd Moellmann <gerd@gnu.org>
parents:
34004
diff
changeset
|
123 (list (list :type 'xpm :file (concat icon ".xpm")) |
3d6f9638e8e5
(tool-bar-add-item-from-menu): Use
Gerd Moellmann <gerd@gnu.org>
parents:
34004
diff
changeset
|
124 (append (list :type 'pbm :file (concat icon ".pbm")) |
3d6f9638e8e5
(tool-bar-add-item-from-menu): Use
Gerd Moellmann <gerd@gnu.org>
parents:
34004
diff
changeset
|
125 colors) |
3d6f9638e8e5
(tool-bar-add-item-from-menu): Use
Gerd Moellmann <gerd@gnu.org>
parents:
34004
diff
changeset
|
126 (append (list :type 'xbm :file (concat icon ".xbm")) |
3d6f9638e8e5
(tool-bar-add-item-from-menu): Use
Gerd Moellmann <gerd@gnu.org>
parents:
34004
diff
changeset
|
127 colors)) |
3d6f9638e8e5
(tool-bar-add-item-from-menu): Use
Gerd Moellmann <gerd@gnu.org>
parents:
34004
diff
changeset
|
128 (list (append (list :type 'pbm :file (concat icon ".pbm")) |
3d6f9638e8e5
(tool-bar-add-item-from-menu): Use
Gerd Moellmann <gerd@gnu.org>
parents:
34004
diff
changeset
|
129 colors) |
3d6f9638e8e5
(tool-bar-add-item-from-menu): Use
Gerd Moellmann <gerd@gnu.org>
parents:
34004
diff
changeset
|
130 (append (list :type 'xbm :file (concat icon ".xbm")) |
3d6f9638e8e5
(tool-bar-add-item-from-menu): Use
Gerd Moellmann <gerd@gnu.org>
parents:
34004
diff
changeset
|
131 colors) |
3d6f9638e8e5
(tool-bar-add-item-from-menu): Use
Gerd Moellmann <gerd@gnu.org>
parents:
34004
diff
changeset
|
132 (list :type 'xpm :file (concat icon ".xpm"))))))) |
38470
b8361f155685
(tool-bar-add-item-from-menu, tool-bar-add-item): Don't call image-related
Eli Zaretskii <eliz@gnu.org>
parents:
38436
diff
changeset
|
133 (when (and (display-images-p) image) |
31738
e8458588eb55
Renamed from toolbar.el. Change `toolbar'
Dave Love <fx@gnu.org>
parents:
diff
changeset
|
134 (unless (image-mask-p image) |
e8458588eb55
Renamed from toolbar.el. Change `toolbar'
Dave Love <fx@gnu.org>
parents:
diff
changeset
|
135 (setq image (append image '(:mask heuristic)))) |
44307
62bd2c6cd91f
(tool-bar-local-item): Renamed from tool-bar-add-item, and new arg MAP.
Richard M. Stallman <rms@gnu.org>
parents:
44153
diff
changeset
|
136 (define-key-after map (vector key) |
31738
e8458588eb55
Renamed from toolbar.el. Change `toolbar'
Dave Love <fx@gnu.org>
parents:
diff
changeset
|
137 `(menu-item ,(symbol-name key) ,def :image ,image ,@props))))) |
e8458588eb55
Renamed from toolbar.el. Change `toolbar'
Dave Love <fx@gnu.org>
parents:
diff
changeset
|
138 |
32340
97bfc5c6e1c1
(tool-bar-add-item-from-menu): Add autoload cookie.
Dave Love <fx@gnu.org>
parents:
32331
diff
changeset
|
139 ;;;###autoload |
31738
e8458588eb55
Renamed from toolbar.el. Change `toolbar'
Dave Love <fx@gnu.org>
parents:
diff
changeset
|
140 (defun tool-bar-add-item-from-menu (command icon &optional map &rest props) |
e8458588eb55
Renamed from toolbar.el. Change `toolbar'
Dave Love <fx@gnu.org>
parents:
diff
changeset
|
141 "Define tool bar binding for COMMAND using the given ICON in keymap MAP. |
44307
62bd2c6cd91f
(tool-bar-local-item): Renamed from tool-bar-add-item, and new arg MAP.
Richard M. Stallman <rms@gnu.org>
parents:
44153
diff
changeset
|
142 This makes a binding for COMMAND in `tool-bar-map', copying its |
62bd2c6cd91f
(tool-bar-local-item): Renamed from tool-bar-add-item, and new arg MAP.
Richard M. Stallman <rms@gnu.org>
parents:
44153
diff
changeset
|
143 binding from the menu bar in MAP (which defaults to `global-map'), but |
62bd2c6cd91f
(tool-bar-local-item): Renamed from tool-bar-add-item, and new arg MAP.
Richard M. Stallman <rms@gnu.org>
parents:
44153
diff
changeset
|
144 modifies the binding by adding an image specification for ICON. It |
62bd2c6cd91f
(tool-bar-local-item): Renamed from tool-bar-add-item, and new arg MAP.
Richard M. Stallman <rms@gnu.org>
parents:
44153
diff
changeset
|
145 finds ICON just like `tool-bar-add-item'. PROPS are additional |
62bd2c6cd91f
(tool-bar-local-item): Renamed from tool-bar-add-item, and new arg MAP.
Richard M. Stallman <rms@gnu.org>
parents:
44153
diff
changeset
|
146 properties to add to the binding. |
62bd2c6cd91f
(tool-bar-local-item): Renamed from tool-bar-add-item, and new arg MAP.
Richard M. Stallman <rms@gnu.org>
parents:
44153
diff
changeset
|
147 |
62bd2c6cd91f
(tool-bar-local-item): Renamed from tool-bar-add-item, and new arg MAP.
Richard M. Stallman <rms@gnu.org>
parents:
44153
diff
changeset
|
148 MAP must contain appropriate binding for `[menu-bar]' which holds a keymap. |
62bd2c6cd91f
(tool-bar-local-item): Renamed from tool-bar-add-item, and new arg MAP.
Richard M. Stallman <rms@gnu.org>
parents:
44153
diff
changeset
|
149 |
62bd2c6cd91f
(tool-bar-local-item): Renamed from tool-bar-add-item, and new arg MAP.
Richard M. Stallman <rms@gnu.org>
parents:
44153
diff
changeset
|
150 Use this function only to make bindings in the global value of `tool-bar-map'. |
62bd2c6cd91f
(tool-bar-local-item): Renamed from tool-bar-add-item, and new arg MAP.
Richard M. Stallman <rms@gnu.org>
parents:
44153
diff
changeset
|
151 To define items in any other map, use `tool-bar-local-item'." |
46483
7350385eb42a
(tool-bar-add-item-from-menu): Make sure to change the global tool-bar-map.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
45935
diff
changeset
|
152 (apply 'tool-bar-local-item-from-menu command icon |
7350385eb42a
(tool-bar-add-item-from-menu): Make sure to change the global tool-bar-map.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
45935
diff
changeset
|
153 (default-value 'tool-bar-map) map props)) |
32285 | 154 |
44307
62bd2c6cd91f
(tool-bar-local-item): Renamed from tool-bar-add-item, and new arg MAP.
Richard M. Stallman <rms@gnu.org>
parents:
44153
diff
changeset
|
155 ;;;###autoload |
62bd2c6cd91f
(tool-bar-local-item): Renamed from tool-bar-add-item, and new arg MAP.
Richard M. Stallman <rms@gnu.org>
parents:
44153
diff
changeset
|
156 (defun tool-bar-local-item-from-menu (command icon in-map &optional from-map &rest props) |
62bd2c6cd91f
(tool-bar-local-item): Renamed from tool-bar-add-item, and new arg MAP.
Richard M. Stallman <rms@gnu.org>
parents:
44153
diff
changeset
|
157 "Define tool bar binding for COMMAND using the given ICON in keymap MAP. |
62bd2c6cd91f
(tool-bar-local-item): Renamed from tool-bar-add-item, and new arg MAP.
Richard M. Stallman <rms@gnu.org>
parents:
44153
diff
changeset
|
158 This makes a binding for COMMAND in IN-MAP, copying its binding from |
62bd2c6cd91f
(tool-bar-local-item): Renamed from tool-bar-add-item, and new arg MAP.
Richard M. Stallman <rms@gnu.org>
parents:
44153
diff
changeset
|
159 the menu bar in FROM-MAP (which defaults to `global-map'), but |
62bd2c6cd91f
(tool-bar-local-item): Renamed from tool-bar-add-item, and new arg MAP.
Richard M. Stallman <rms@gnu.org>
parents:
44153
diff
changeset
|
160 modifies the binding by adding an image specification for ICON. It |
62bd2c6cd91f
(tool-bar-local-item): Renamed from tool-bar-add-item, and new arg MAP.
Richard M. Stallman <rms@gnu.org>
parents:
44153
diff
changeset
|
161 finds ICON just like `tool-bar-add-item'. PROPS are additional |
62bd2c6cd91f
(tool-bar-local-item): Renamed from tool-bar-add-item, and new arg MAP.
Richard M. Stallman <rms@gnu.org>
parents:
44153
diff
changeset
|
162 properties to add to the binding. |
62bd2c6cd91f
(tool-bar-local-item): Renamed from tool-bar-add-item, and new arg MAP.
Richard M. Stallman <rms@gnu.org>
parents:
44153
diff
changeset
|
163 |
62bd2c6cd91f
(tool-bar-local-item): Renamed from tool-bar-add-item, and new arg MAP.
Richard M. Stallman <rms@gnu.org>
parents:
44153
diff
changeset
|
164 MAP must contain appropriate binding for `[menu-bar]' which holds a keymap." |
62bd2c6cd91f
(tool-bar-local-item): Renamed from tool-bar-add-item, and new arg MAP.
Richard M. Stallman <rms@gnu.org>
parents:
44153
diff
changeset
|
165 (unless from-map |
62bd2c6cd91f
(tool-bar-local-item): Renamed from tool-bar-add-item, and new arg MAP.
Richard M. Stallman <rms@gnu.org>
parents:
44153
diff
changeset
|
166 (setq from-map global-map)) |
62bd2c6cd91f
(tool-bar-local-item): Renamed from tool-bar-add-item, and new arg MAP.
Richard M. Stallman <rms@gnu.org>
parents:
44153
diff
changeset
|
167 (let* ((menu-bar-map (lookup-key from-map [menu-bar])) |
31738
e8458588eb55
Renamed from toolbar.el. Change `toolbar'
Dave Love <fx@gnu.org>
parents:
diff
changeset
|
168 (keys (where-is-internal command menu-bar-map)) |
34019
3d6f9638e8e5
(tool-bar-add-item-from-menu): Use
Gerd Moellmann <gerd@gnu.org>
parents:
34004
diff
changeset
|
169 (fg (face-attribute 'tool-bar :foreground)) |
3d6f9638e8e5
(tool-bar-add-item-from-menu): Use
Gerd Moellmann <gerd@gnu.org>
parents:
34004
diff
changeset
|
170 (bg (face-attribute 'tool-bar :background)) |
3d6f9638e8e5
(tool-bar-add-item-from-menu): Use
Gerd Moellmann <gerd@gnu.org>
parents:
34004
diff
changeset
|
171 (colors (nconc (if (eq fg 'unspecified) nil (list :foreground fg)) |
3d6f9638e8e5
(tool-bar-add-item-from-menu): Use
Gerd Moellmann <gerd@gnu.org>
parents:
34004
diff
changeset
|
172 (if (eq bg 'unspecified) nil (list :background bg)))) |
33895
3683396305bc
(tool-bar-add-item-from-menu): Handle case
Gerd Moellmann <gerd@gnu.org>
parents:
33574
diff
changeset
|
173 (spec (if (display-color-p) |
3683396305bc
(tool-bar-add-item-from-menu): Handle case
Gerd Moellmann <gerd@gnu.org>
parents:
33574
diff
changeset
|
174 (list (list :type 'xpm :file (concat icon ".xpm")) |
3683396305bc
(tool-bar-add-item-from-menu): Handle case
Gerd Moellmann <gerd@gnu.org>
parents:
33574
diff
changeset
|
175 (append (list :type 'pbm :file (concat icon ".pbm")) |
3683396305bc
(tool-bar-add-item-from-menu): Handle case
Gerd Moellmann <gerd@gnu.org>
parents:
33574
diff
changeset
|
176 colors) |
3683396305bc
(tool-bar-add-item-from-menu): Handle case
Gerd Moellmann <gerd@gnu.org>
parents:
33574
diff
changeset
|
177 (append (list :type 'xbm :file (concat icon ".xbm")) |
3683396305bc
(tool-bar-add-item-from-menu): Handle case
Gerd Moellmann <gerd@gnu.org>
parents:
33574
diff
changeset
|
178 colors)) |
3683396305bc
(tool-bar-add-item-from-menu): Handle case
Gerd Moellmann <gerd@gnu.org>
parents:
33574
diff
changeset
|
179 (list (append (list :type 'pbm :file (concat icon ".pbm")) |
3683396305bc
(tool-bar-add-item-from-menu): Handle case
Gerd Moellmann <gerd@gnu.org>
parents:
33574
diff
changeset
|
180 colors) |
3683396305bc
(tool-bar-add-item-from-menu): Handle case
Gerd Moellmann <gerd@gnu.org>
parents:
33574
diff
changeset
|
181 (append (list :type 'xbm :file (concat icon ".xbm")) |
3683396305bc
(tool-bar-add-item-from-menu): Handle case
Gerd Moellmann <gerd@gnu.org>
parents:
33574
diff
changeset
|
182 colors) |
3683396305bc
(tool-bar-add-item-from-menu): Handle case
Gerd Moellmann <gerd@gnu.org>
parents:
33574
diff
changeset
|
183 (list :type 'xpm :file (concat icon ".xpm"))))) |
3683396305bc
(tool-bar-add-item-from-menu): Handle case
Gerd Moellmann <gerd@gnu.org>
parents:
33574
diff
changeset
|
184 (image (find-image spec)) |
31738
e8458588eb55
Renamed from toolbar.el. Change `toolbar'
Dave Love <fx@gnu.org>
parents:
diff
changeset
|
185 submap key) |
38470
b8361f155685
(tool-bar-add-item-from-menu, tool-bar-add-item): Don't call image-related
Eli Zaretskii <eliz@gnu.org>
parents:
38436
diff
changeset
|
186 (when (and (display-images-p) image) |
31738
e8458588eb55
Renamed from toolbar.el. Change `toolbar'
Dave Love <fx@gnu.org>
parents:
diff
changeset
|
187 ;; We'll pick up the last valid entry in the list of keys if |
e8458588eb55
Renamed from toolbar.el. Change `toolbar'
Dave Love <fx@gnu.org>
parents:
diff
changeset
|
188 ;; there's more than one. |
e8458588eb55
Renamed from toolbar.el. Change `toolbar'
Dave Love <fx@gnu.org>
parents:
diff
changeset
|
189 (dolist (k keys) |
e8458588eb55
Renamed from toolbar.el. Change `toolbar'
Dave Love <fx@gnu.org>
parents:
diff
changeset
|
190 ;; We're looking for a binding of the command in a submap of |
e8458588eb55
Renamed from toolbar.el. Change `toolbar'
Dave Love <fx@gnu.org>
parents:
diff
changeset
|
191 ;; the menu bar map, so the key sequence must be two or more |
e8458588eb55
Renamed from toolbar.el. Change `toolbar'
Dave Love <fx@gnu.org>
parents:
diff
changeset
|
192 ;; long. |
e8458588eb55
Renamed from toolbar.el. Change `toolbar'
Dave Love <fx@gnu.org>
parents:
diff
changeset
|
193 (if (and (vectorp k) |
e8458588eb55
Renamed from toolbar.el. Change `toolbar'
Dave Love <fx@gnu.org>
parents:
diff
changeset
|
194 (> (length k) 1)) |
e8458588eb55
Renamed from toolbar.el. Change `toolbar'
Dave Love <fx@gnu.org>
parents:
diff
changeset
|
195 (let ((m (lookup-key menu-bar-map (substring k 0 -1))) |
e8458588eb55
Renamed from toolbar.el. Change `toolbar'
Dave Love <fx@gnu.org>
parents:
diff
changeset
|
196 ;; Last element in the bound key sequence: |
e8458588eb55
Renamed from toolbar.el. Change `toolbar'
Dave Love <fx@gnu.org>
parents:
diff
changeset
|
197 (kk (aref k (1- (length k))))) |
e8458588eb55
Renamed from toolbar.el. Change `toolbar'
Dave Love <fx@gnu.org>
parents:
diff
changeset
|
198 (if (and (keymapp m) |
e8458588eb55
Renamed from toolbar.el. Change `toolbar'
Dave Love <fx@gnu.org>
parents:
diff
changeset
|
199 (symbolp kk)) |
e8458588eb55
Renamed from toolbar.el. Change `toolbar'
Dave Love <fx@gnu.org>
parents:
diff
changeset
|
200 (setq submap m |
e8458588eb55
Renamed from toolbar.el. Change `toolbar'
Dave Love <fx@gnu.org>
parents:
diff
changeset
|
201 key kk))))) |
e8458588eb55
Renamed from toolbar.el. Change `toolbar'
Dave Love <fx@gnu.org>
parents:
diff
changeset
|
202 (when (and (symbolp submap) (boundp submap)) |
e8458588eb55
Renamed from toolbar.el. Change `toolbar'
Dave Love <fx@gnu.org>
parents:
diff
changeset
|
203 (setq submap (eval submap))) |
31751
3c4b8a33fed9
Reapply Gerd's change from 2000-09-18, which seems to have gotten lost:
Miles Bader <miles@gnu.org>
parents:
31738
diff
changeset
|
204 (unless (image-mask-p image) |
3c4b8a33fed9
Reapply Gerd's change from 2000-09-18, which seems to have gotten lost:
Miles Bader <miles@gnu.org>
parents:
31738
diff
changeset
|
205 (setq image (append image '(:mask heuristic)))) |
38698
0d7cddbc0fa7
(tool-bar-add-item-from-menu): Handle
Gerd Moellmann <gerd@gnu.org>
parents:
38470
diff
changeset
|
206 (let ((defn (assq key (cdr submap)))) |
0d7cddbc0fa7
(tool-bar-add-item-from-menu): Handle
Gerd Moellmann <gerd@gnu.org>
parents:
38470
diff
changeset
|
207 (if (eq (cadr defn) 'menu-item) |
44307
62bd2c6cd91f
(tool-bar-local-item): Renamed from tool-bar-add-item, and new arg MAP.
Richard M. Stallman <rms@gnu.org>
parents:
44153
diff
changeset
|
208 (define-key-after in-map (vector key) |
38698
0d7cddbc0fa7
(tool-bar-add-item-from-menu): Handle
Gerd Moellmann <gerd@gnu.org>
parents:
38470
diff
changeset
|
209 (append (cdr defn) (list :image image) props)) |
0d7cddbc0fa7
(tool-bar-add-item-from-menu): Handle
Gerd Moellmann <gerd@gnu.org>
parents:
38470
diff
changeset
|
210 (setq defn (cdr defn)) |
44307
62bd2c6cd91f
(tool-bar-local-item): Renamed from tool-bar-add-item, and new arg MAP.
Richard M. Stallman <rms@gnu.org>
parents:
44153
diff
changeset
|
211 (define-key-after in-map (vector key) |
45133
1fa9ceaa1c5f
(tool-bar-local-item-from-menu): Handle both cases: when the menu item
Richard M. Stallman <rms@gnu.org>
parents:
44670
diff
changeset
|
212 (let ((rest (cdr defn))) |
1fa9ceaa1c5f
(tool-bar-local-item-from-menu): Handle both cases: when the menu item
Richard M. Stallman <rms@gnu.org>
parents:
44670
diff
changeset
|
213 ;; If the rest of the definition starts |
1fa9ceaa1c5f
(tool-bar-local-item-from-menu): Handle both cases: when the menu item
Richard M. Stallman <rms@gnu.org>
parents:
44670
diff
changeset
|
214 ;; with a list of menu cache info, get rid of that. |
1fa9ceaa1c5f
(tool-bar-local-item-from-menu): Handle both cases: when the menu item
Richard M. Stallman <rms@gnu.org>
parents:
44670
diff
changeset
|
215 (if (and (consp rest) (consp (car rest))) |
1fa9ceaa1c5f
(tool-bar-local-item-from-menu): Handle both cases: when the menu item
Richard M. Stallman <rms@gnu.org>
parents:
44670
diff
changeset
|
216 (setq rest (cdr rest))) |
1fa9ceaa1c5f
(tool-bar-local-item-from-menu): Handle both cases: when the menu item
Richard M. Stallman <rms@gnu.org>
parents:
44670
diff
changeset
|
217 (append `(menu-item ,(car defn) ,rest) |
1fa9ceaa1c5f
(tool-bar-local-item-from-menu): Handle both cases: when the menu item
Richard M. Stallman <rms@gnu.org>
parents:
44670
diff
changeset
|
218 (list :image image) props)))))))) |
31738
e8458588eb55
Renamed from toolbar.el. Change `toolbar'
Dave Love <fx@gnu.org>
parents:
diff
changeset
|
219 |
e8458588eb55
Renamed from toolbar.el. Change `toolbar'
Dave Love <fx@gnu.org>
parents:
diff
changeset
|
220 ;;; Set up some global items. Additions/deletions up for grabs. |
e8458588eb55
Renamed from toolbar.el. Change `toolbar'
Dave Love <fx@gnu.org>
parents:
diff
changeset
|
221 |
32124 | 222 (defun tool-bar-setup () |
38144
ef9d470d0fd1
(tool-bar-setup): Remove the EXIT button.
Eli Zaretskii <eliz@gnu.org>
parents:
36715
diff
changeset
|
223 ;; People say it's bad to have EXIT on the tool bar, since users |
ef9d470d0fd1
(tool-bar-setup): Remove the EXIT button.
Eli Zaretskii <eliz@gnu.org>
parents:
36715
diff
changeset
|
224 ;; might inadvertently click that button. |
ef9d470d0fd1
(tool-bar-setup): Remove the EXIT button.
Eli Zaretskii <eliz@gnu.org>
parents:
36715
diff
changeset
|
225 ;;(tool-bar-add-item-from-menu 'save-buffers-kill-emacs "exit") |
32124 | 226 (tool-bar-add-item-from-menu 'find-file "new") |
227 (tool-bar-add-item-from-menu 'dired "open") | |
228 (tool-bar-add-item-from-menu 'kill-this-buffer "close") | |
229 (tool-bar-add-item-from-menu 'save-buffer "save" nil | |
36715
2b98ff02ebaf
(tool-bar-setup): Don't suppress write-file
Dave Love <fx@gnu.org>
parents:
35764
diff
changeset
|
230 :visible '(or buffer-file-name |
2b98ff02ebaf
(tool-bar-setup): Don't suppress write-file
Dave Love <fx@gnu.org>
parents:
35764
diff
changeset
|
231 (not (eq 'special |
2b98ff02ebaf
(tool-bar-setup): Don't suppress write-file
Dave Love <fx@gnu.org>
parents:
35764
diff
changeset
|
232 (get major-mode |
2b98ff02ebaf
(tool-bar-setup): Don't suppress write-file
Dave Love <fx@gnu.org>
parents:
35764
diff
changeset
|
233 'mode-class))))) |
32124 | 234 (tool-bar-add-item-from-menu 'write-file "saveas" nil |
36715
2b98ff02ebaf
(tool-bar-setup): Don't suppress write-file
Dave Love <fx@gnu.org>
parents:
35764
diff
changeset
|
235 :visible '(or buffer-file-name |
2b98ff02ebaf
(tool-bar-setup): Don't suppress write-file
Dave Love <fx@gnu.org>
parents:
35764
diff
changeset
|
236 (not (eq 'special |
2b98ff02ebaf
(tool-bar-setup): Don't suppress write-file
Dave Love <fx@gnu.org>
parents:
35764
diff
changeset
|
237 (get major-mode |
2b98ff02ebaf
(tool-bar-setup): Don't suppress write-file
Dave Love <fx@gnu.org>
parents:
35764
diff
changeset
|
238 'mode-class))))) |
32124 | 239 (tool-bar-add-item-from-menu 'undo "undo" nil |
240 :visible '(not (eq 'special (get major-mode | |
241 'mode-class)))) | |
242 (tool-bar-add-item-from-menu 'kill-region "cut" nil | |
243 :visible '(not (eq 'special (get major-mode | |
244 'mode-class)))) | |
245 (tool-bar-add-item-from-menu 'menu-bar-kill-ring-save "copy") | |
246 (tool-bar-add-item-from-menu 'yank "paste" nil | |
247 :visible '(not (eq 'special (get major-mode | |
248 'mode-class)))) | |
249 (tool-bar-add-item-from-menu 'nonincremental-search-forward "search") | |
250 ;;(tool-bar-add-item-from-menu 'ispell-buffer "spell") | |
31738
e8458588eb55
Renamed from toolbar.el. Change `toolbar'
Dave Love <fx@gnu.org>
parents:
diff
changeset
|
251 |
32124 | 252 ;; There's no icon appropriate for News and we need a command rather |
253 ;; than a lambda for Read Mail. | |
254 ;;(tool-bar-add-item-from-menu 'compose-mail "mail_compose") | |
31895
6d04db7a9256
(tool-bar-help): New function.
Gerd Moellmann <gerd@gnu.org>
parents:
31751
diff
changeset
|
255 |
32124 | 256 (tool-bar-add-item-from-menu 'print-buffer "print") |
32285 | 257 (tool-bar-add-item "preferences" 'customize 'customize |
32124 | 258 :help "Edit preferences (customize)") |
31895
6d04db7a9256
(tool-bar-help): New function.
Gerd Moellmann <gerd@gnu.org>
parents:
31751
diff
changeset
|
259 |
32285 | 260 (tool-bar-add-item "help" (lambda () |
261 (interactive) | |
262 (popup-menu menu-bar-help-menu)) | |
263 'help | |
264 :help "Pop up the Help menu") | |
32124 | 265 ) |
31738
e8458588eb55
Renamed from toolbar.el. Change `toolbar'
Dave Love <fx@gnu.org>
parents:
diff
changeset
|
266 |
e8458588eb55
Renamed from toolbar.el. Change `toolbar'
Dave Love <fx@gnu.org>
parents:
diff
changeset
|
267 (provide 'tool-bar) |
e8458588eb55
Renamed from toolbar.el. Change `toolbar'
Dave Love <fx@gnu.org>
parents:
diff
changeset
|
268 |
e8458588eb55
Renamed from toolbar.el. Change `toolbar'
Dave Love <fx@gnu.org>
parents:
diff
changeset
|
269 ;;; tool-bar.el ends here |