1
Fork 0
mirror of git://git.sv.gnu.org/emacs.git synced 2025-12-15 10:30:25 -08:00

Merge from emacs--rel--22

Revision: emacs@sv.gnu.org/emacs--devo--0--patch-875
This commit is contained in:
Miles Bader 2007-10-09 08:52:57 +00:00
commit 1af74d06e5
91 changed files with 2395 additions and 781 deletions

View file

@ -2679,5 +2679,62 @@ If you don't want stock icons, set the variable to nil."
(provide 'x-win)
(defcustom x-gtk-stock-map
'(
("etc/images/new" . "gtk-new")
("etc/images/open" . "gtk-open")
("etc/images/diropen" . "n:system-file-manager")
("etc/images/close" . "gtk-close")
("etc/images/save" . "gtk-save")
("etc/images/saveas" . "gtk-save-as")
("etc/images/undo" . "gtk-undo")
("etc/images/cut" . "gtk-cut")
("etc/images/copy" . "gtk-copy")
("etc/images/paste" . "gtk-paste")
("etc/images/search" . "gtk-find")
("etc/images/print" . "gtk-print")
("etc/images/preferences" . "gtk-preferences")
("etc/images/help" . "gtk-help")
("etc/images/left-arrow" . "gtk-go-back")
("etc/images/right-arrow" . "gtk-go-forward")
("etc/images/home" . "gtk-home")
("etc/images/jump-to" . "gtk-jump-to")
("etc/images/index" . "gtk-index")
("etc/images/search" . "gtk-find")
("etc/images/exit" . "gtk-quit"))
"How icons for tool bars are mapped to Gtk+ stock items.
Emacs must be compiled with the Gtk+ toolkit for this to have any effect.
A value that begins with n: denotes a named icon instead of a stock icon."
:version "22.2"
:type 'alist
:group 'x)
(defvar icon-map-list nil
"*A list of alists that maps icon file names to stock/named icons.
The alists are searched in the order they appear. The first match is used.
The keys in the alists are file names without extension and with two directory
components. For example, to map /usr/share/emacs/22.1.1/etc/images/open.xpm
to stock item gtk-open, use:
(\"etc/images/open\" . \"gtk-open\")
Themes also have named icons. To map to one of those, use n: before the name:
(\"etc/images/diropen\" . \"n:system-file-manager\")
The list elements are either the symbol name for the alist or the alist itself.")
(defun x-gtk-map-stock (file)
"Map icon with file name FILE to a Gtk+ stock name, using `x-gtk-stock-map'."
(let* ((file-sans (file-name-sans-extension file))
(key (and (string-match "/\\([^/]+/[^/]+/[^/]+$\\)" file-sans)
(match-string 1 file-sans)))
(value))
(mapc (lambda (elem)
(let ((assoc (if (symbolp elem) (symbol-value elem) elem)))
(or value (setq value (assoc-string (or key file-sans) assoc)))))
icon-map-list)
(and value (cdr value))))
;; arch-tag: f1501302-db8b-4d95-88e3-116697d89f78
;;; x-win.el ends here