Subject: 24.3.50; Some tool-bar buttons disappear in GTK3 Emacs

From: Katsumi Yamaoka <[email-masked]>
Date: Fri, 06 Sep 2013 09:02:57 +0900

Hi,

The Info manual describes as follows:

,---- (info "(Elisp)Tool Bar")
|`:image IMAGE'
|     IMAGES is either a single image specification or a vector of four
|     image specifications.  If you use a vector of four, one of them is
|     used, depending on circumstances:
|
|    item 0
|          Used when the item is enabled and selected.
|
|    item 1
|          Used when the item is enabled and deselected.
|
|    item 2
|          Used when the item is disabled and selected.
|
|    item 3
|          Used when the item is disabled and deselected.
|
|   If IMAGE is a single image specification, Emacs draws the tool bar
|button in disabled state by applying an edge-detection algorithm to the
|image.
`----

However, a tool-bar button that has such images is not shown in
GTK3 Emacs.  Moreover, LUCID Emacs (i.e. --with-x-toolkit=lucid)
shows such a button, however only the `item 1' image is used no
matter what circumstance is.

This works:

(let* ((enable t)
       (icon (find-image '((:type xpm :file "cancel.xpm"))))
       (keymap
	`(keymap
	  (tool-bar
	   keymap
	   (ignore menu-item "IGNORE" ignore
		   :enable ,enable :image ,icon)))))
  (pop-to-buffer (get-buffer-create "*testing*"))
  (use-local-map keymap))

This doesn't work as expected:

(let* ((enable t)
       (icon (vector
	      (find-image '((:type xpm :file "right-arrow.xpm")))
	      (find-image '((:type xpm :file "left-arrow.xpm")))
	      (find-image '((:type xpm :file "cancel.xpm")))
	      (find-image '((:type xpm :file "close.xpm")))))
       (keymap
	`(keymap
	  (tool-bar
	   keymap
	   (ignore menu-item "IGNORE" ignore
		   :enable ,enable :image ,icon)))))
  (pop-to-buffer (get-buffer-create "*testing*"))
  (use-local-map keymap))

Thanks.

In GNU Emacs 24.3.50.1 (i686-pc-cygwin, GTK+ Version 3.8.2)
 of 2013-09-06 on localhost
Bzr revision: 114147 [email-masked]
Windowing system distributor `The Cygwin/X Project', version 11.0.11402000
Configured using:
 `configure --verbose --with-x-toolkit=gtk3 --without-imagemagick
 --without-dbus --without-gconf --without-gsettings'

In GNU Emacs 24.3.50.1 (i686-pc-cygwin, X toolkit, Xaw3d scroll bars)
 of 2013-09-06 on localhost
Bzr revision: 114147 [email-masked]
Windowing system distributor `The Cygwin/X Project', version 11.0.11402000
Configured using:
 `configure --verbose --with-x-toolkit=lucid --without-imagemagick
 --without-dbus --without-gconf --without-gsettings'