Function: button--describe
button--describe is a byte-compiled function defined in button.el.gz.
Signature
(button--describe PROPERTIES)
Documentation
Describe a button's PROPERTIES (an alist) in a *Help* buffer.
This is a helper function for button-describe, in order to be possible to
use help-setup-xref.
Each element of PROPERTIES should be of the form (PROPERTY . VALUE).
Source Code
;; Defined in /usr/src/emacs/lisp/button.el.gz
(defun button--describe (properties)
"Describe a button's PROPERTIES (an alist) in a *Help* buffer.
This is a helper function for `button-describe', in order to be possible to
use `help-setup-xref'.
Each element of PROPERTIES should be of the form (PROPERTY . VALUE)."
(help-setup-xref (list #'button--describe properties)
(called-interactively-p 'interactive))
(with-help-window (help-buffer)
(with-current-buffer (help-buffer)
(insert (format-message "This button's type is `%s'."
(alist-get 'type properties)))
(dolist (prop '(action mouse-action))
(let ((name (symbol-name prop))
(val (alist-get prop properties)))
(when (functionp val)
(insert "\n\n"
(propertize (capitalize name) 'face 'bold)
"\nThe " name " of this button is")
(if (symbolp val)
(progn
(insert (format-message " `%s',\nwhich is " val))
(describe-function-1 val))
(insert "\n")
(princ val))))))))