?
Current Path : /usr/share/emacs/24.3/lisp/ |
Linux gator3171.hostgator.com 4.19.286-203.ELK.el7.x86_64 #1 SMP Wed Jun 14 04:33:55 CDT 2023 x86_64 |
Current File : //usr/share/emacs/24.3/lisp/button.elc |
;ELC ;;; Compiled by mockbuild@buildfarm06-new.corp.cloudlinux.com on Fri Oct 11 10:12:50 2024 ;;; from file /builddir/build/BUILD/emacs-24.3/lisp/button.el ;;; in Emacs version 24.3 ;;; 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 "\301 \302\303\304#\210\302\305\304#\210)\207" [map make-sparse-keymap define-key [(control 109)] push-button [mouse-2]] 4) (#$ . 651)) #@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 "\301 \302\303\304#\210\302\305\306#\210\302\307\306#\210)\207" [map make-sparse-keymap define-key [9] forward-button " " backward-button [backtab]] 4) (#$ . 852)) (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) #@139 Return the symbol used by button-type TYPE to store properties. Buttons inherit them by setting their `category' property to that symbol. (defalias 'button-category-symbol #[(type) "\301N\206\n \302\303\"\207" [type button-category-symbol error "Unknown button type `%s'"] 3 (#$ . 1580)]) (put 'button-category-symbol 'byte-optimizer 'byte-compile-inline-expand) #@568 Define a `button type' called NAME (a symbol). The remaining arguments form a sequence 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). (defalias 'define-button-type #[(name &rest properties) "\306\307!\310P!\311 \312\"\206 \311 \313\"\206 \314\211\315N\206! \316\317\n\")\320\315\f#\210\321! \203C \320\f \211A@ \211A@#\210\202. )\320\f\302#\210 \203m \211A@\211\313=\203^ \312\320\f \211A@#\210)\202J \f\312N\204y \320\f\312\314#\210*\207" [name properties type super-catsym catsym default-props make-symbol symbol-name "-button" plist-get supertype :supertype button button-category-symbol error "Unknown button type `%s'" put symbol-plist prop] 6 (#$ . 1952)]) #@50 Set the button-type TYPE's PROP property to VAL. (defalias 'button-type-put #[(type prop val) "\303\211\304N\206 \305\306\") \n#\207" [type prop val put button-category-symbol error "Unknown button type `%s'"] 5 (#$ . 3076)]) #@50 Get the property of button-type TYPE named PROP. (defalias 'button-type-get #[(type prop) "\211\302N\206\f \303\304\") N\207" [type prop button-category-symbol error "Unknown button type `%s'"] 4 (#$ . 3312)]) #@57 Return t if button-type TYPE is a subtype of SUPERTYPE. (defalias 'button-type-subtype-p #[(type supertype) " =\206 \205 \302\303\301\" \"\207" [type supertype button-type-subtype-p button-type-get] 4 (#$ . 3531)]) #@45 Return the position at which BUTTON starts. (defalias 'button-start #[(button) "\301!\203\n \302!\207\303T\300\"\206 e\207" [button overlayp overlay-start previous-single-property-change] 3 (#$ . 3757)]) #@43 Return the position at which BUTTON ends. (defalias 'button-end #[(button) "\301!\203\n \302!\207\303\300\"\206 d\207" [button overlayp overlay-end next-single-property-change] 3 (#$ . 3971)]) #@47 Get the property of button BUTTON named PROP. (defalias 'button-get #[(button prop) "\302!\203 \303 \"\207\304 \"\207" [button prop overlayp overlay-get get-text-property] 3 (#$ . 4174)]) #@36 Set BUTTON's PROP property to VAL. (defalias 'button-put #[(button prop val) "\304>\203 \305 \211\306N\206 \307\310\n\")\202# \305=\203# \307\311!\210\312!\203/ \313 #\207\314\315T\303\"\2069 e\316\303\"\206A d $\207" [prop val type button (type :type) category button-category-symbol error "Unknown button type `%s'" "Button `category' property may not be set directly" overlayp overlay-put put-text-property previous-single-property-change next-single-property-change] 6 (#$ . 4372)]) #@197 Call BUTTON's action property. If USE-MOUSE-ACTION is non-nil, invoke the button's mouse-action instead of its normal action; if the button has no mouse-action, the normal action is used instead. (defalias 'button-activate #[(button &optional use-mouse-action) "\203 \304 \305\"\206 \304 \302\"\306\n!\203. \307 r\310\216\311\312\313\n!!!\210\nb\210\314\315!+\2021 \n !)\207" [use-mouse-action button action save-selected-window--state button-get mouse-action markerp internal--before-save-selected-window ((internal--after-save-selected-window save-selected-window--state)) select-window display-buffer marker-buffer recenter 0] 4 (#$ . 4879)]) (put 'button-activate 'byte-optimizer 'byte-compile-inline-expand) #@29 Return BUTTON's text label. (defalias 'button-label #[(button) "\301\302!\303!\"\207" [button buffer-substring-no-properties button-start button-end] 4 (#$ . 5603)]) #@30 Return BUTTON's button-type. (defalias 'button-type #[(button) "\301\302\"\207" [button button-get type] 3 (#$ . 5777)]) (put 'button-type 'byte-optimizer 'byte-compile-inline-expand) #@69 Return t if BUTTON has button-type TYPE, or one of TYPE's subtypes. (defalias 'button-has-type-p #[(button type) "\302\303\301\" \"\207" [button type button-type-subtype-p button-get] 4 (#$ . 5968)]) #@353 Make a button from BEG to END in the current buffer. The remaining arguments form a sequence 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'. (defalias 'make-button #[(beg end &rest properties) "\304 \305\306\305%\203 \307\n\211A@\211A@#\210\202 \310\n\311\n#\210\312\n\313\"\2040 \310\n\313\314#\210\n)\207" [beg end overlay properties make-overlay nil t button-put overlay-put button overlay-get category default-button] 6 (#$ . 6176)]) #@338 Insert a button with the label LABEL. The remaining arguments form a sequence 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'. (defalias 'insert-button #[(label &rest properties) "\302\303`c\210` $\207" [label properties apply make-button] 5 (#$ . 6841)]) #@867 Make a button from BEG to END in the current buffer. The remaining arguments form a sequence 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. BEG can also be a string, in which case it is made into a button. Also see `insert-text-button'. (defalias 'make-text-button #[(beg end &rest properties) "\306\307\305\"\206\f \307\310\";\203 \311\nG\312\313\"\203% \314\315!\210 \2042 \313\316BB\202I \313\240\210 A A@\211\317N\206F \314\320 \")\240\210\321\f\322\323CBB\n$\210*\207" [properties type-entry object beg end type nil plist-member :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] 7 (#$ . 7315)]) #@546 Insert a button with the label LABEL. The remaining arguments form a sequence 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'. (defalias 'insert-text-button #[(label &rest properties) "\302\303`c\210` $\207" [label properties apply make-text-button] 5 (#$ . 8700)]) #@160 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. (defalias 'button-at #[(pos) "\302\301\"\303 !\204 \204 \202 \304\305\")\207" [pos button get-char-property overlayp copy-marker t] 3 (#$ . 9392)]) #@174 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. (defalias 'next-button #[(pos &optional count-current) "\204 \302 \303\" dW\205 \304 !\206 \305 !\207" [count-current pos next-single-char-property-change button button-at next-button] 3 (#$ . 9714)]) #@179 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. (defalias 'previous-button #[(pos &optional count-current) "\304!\211\2033 \n\203 \202H \305\306 !\301\"\304!\211\203, \306 !U?\205/ \202/ \307!)\202H \305\301\"\304!\206H eV\205H \304S!)\207" [pos button count-current new-button button-at previous-single-char-property-change button-start previous-button] 4 (#$ . 10100)]) #@570 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 instead of its normal action; if the button has no mouse-action, the normal action is used instead. The action may be either a function to call or a marker to display. 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. (defalias 'push-button #[(&optional pos use-mouse-action) "\250\2048 \306!\2038 \307!r\310 \211@)!q\210\311 \312\n8\2063 \nA@:\2030 \nA@@\2023 \nA@)\313\"*\207\314\206>