[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
bug#15281: 24.3.50; Some tool-bar buttons disappear in GTK3 Emacs
From: |
Jan Djärv |
Subject: |
bug#15281: 24.3.50; Some tool-bar buttons disappear in GTK3 Emacs |
Date: |
Fri, 6 Sep 2013 07:03:03 +0200 |
Hello.
Gtk+ does its own enable/disable/selected modifications of images, and Emacs
can't/shouldn't override that. So for Gtk+ item 1 to 3 are ignored.
Documentation should be updated though.
Jan D.
6 sep 2013 kl. 02:02 skrev Katsumi Yamaoka <yamaoka@jpl.org>:
> 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 dmantipov@yandex.ru-20130905162520-14j783enzhc0fz0i
> 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 dmantipov@yandex.ru-20130905162520-14j783enzhc0fz0i
> 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'
>
>