39.19.4 Manipulating Buttons
These are functions for getting and setting properties of buttons. Often these are used by a button’s invocation function to determine what to do.
Where a button
parameter is specified, it means an object referring to a specific button, either an overlay (for overlay buttons), or a buffer-position or marker (for text property buttons). Such an object is passed as the first argument to a button’s invocation function when it is invoked.
function
button-start button
Return the position at which button
starts.
function
button-end button
Return the position at which button
ends.
function
button-get button prop
Get the property of button button
named prop
.
function
button-put button prop val
Set button
’s prop
property to val
.
function
button-activate button \&optional use-mouse-action
Call button
’s action
property (i.e., invoke the function that is the value of that property, passing it the single argument button
). If use-mouse-action
is non-nil
, try to invoke the button’s mouse-action
property instead of action
; if the button has no mouse-action
property, use action
as normal. If the button-data
property is present in button
, use that as the argument for the action
function instead of button
.
function
button-label button
Return button
’s text label.
function
button-type button
Return button
’s button-type.
function
button-has-type-p button type
Return t
if button
has button-type type
, or one of type
’s subtypes.
function
button-at pos
Return the button at position pos
in the current buffer, or nil
. If the button at pos
is a text property button, the return value is a marker pointing to pos
.
function
button-type-put type prop val
Set the button-type type
’s prop
property to val
.
function
button-type-get type prop
Get the property of button-type type
named prop
.
function
button-type-subtype-p type supertype
Return t
if button-type type
is a subtype of supertype
.