aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDave Love2000-10-04 09:36:30 +0000
committerDave Love2000-10-04 09:36:30 +0000
commitebd4825d4a925bd53a99c6e81d6b3f4ccce97e85 (patch)
tree7e88b43db0b133840b13390f1734aec58658b06d
parentddb62bf14ac8d0646c3ba609150e952d85b38ec4 (diff)
downloademacs-ebd4825d4a925bd53a99c6e81d6b3f4ccce97e85.tar.gz
emacs-ebd4825d4a925bd53a99c6e81d6b3f4ccce97e85.zip
(tool-bar-setup): New function.
(tool-bar-mode): Use it.
-rw-r--r--lisp/ChangeLog5
-rw-r--r--lisp/toolbar/tool-bar.el89
2 files changed, 46 insertions, 48 deletions
diff --git a/lisp/ChangeLog b/lisp/ChangeLog
index b80da54e16e..349ef1aec2f 100644
--- a/lisp/ChangeLog
+++ b/lisp/ChangeLog
@@ -1,3 +1,8 @@
12000-10-04 Dave Love <fx@gnu.org>
2
3 * toolbar/tool-bar.el (tool-bar-setup): New function.
4 (tool-bar-mode): Use it.
5
12000-10-04 Peter Breton <pbreton@ne.mediaone.net> 62000-10-04 Peter Breton <pbreton@ne.mediaone.net>
2 7
3 * net/net-utils.el (nslookup-font-lock-keywords, 8 * net/net-utils.el (nslookup-font-lock-keywords,
diff --git a/lisp/toolbar/tool-bar.el b/lisp/toolbar/tool-bar.el
index 004a0a372c8..13ed0ed9c90 100644
--- a/lisp/toolbar/tool-bar.el
+++ b/lisp/toolbar/tool-bar.el
@@ -51,7 +51,9 @@ conveniently adding tool bar items."
51 (let ((elt (assq 'tool-bar-lines default-frame-alist))) 51 (let ((elt (assq 'tool-bar-lines default-frame-alist)))
52 (if elt 52 (if elt
53 (setcdr elt lines) 53 (setcdr elt lines)
54 (add-to-list 'default-frame-alist (cons 'tool-bar-lines lines)))))) 54 (add-to-list 'default-frame-alist (cons 'tool-bar-lines lines)))))
55 (if (and tool-bar-mode (display-graphic-p))
56 (tool-bar-setup)))
55 57
56(defvar tool-bar-global-map (let ((map (make-sparse-keymap))) 58(defvar tool-bar-global-map (let ((map (make-sparse-keymap)))
57 (global-set-key [tool-bar] map)) 59 (global-set-key [tool-bar] map))
@@ -121,53 +123,44 @@ PROPS is a list of additional properties to add to the binding."
121 123
122;;; Set up some global items. Additions/deletions up for grabs. 124;;; Set up some global items. Additions/deletions up for grabs.
123 125
124(tool-bar-add-item-from-menu 'save-buffers-kill-emacs "exit") 126(defun tool-bar-setup ()
125(tool-bar-add-item-from-menu 'find-file "new") 127 (tool-bar-add-item-from-menu 'save-buffers-kill-emacs "exit")
126(tool-bar-add-item-from-menu 'dired "open") 128 (tool-bar-add-item-from-menu 'find-file "new")
127(tool-bar-add-item-from-menu 'kill-this-buffer "close") 129 (tool-bar-add-item-from-menu 'dired "open")
128(tool-bar-add-item-from-menu 'save-buffer "save" nil 130 (tool-bar-add-item-from-menu 'kill-this-buffer "close")
129 :visible '(not (eq 'special (get major-mode 131 (tool-bar-add-item-from-menu 'save-buffer "save" nil
130 'mode-class)))) 132 :visible '(not (eq 'special (get major-mode
131(tool-bar-add-item-from-menu 'write-file "saveas" nil 133 'mode-class))))
132 :visible '(not (eq 'special (get major-mode 134 (tool-bar-add-item-from-menu 'write-file "saveas" nil
133 'mode-class)))) 135 :visible '(not (eq 'special (get major-mode
134(tool-bar-add-item-from-menu 'undo "undo" nil 136 'mode-class))))
135 :visible '(not (eq 'special (get major-mode 137 (tool-bar-add-item-from-menu 'undo "undo" nil
136 'mode-class)))) 138 :visible '(not (eq 'special (get major-mode
137(tool-bar-add-item-from-menu 'kill-region "cut" nil 139 'mode-class))))
138 :visible '(not (eq 'special (get major-mode 140 (tool-bar-add-item-from-menu 'kill-region "cut" nil
139 'mode-class)))) 141 :visible '(not (eq 'special (get major-mode
140(tool-bar-add-item-from-menu 'menu-bar-kill-ring-save "copy") 142 'mode-class))))
141(tool-bar-add-item-from-menu 'yank "paste" nil 143 (tool-bar-add-item-from-menu 'menu-bar-kill-ring-save "copy")
142 :visible '(not (eq 'special (get major-mode 144 (tool-bar-add-item-from-menu 'yank "paste" nil
143 'mode-class)))) 145 :visible '(not (eq 'special (get major-mode
144(tool-bar-add-item-from-menu 'nonincremental-search-forward "search") 146 'mode-class))))
145;;(tool-bar-add-item-from-menu 'ispell-buffer "spell") 147 (tool-bar-add-item-from-menu 'nonincremental-search-forward "search")
146 148 ;;(tool-bar-add-item-from-menu 'ispell-buffer "spell")
147;; There's no icon appropriate for News and we need a command rather 149
148;; than a lambda for Read Mail. 150 ;; There's no icon appropriate for News and we need a command rather
149;;(tool-bar-add-item-from-menu 'compose-mail "mail_compose") 151 ;; than a lambda for Read Mail.
150 152 ;;(tool-bar-add-item-from-menu 'compose-mail "mail_compose")
151(tool-bar-add-item-from-menu 'print-buffer "print") 153
152(tool-bar-add-item "preferences" 'customize 'customize nil 154 (tool-bar-add-item-from-menu 'print-buffer "print")
153 :help "Edit preferences (customize)") 155 (tool-bar-add-item "preferences" 'customize 'customize nil
154 156 :help "Edit preferences (customize)")
155(defun tool-bar-help () 157
156 "Pop up the help menu from the tool-bar." 158 (tool-bar-add-item "help"
157 (interactive) 159 (lambda ()
158 (let* ((p (mouse-pixel-position)) 160 (interactive)
159 (menu menu-bar-help-menu) 161 (popup-menu menu-bar-help-menu))
160 (selection (x-popup-menu (list (list (cadr p) (cddr p)) (car p)) 162 'help nil :help "Pop up the Help menu")
161 menu)) 163 )
162 binding)
163 (while selection
164 (setq binding (lookup-key (or binding menu) (vector (car selection)))
165 selection (cdr selection)))
166 (when binding
167 (call-interactively binding))))
168
169(tool-bar-add-item "help" 'tool-bar-help
170 'help nil :help "Pop up the Help menu")
171 164
172(provide 'tool-bar) 165(provide 'tool-bar)
173 166