%PDF- %PDF-
Mini Shell

Mini Shell

Direktori : /usr/local/share/emacs/27.2/lisp/
Upload File :
Create Path :
Current File : //usr/local/share/emacs/27.2/lisp/button.elc

;ELC
;;; Compiled
;;; in Emacs version 27.2
;;; with all optimizations.

;;; This file uses dynamic docstrings, first added in Emacs 19.29.

;;; This file does not contain utf-8 non-ASCII characters,
;;; and so can be loaded in Emacs versions earlier than 23.

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;


(custom-declare-face 'button '((t :inherit link)) "Default face used for buttons." :group 'basic-faces)
#@25 Keymap used by buttons.
(defvar button-map (byte-code "\300 \301\302\303#\210\301\304\303#\210\301\305\303#\210\301\306\303#\210\211\207" [make-sparse-keymap define-key [(control 109)] push-button [mouse-2] [mode-line mouse-2] [header-line mouse-2]] 5) (#$ . 512))
#@114 Keymap useful for buffers containing buttons.
Mode-specific keymaps may want to use this as their parent keymap.
(defvar button-buffer-map (byte-code "\300 \301\302\303#\210\301\304\305#\210\301\306\305#\210\211\207" [make-sparse-keymap define-key [9] forward-button "	" backward-button [backtab]] 5) (#$ . 788))
(byte-code "\301\302\303\304#\210\301\302\305\306#\210\301\302\307#\210\301\302\310\304#\210\301\302\311\312#\210\301\302\313\314\315!#\210\301\302\316\317#\210\301\302\320\317#\210\301\304\321\302#\207" [button-map put default-button face button mouse-face highlight keymap type action ignore help-echo purecopy "mouse-2, RET: Push this button" evaporate t rear-nonsticky button-category-symbol] 5)
#@150 Return the symbol used by button-type TYPE to store properties.
Buttons inherit them by setting their `category' property to that symbol.

(fn TYPE)
(defalias 'button-category-symbol #[257 "\211\300N\206\n\301\302\"\207" [button-category-symbol error "Unknown button type `%s'"] 4 (#$ . 1513)])
(put 'button-category-symbol 'byte-optimizer 'byte-compile-inline-expand)
#@593 Define a `button type' called NAME (a symbol).
The remaining arguments form a plist of PROPERTY VALUE pairs,
specifying properties to use as defaults for buttons with this type
(a button's type may be set by giving it a `type' property when
creating the button, using the :type keyword argument).

In addition, the keyword argument :supertype may be used to specify a
button-type from which NAME inherits its default property values
(however, the inheritance happens only when NAME is defined; subsequent
changes to a supertype are not reflected in its subtypes).

(fn NAME &rest PROPERTIES)
(defalias 'define-button-type #[385 "\300\301!\302P!\303\304\"\206\303\305\"\206\306\211\307N\206 \310\311\"\262\312\307#\210\313!\211\203B\312\211A\262\242\211A\262\242#\210\202+\210\312\314#\210\203m\211A\262\242\211\305=\203]\304\262\312\211A\262\242#\266\202J\304N\204y\312\304\306#\210\207" [make-symbol symbol-name "-button" plist-get supertype :supertype button button-category-symbol error "Unknown button type `%s'" put symbol-plist type] 10 (#$ . 1891)])
#@70 Set the button-type TYPE's PROP property to VAL.

(fn TYPE PROP VAL)
(defalias 'button-type-put #[771 "\300\211\301N\206\f\302\303\"\262#\207" [put button-category-symbol error "Unknown button type `%s'"] 8 (#$ . 2994)])
#@66 Get the property of button-type TYPE named PROP.

(fn TYPE PROP)
(defalias 'button-type-get #[514 "\211\300N\206\301\302\"\262N\207" [button-category-symbol error "Unknown button type `%s'"] 6 (#$ . 3227)])
#@84 Return non-nil if button-type TYPE is a subtype of SUPERTYPE.

(fn TYPE SUPERTYPE)
(defalias 'button-type-subtype-p #[514 "=\206\205\300\301\302\"\"\207" [button-type-subtype-p button-type-get supertype] 6 (#$ . 3446)])
#@122 Return the position at which BUTTON starts.

This function only works when BUTTON is in the current buffer.

(fn BUTTON)
(defalias 'button-start #[257 "\300!\203\n\301!\207\302T\303\"\206e\207" [overlayp overlay-start previous-single-property-change button] 4 (#$ . 3682)])
#@120 Return the position at which BUTTON ends.

This function only works when BUTTON is in the current buffer.

(fn BUTTON)
(defalias 'button-end #[257 "\300!\203\n\301!\207\302\303\"\206d\207" [overlayp overlay-end next-single-property-change button] 4 (#$ . 3969)])
#@129 Get the property of button BUTTON named PROP.

This function only works when BUTTON is in the current buffer.

(fn BUTTON PROP)
(defalias 'button-get #[514 "\300!\203\301\"\207\302!\203\303A\304!#\207\305!\203(\303\306!#\207\303\"\207" [overlayp overlay-get button--area-button-p get-text-property button--area-button-string markerp marker-buffer] 7 (#$ . 4245)])
#@122 Set BUTTON's PROP property to VAL.

This function only works when BUTTON is in the current buffer.

(fn BUTTON PROP VAL)
(defalias 'button-put #[771 "\300\267\202\301\262\211\211\302N\206\303\304\"\262\262\202\303\305!\210\306!\203+\307#\207\310!\203@\311!\262\312\313G%\207\312\314T\315\"\206Je\316\315\"\206Rd$\207" [#s(hash-table size 3 test eq rehash-size 1.5 rehash-threshold 0.8125 purecopy t data (type 6 :type 6 category 27)) category button-category-symbol error "Unknown button type `%s'" "Button `category' property may not be set directly" overlayp overlay-put button--area-button-p button--area-button-string put-text-property 0 previous-single-property-change button next-single-property-change] 9 (#$ . 4634)])
#@671 Call BUTTON's `action' property.
If USE-MOUSE-ACTION is non-nil, invoke the button's `mouse-action'
property instead of `action'; if the button has no `mouse-action',
the value of `action' is used instead.

The action can either be a marker or a function.  If it's a
marker then goto it.  Otherwise if it is a function then it is
called with BUTTON as only argument.  BUTTON is either an
overlay, a buffer position, or (for buttons in the mode-line or
header-line) a string.

If BUTTON has a `button-data' value, call the function with this
value instead of BUTTON.

This function only works when BUTTON is in the current buffer.

(fn BUTTON &optional USE-MOUSE-ACTION)
(defalias 'button-activate #[513 "\211\203\300\301\"\206\300\302\"\300\303\"\304!\203<\305 r\306\307\310\311\312!\313\"\314$\216\315\316\317!!!\210b\210\320\307!*\262\202C\206B!\207" [button-get mouse-action action button-data markerp internal--before-save-selected-window make-byte-code 0 "\301\300!\207" vconcat vector [internal--after-save-selected-window] 2 select-window display-buffer marker-buffer recenter] 11 (#$ . 5398)])
#@106 Return BUTTON's text label.

This function only works when BUTTON is in the current buffer.

(fn BUTTON)
(defalias 'button-label #[257 "\300!\203\f\301\302!!\207\303\304!\305!\"\207" [button--area-button-p substring-no-properties button--area-button-string buffer-substring-no-properties button-start button-end] 5 (#$ . 6525)])
#@43 Return BUTTON's button-type.

(fn BUTTON)
(defalias 'button-type #[257 "\300\301\"\207" [button-get type] 4 (#$ . 6865)])
(put 'button-type 'byte-optimizer 'byte-compile-inline-expand)
#@90 Return non-nil if BUTTON has button-type TYPE, or one of its subtypes.

(fn BUTTON TYPE)
(defalias 'button-has-type-p #[514 "\300\301\302\"\"\207" [button-type-subtype-p button-get type] 6 (#$ . 7057)])
#@126 Return non-nil if BUTTON is an area button.
Such area buttons are used for buttons in the mode-line and header-line.

(fn B)
(defalias 'button--area-button-p #[257 "\211\242;\207" [] 2 (#$ . 7269)])
(defalias 'button--area-button-string 'car "Return area button BUTTON's button-string.")
#@381 Make a button from BEG to END in the current buffer.
The remaining arguments form a plist of PROPERTY VALUE pairs,
specifying properties to add to the button.
In addition, the keyword argument :type may be used to specify a
button-type from which to inherit other properties; see
`define-button-type'.

Also see `make-text-button', `insert-button'.

(fn BEG END &rest PROPERTIES)
(defalias 'make-button #[642 "\300\301\302\301%\203\303\211A\262\242\211A\262\242#\210\202\304\305#\210\306\307\"\2041\304\307\310#\210\211\207" [make-overlay nil t button-put overlay-put button overlay-get category default-button] 9 (#$ . 7564)])
#@364 Insert a button with the label LABEL.
The remaining arguments form a plist of PROPERTY VALUE pairs,
specifying properties to add to the button.
In addition, the keyword argument :type may be used to specify a
button-type from which to inherit other properties; see
`define-button-type'.

Also see `insert-text-button', `make-button'.

(fn LABEL &rest PROPERTIES)
(defalias 'insert-button #[385 "\300\301`c\210`$\207" [apply make-button] 7 (#$ . 8216)])
#@1072 Make a button from BEG to END in the current buffer.
The remaining arguments form a plist of PROPERTY VALUE pairs,
specifying properties to add to the button.
In addition, the keyword argument :type may be used to specify a
button-type from which to inherit other properties; see
`define-button-type'.

This function is like `make-button', except that the button is actually
part of the text instead of being a property of the buffer.  That is,
this function uses text properties, the other uses overlays.
Creating large numbers of buttons can also be somewhat faster
using `make-text-button'.  Note, however, that if there is an existing
face property at the site of the button, the button face may not be visible.
You may want to use `make-button' in that case.

If the property `button-data' is present, it will later be used
as the argument for the `action' callback function instead of the
default argument, which is the button itself.

BEG can also be a string, in which case it is made into a button.

Also see `insert-text-button'.

(fn BEG END &rest PROPERTIES)
(defalias 'make-text-button #[642 "\300\301\302\"\206\f\301\303\";\203\262\304\262G\262\305\306\"\203&\307\310!\210\211\2044\306\311BB\262\202K\211\306\240\210\211AA@\211\312N\206G\307\313\"\262\240\210\314\315\316CBB$\210\206]\207" [nil plist-member type :type 0 plist-get category error "Button `category' property may not be set directly" default-button button-category-symbol "Unknown button type `%s'" add-text-properties button t] 11 (#$ . 8679)])
#@572 Insert a button with the label LABEL.
The remaining arguments form a plist of PROPERTY VALUE pairs,
specifying properties to add to the button.
In addition, the keyword argument :type may be used to specify a
button-type from which to inherit other properties; see
`define-button-type'.

This function is like `insert-button', except that the button is
actually part of the text instead of being a property of the buffer.
Creating large numbers of buttons can also be somewhat faster using
`insert-text-button'.

Also see `make-text-button'.

(fn LABEL &rest PROPERTIES)
(defalias 'insert-text-button #[385 "\300\301`c\210`$\207" [apply make-text-button] 7 (#$ . 10240)])
#@170 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.

(fn POS)
(defalias 'button-at #[257 "\300\301\"\211\205\300\302\"\205\303!\203\211\202\304\305\"\207" [get-char-property button category overlayp copy-marker t] 5 (#$ . 10921)])
#@208 Return the next button after position POS in the current buffer.
If COUNT-CURRENT is non-nil, count any button at POS in the search,
instead of starting at the next button.

(fn POS &optional COUNT-CURRENT)
(defalias 'next-button #[513 "\211\204\n\300\301\"\262dW\205\302!\206\303!\207" [next-single-char-property-change button button-at next-button] 5 (#$ . 11278)])
#@213 Return the previous button before position POS in the current buffer.
If COUNT-CURRENT is non-nil, count any button at POS in the search,
instead of starting at the next button.

(fn POS &optional COUNT-CURRENT)
(defalias 'previous-button #[513 "\300!\211\2033\203\211\202I\301\302!\303\"\262\300!\211\203+\302!U?\205.\211\202.\304!\262\202I\301\303\"\262\300!\206IeV\205I\300S!\207" [button-at previous-single-char-property-change button-start button previous-button] 7 (#$ . 11663)])
#@694 Perform the action specified by a button at location POS.
POS may be either a buffer position or a mouse-event.  If
USE-MOUSE-ACTION is non-nil, invoke the button's `mouse-action'
property instead of its `action' property; if the button has no
`mouse-action', the value of `action' is used instead.

The action in both cases may be either a function to call or a
marker to display and is invoked using `button-activate' (which
see).

POS defaults to point, except when `push-button' is invoked
interactively as the result of a mouse-event, in which case, the
mouse event is used.
If there's no button at POS, do nothing and return nil, otherwise
return t.

(fn &optional POS USE-MOUSE-ACTION)
(defalias 'push-button #[512 "\250\204/\300!\203/\301!r\302\211@\262!q\210\303!\203'\304\303!\305\"\202-\306\307!\305\")\207\310\2065`!\211\205@\304\"\210\305\207" [eventp event-start window-buffer posn-string button-activate t push-button posn-point button-at] 6 (#$ . 12180) (byte-code "\250\203	`\202\nC\207" [last-command-event] 1)])
#@75 Evaluate BUTTON's `help-echo' property and return its value.

(fn BUTTON)
(defalias 'button--help-echo #[257 "\301\302\"\303!\203#\304!\203\202p\305 \306!#\262\202'\307\"\207" [lexical-binding button-get help-echo functionp overlayp selected-window button-start eval] 8 (#$ . 13238)])
#@512 Move to the Nth next button, or Nth previous button if N is negative.
If N is 0, move to the start of any button at point.
If WRAP is non-nil, moving past either end of the buffer continues from the
other end.
If DISPLAY-MESSAGE is non-nil, the button's `help-echo' property
is displayed.  Any button with a non-nil `skip' property is
skipped over.

If NO-ERROR, return nil if no further buttons could be found
instead of erroring out.

Returns the button found.

(fn N &optional WRAP DISPLAY-MESSAGE NO-ERROR)
(defalias 'forward-button #[1025 "\300\301U\203\302`!\211\262\203\211\303!b\210\202\211\301V\203\"\304\202#\305\301V\203-e\202.d\300\211\306	!\262	\307\262\211\204\207\301V\203\207\203\207`!\262\204\\\203\\\307\"\262\2039\303!b\210\204o`\262\202x`U\203x\307\262\310\311\"\2049S\262	\2029\266\211\204\240?\205\262\312\203\233\313\202\234\314!\202\262\205\247\315!\211\203\260\316\317\"\210\210\211\207" [nil 0 button-at button-start next-button previous-button abs t button-get skip user-error "No buttons!" "No more buttons" button--help-echo message "%s"] 12 (#$ . 13547) "p\nd\nd"])
#@512 Move to the Nth previous button, or Nth next button if N is negative.
If N is 0, move to the start of any button at point.
If WRAP is non-nil, moving past either end of the buffer continues from the
other end.
If DISPLAY-MESSAGE is non-nil, the button's `help-echo' property
is displayed.  Any button with a non-nil `skip' property is
skipped over.

If NO-ERROR, return nil if no further buttons could be found
instead of erroring out.

Returns the button found.

(fn N &optional WRAP DISPLAY-MESSAGE NO-ERROR)
(defalias 'backward-button #[1025 "\300[$\207" [forward-button] 9 (#$ . 14709) "p\nd\nd"])
(provide 'button)

Zerion Mini Shell 1.0