Deprecated: The each() function is deprecated. This message will be suppressed on further calls in /home/zhenxiangba/zhenxiangba.com/public_html/phproxy-improved-master/index.php on line 456
;ELC ;;; Compiled by leavens@CMC3251632-A on Thu Sep 04 23:07:36 2003 ;;; from file d:/emacs/eieio/eieio-speedbar.el ;;; in Emacs version 21.2.1 ;;; with bytecomp version 2.85.4.1 ;;; with all optimizations. ;;; This file uses dynamic docstrings, first added in Emacs 19.29. (if (and (boundp 'emacs-version) (< (aref emacs-version (1- (length emacs-version))) ?A) (or (and (boundp 'epoch::version) epoch::version) (string-lessp emacs-version "19.29"))) (error "`eieio-speedbar.el' was compiled for Emacs 19.29 or later")) ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; (byte-code "\300\301!\210\300\302!\210\300\303!\207" [require eieio eieio-custom speedbar] 2) #@49 A Generic object based speedbar display keymap. (defvar eieio-speedbar-key-map nil (#$ . 704)) #@48 Make the generic object based speedbar keymap. (defalias 'eieio-speedbar-make-map #[nil "\301 \302\303\304#\210\302\305\306#\210\302\307\306#\210\302\310\311#\210\302\312\313#\207" [eieio-speedbar-key-map speedbar-make-specialized-keymap define-key " " speedbar-edit-line "+" speedbar-expand-line "=" "-" speedbar-contract-line "C" eieio-speedbar-customize-line] 4 (#$ . 805)]) #@71 Menu part in easymenu format used in speedbar while browsing objects. (defvar eieio-speedbar-menu '(["Edit Object/Field" speedbar-edit-line t] ["Expand Object" speedbar-expand-line (save-excursion (beginning-of-line) (looking-at "[0-9]+: *.\\+. "))] ["Contract Object" speedbar-contract-line (save-excursion (beginning-of-line) (looking-at "[0-9]+: *.-. "))] "---" ["Customize Object" eieio-speedbar-customize-line (object-p (speedbar-line-token))]) (#$ . 1195)) (defalias 'eieio-speedbar-customize-line 'speedbar-edit-line) #@398 Create a speedbar mode for displaying an object hierarchy. MAP-FN is the keymap generator function used for extra keys. MAP-VAR is the keymap variable used. MENU-VAR is the symbol containting an easymenu compatible menu part to use. MODENAME is a s tring used to identify this browser mode. FETCHER is a generic function used to fetch the base object list used when creating the speedbar display. (defalias 'eieio-speedbar-create #[(map-fn map-var menu-var modename fetcher) "\305\306!\204\307\310\311\312\313 \n \f\257E\"\207\313 \n \f%\207" [map-fn map-var menu-var modename fetcher featurep speedbar add-hook speedbar-load-hook lambda nil eieio-speedbar-create-engine] 10 (#$ . 1727)]) #@214 Create a speedbar mode for displaying an object hierarchy. Called from `eieio-speedbar-create', or the speedbar load-hook. MAP-FN, MAP-VAR, MENU-VAR, MODENAME, and FETCHER are the same as `eieio-speedbar-create'. (defalias 'eieio-speedbar-create-engine #[(map-fn map-var menu-var modename fetcher) " \210\305 \n \306\307\310\311\312\313\fDFEF!\210\314 \315\316E!\207" [map-fn modename menu-var map-var fetcher speedbar-add-expansion-list lambda (dir depth) eieio-speedbar-buttons dir depth quote speedbar-add-mode-functions-list (speedbar-item-info . eieio-speedbar-item-info) (speedbar-line-path . eieio-speedbar-line-path)] 11 (#$ . 2428)]) #@288 Create buttons for the speedbar display. Start in directory DIR-OR-OBJECT. If it is an object, just display that objects subelements. Argument DEPTH specifies how far down we have already been displayed. If it is a directory, use FETCHER to fetch all objects associated with that path. (defalias 'eieio-speedbar-buttons #[(dir-or-object depth fetcher) "\304\305\306\217\203\fC\202;\203 !\202\211\204,\307\304\211\211\211\310\304\211\211 & \202>\n\205>\311\n@ \"\210\nA\211\2040\304)\207" [dir-or-object fetcher objlst depth nil (byte-code "\211\302H\303=\205\304\305\306\217)\207" [dir-or-object tobj 0 object nil (byte-code " H\302N\303H\304=\207" [tobj object-class eieio-class-definition 0 defclass] 2) ((error))] 4) ((error)) speedbar-make-tag-line "Empty display" eieio-speedbar-make-tag-line] 11 (#$ . 3079)]) (eieio-defmethod 'eieio-speedbar-description '(((object eieio-default-superclass)) #[(object) "\301!\207" [object object-name-string] 2 "Return a string describing OBJECT."])) (eieio-defmethod 'eieio-speedbar-derive-line-path '(((object eieio-default-superclass)) #[(object) "\300\207" [nil] 1 "Return the path which OBJECT has something to do with."])) (eieio-defmethod 'eieio-speedbar-object-buttonname '(((object eieio-default-superclass)) #[(object) "\301!\207" [object object-name-string] 2 "Return a string to use as a speedbar button for OBJECT."])) (eieio-defmethod 'eieio-speedbar-make-tag-line '(((object eieio-default-superclass) depth) #[(object depth) "\302\303\211\211\211\304!\305\306 & \207" [object depth speedbar-make-tag-line nil eieio-speedbar-object-buttonname eieio-speedbar-object-click speedbar-tag-face] 10 "Insert a tag line into speedbar at point for OBJECT. By default, all objects appear as simple TAGS with no need to inherit from the special `eieio-speedbar' classes. Child classes should redefine this method to create more accurate tag lines. Argument DEPTH is the depth at which the tag line is inserted."])) (eieio-defmethod 'eieio-speedbar-handle-click '(((object eieio-default-superclass)) #[(object) "\303\304!\210\305 \306\216\307 !\210\310 !\210\311 \210*\312 \207" [save-selected-window-window dframe-attached-frame object require eieio-custom selected-window ((byte-code "\301!\203 \302!\210\301\207" [save-selected-window-window window-live-p select-window] 2)) select-frame eieio-customize-object dframe-maybee-jump-to-attached-frame speedbar-maybee-jump-to-attached-frame] 2 "Handle a click action on OBJECT in speedbar. Any object can be represented as a tag in SPEEDBAR without special attributes. These default objects will be pulled up in a custom object edit buffer doing an in-place edit. If your object represents some other item, override this method and take the apropriate action."])) (byte-code "\300\301\302\303\304$\210\300\305\306\307\310$\210\300\311\312\313\314$\207" [eieio-defclass eieio-speedbar nil ((buttontype :initform nil :type symbol :documentation "The type of expansion button used for objects of this class.\nPossible values are those symbols supported by the `exp-button-type' argument\nto `speedbar-make-tag-line'." :allocation :class) (buttonface :initform speedbar-tag-face :type (or symbol face) :documentation "The face used on the textual part of the button for this class.\nSee `speedbar-make-tag-line' for details." :allocation :class) (expanded :initform nil :type boolean :documentation "State of an object being expanded in speedbar.")) ("Class which provides basic speedbar support for child classes.\nAdd one of thie child classes to this class to the parent list of a class." :abstract t) eieio-speedbar-directory-button (eieio-speedbar) ((buttontype :initform angle) (buttonface :initform speedbar-directory-face)) ("Class providing support for objects which behave like a directory." :abstract t) eieio-speedbar-file-button (eieio-speedbar) ((buttontype :initform bracket) (buttonface :initform speedbar-file-face)) ("Class providing support for objects which behave like a directory." :abstract t)] 5) (eieio-defmethod 'eieio-speedbar-make-tag-line '(((object eieio-speedbar) depth) #[(object depth) "\304!\305\306\"\211\204A\305\307\"\310=\203*\311\312\313\314\211\315!\316\305\317\" & \202g\311\305\307\"\313\314\211\315!\316\305\317\" & \202g\311\305\307\" \203N\320\202O\321\322\315!\316\305\317\" & \210 \205g\323 T\"*\207" [object exp children depth eieio-speedbar-object-children eieio-oref expanded buttontype expandtag speedbar-make-tag-line statictag 32 nil eieio-speedbar-object-buttonname eieio-speedbar-object-click buttonface 45 43 eieio-speedbar-object-expand eieio-speedbar-expand] 12 "Insert a tag line into speedbar at point for OBJECT. All objects a child of symbol `eieio-speedbar' can be created from this method. Override this if you need non-traditional tag lines. Argument DEPTH is the depth at which the tag line is inserted."])) (eieio-defmethod 'eieio-speedbar-child-make-tag-lines '(((object eieio-speedbar) depth) #[(object depth) "\301\302\303!\"\207" [object error "You must implement `eieio-speedbar-child-make-tag-lines' for %s" object-name] 4 "Base method for creating tag lines for non-object children."])) (eieio-defmethod 'eieio-speedbar-expand '(((object eieio-speedbar) depth) #[(object depth) "\303!\304\305\306\217\203\307\310 \"\202 \205\311 \")\207" [object children depth eieio-speedbar-object-children nil (byte-code "@\211\302H\303=\205\304\305\306\217)\207" [children tobj 0 object nil (byte-code " H\302N\303H\304=\207" [tobj object-class eieio-class-definition 0 defclass] 2) ((error))] 4) ((error)) mapcar #[(car) "\302 \"\207" [car depth eieio-speedbar-make-tag-line] 3] eieio-speedbar-child-make-tag-lines] 3 "Expand OBJECT at indentation DEPTH. Inserts a list of new tag lines representing expanded elements withing OBJECT."])) #@99 Handle a user click on TEXT representing object TOKEN. The object is at indentation level INDENT. (defalias 'eieio-speedbar-object-click #[(text token indent) "\301!\207" [token eieio-speedbar-handle-click] 2 (#$ . 8949)]) #@99 Expand object represented by TEXT. TOKEN is the object. INDENT is the current indentation level. (defalias 'eieio-speedbar-object-expand #[(text token indent) "\304\305\"\203$\306\307!\210\310 \311\312#\210\312\212\313\210\314u\210\315 T\"\210*\202@\304\316\"\203<\306\317!\210\310 \311\313#\210\320 !\210\202@\321\322!\210\323 \207" [text token inhibit-read-only indent string-match "+" speedbar-change-expand-button-char 45 eieio-oset expanded t nil 1 eieio-speedbar-expand "-" 43 speedbar-delete-subblock error "Ooops... not sure what to do" speedbar-center-buffer-smartly] 4 (#$ . 9179)]) (eieio-defmethod 'eieio-speedbar-child-description '(((obj eieio-speedbar)) #[(obj) "\301\302\303!\"\207" [obj error "You must implement `eieio-speedbar-child-description' for %s" object-name] 4 "Return a description for a child of OBJ which is not an object."])) #@61 Display info for the current line when in EDE display mode. (defalias 'eieio-speedbar-item-info #[nil "\302 \303\304\305\217\203\306\307!!\202\310 \211\205\311 !))\207" [tok no speedbar-line-token nil (byte-code "\211\302H\303=\205\304\305\306\217)\207" [tok tobj 0 object nil (byte-code " H\302N\303H\304=\207" [tobj object-class eieio-class-definition 0 defclass] 2) ((error))] 4) ((error)) message eieio-speedbar-description eieio-speedbar-find-nearest-object eieio-speedbar-child-description] 4 (#$ . 10053)]) #@123 Search backwards to the first line associated with an object. Optional argument DEPTH is the current depth of the search. (defalias 'eieio-speedbar-find-nearest-object #[(&optional depth) "\212\204\301 \210\302\303!\203\304\305\306!!\2056\307\310\311\217\2044\312V\2034S\313\314\315\"\307\316#\210\202\317 )\207" [depth beginning-of-line looking-at "^\\([0-9]+\\):" string-to-int match-string 1 nil (byte-code "\301 \211\302H\303=\205\304\305\306\217)\207" [tobj speedbar-line-token 0 object nil (byte-code " H\302N\303H\304=\207" [tobj object-class eieio-class-definition 0 defclass] 2) ((error))] 4) ((error)) 0 re-search-backward format "^%d:" t speedbar-line-token] 4 (#$ . 10588)]) #@103 If applicable, return the path to the file the cursor is on. Optional DEPTH is the depth we start at. (defalias 'eieio-speedbar-line-path #[(&optional depth) "\304 \305\216 \204\306 \210\307\310!\210\311\312\313!!\314 !\315\316\317\217\203'\320\n!\202( +\207" [save-match-data-internal depth tok default-directory match-data ((set-match-data save-match-data-internal)) beginning-of-line looking-at "^\\([0-9]+\\):" string-to-int match-string 1 eieio-speedbar-find-nearest-object nil (byte-code "\211\302H\303=\205\304\305\306\217)\207" [tok tobj 0 object nil (byte-code " H\302N\303H\304=\207" [tobj object-class eieio-class-definition 0 defclass] 2) ((error))] 4) ((error)) eieio-speedbar-derive-line-path] 3 (#$ . 11302)]) (eieio-defmethod 'eieio-speedbar-object-children '(((object eieio-speedbar)) #[(object) "\300\207" [nil] 1 "Return a list of children to be displayed in SPEEDBAR. If the return value is a list of OBJECTs, then those objects are queried for details. If the return list is made of strings, then this object will be queried for the details needed to create a speedbar button."])) (provide 'eieio-speedbar)