;ELC   
;;; Compiled by pot@pot.cnuce.cnr.it on Tue Mar 18 15:41:44 2003
;;; from file /home/pot/gnu/emacs-pretest.new/lisp/frame.el
;;; in Emacs version 21.3
;;; 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 "`frame.el' was compiled for Emacs 19.29 or later"))

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


#@202 Window-system dependent function to call to create a new frame.
The window system startup file should set this to its frame creation
function, which should take an alist of parameters as its argument.
(defvar frame-creation-function nil (#$ . 613))
#@1057 *Alist of frame parameters for creating the initial X window frame.
You can set this in your `.emacs' file; for example,
 (setq initial-frame-alist '((top . 1) (left . 1) (width . 80) (height . 55)))
Parameters specified here supersede the values given in `default-frame-alist'.

If the value calls for a frame without a minibuffer, and you have not created
a minibuffer frame on your own, one is created according to
`minibuffer-frame-alist'.

You can specify geometry-related options for just the initial frame
by setting this variable in your `.emacs' file; however, they won't
take effect until Emacs reads `.emacs', which happens after first creating
the frame.  If you want the frame to have the proper geometry as soon
as it appears, you need to use this three-step process:
* Specify X resources to give the geometry you want.
* Set `default-frame-alist' to override these options so that they
  don't affect subsequent frames.
* Set `initial-frame-alist' in a way that matches the X resources,
  to override what you put in `default-frame-alist'.
(custom-declare-variable 'initial-frame-alist 'nil '(#$ . -870) :type '(repeat (cons :format "%v" (symbol :tag "Parameter") (sexp :tag "Value"))) :group 'frames)
#@311 *Alist of frame parameters for initially creating a minibuffer frame.
You can set this in your `.emacs' file; for example,
 (setq minibuffer-frame-alist
   '((top . 1) (left . 1) (width . 80) (height . 2)))
Parameters specified here supersede the values given in
`default-frame-alist', for a minibuffer frame.
(custom-declare-variable 'minibuffer-frame-alist ''((width . 80) (height . 2)) '(#$ . -2095) :type '(repeat (cons :format "%v" (symbol :tag "Parameter") (sexp :tag "Value"))) :group 'frames)
#@313 *Alist of frame parameters used when creating pop-up frames.
Pop-up frames are used for completions, help, and the like.
This variable can be set in your init file, like this:
  (setq pop-up-frame-alist '((width . 80) (height . 20)))
These supersede the values given in `default-frame-alist',
for pop-up frames.
(custom-declare-variable 'pop-up-frame-alist 'nil '(#$ . -2603) :type '(repeat (cons :format "%v" (symbol :tag "Parameter") (sexp :tag "Value"))) :group 'frames)
(byte-code "\301\302\207" [pop-up-frame-function #[nil "\301!\207" [pop-up-frame-alist make-frame] 2] nil] 1)
#@425 *Alist of frame parameters used when creating special frames.
Special frames are used for buffers whose names are in
`special-display-buffer-names' and for buffers whose names match
one of the regular expressions in `special-display-regexps'.
This variable can be set in your init file, like this:
  (setq special-display-frame-alist '((width . 80) (height . 20)))
These supersede the values given in `default-frame-alist'.
(custom-declare-variable 'special-display-frame-alist ''((height . 14) (width . 80) (unsplittable . t)) '(#$ . -3196) :type '(repeat (cons :format "%v" (symbol :tag "Parameter") (sexp :tag "Value"))) :group 'frames)
#@386 Display BUFFER in its own frame, reusing an existing window if any.
Return the window chosen.
Currently we do not insist on selecting the window within its frame.
If ARGS is an alist, use it as a list of frame parameter specs.
If ARGS is a list whose car is a symbol,
use (car ARGS) as a function to do the work.
Pass it BUFFER as first arg, and (cdr ARGS) gives the rest of the args.
(defalias 'special-display-popup-frame #[(buffer &optional args) "\203 @9\203 \305@	A#\207\306	\307\"\211\203, \310\n!\311!\210\312!\210\n)\202E \313\314\f\"!\315\316!	\"\210\317\316!\307\"\210\316!))\207" [args buffer window frame special-display-frame-alist apply get-buffer-window t window-frame make-frame-visible raise-frame make-frame append set-window-buffer frame-selected-window set-window-dedicated-p] 5 (#$ . 3843)])
#@47 Handle delete-frame events from the X server.
(defalias 'handle-delete-frame #[(event) "\3058)\306	8)\306\307 \n\203- \310\n@!\203& \n@\f=\204& T\nA\211\204 \306V\203: \311\f\312\"\202< \313 +\207" [event position tail i frame 1 0 frame-list frame-visible-p delete-frame t save-buffers-kill-emacs] 4 (#$ . 4677) "e"])
(byte-code "\301B\303\301!\204\f \304\305B\302B\303\302!\204 \304\304\207" [current-load-list frame-initial-frame frame-initial-geometry-arguments boundp nil frame-initial-frame-alist] 2)
#@39 Create an initial frame if necessary.
(defalias 'frame-initialize #[nil "\203A 	\204A \306=\204A \307\310\311 \"\2049 \312\f\313#\314\236\204, \315B\316!\211\317\f!\320!\210\313\211\207\306=\206U \321\322!\203Q \322\202R \323\211\207" [window-system noninteractive special-display-function terminal-frame initial-frame-alist default-frame-alist pc special-display-popup-frame delq minibuffer-frame-list append nil horizontal-scroll-bars (horizontal-scroll-bars . t) make-frame frame-remove-geometry-params delete-frame fboundp tty-create-frame-with-faces #[(parameters) "\300\301!\207" [error "Can't create multiple frames without a window system"] 2] frame-initial-frame-alist frame-initial-frame default-minibuffer-frame frame-creation-function] 4 (#$ . 5210)])
#@69 Non-nil means function `frame-notice-user-settings' wasn't run yet.
(defvar frame-notice-user-settings t (#$ . 6005))
#@128 Act on user's init file settings of frame parameters.
React to settings of `default-frame-alist', `initial-frame-alist' there.
(defalias 'frame-notice-user-settings #[nil "\306\302!\203& \307\236\211\203 	A\310=?\202% \307\n\203  \311\202! \310BB)\306\304!\203P \204P \312\236\211\203A 	A\310=?\202O \312\f\203J \311\202K \310BB)p6\203\300 7\204\300 \3137!8\314\3158\2368\"8\314\3168\2368\"8\317\3209\204\210 \321:8\320$\202\212 8\"\2109\204\277 \313 \322 ;<\323;<\"\210\324<\236\203\276 \325:\236\204\271 \325\236\204\271 \326;!\210\327;!\210*)\3307!\203F\331 \203\244\312:\236\206\326 \312\236\n=\203\243\n\203\360 \nA\203\360 \nA\310=\203\243\3327!>?@A:\203AA\250\203A\310V\203AA\202'A\250\203&A\310V\203&A\202'\310BC\250\203;C\310V\203;C\202<\333D@B\211\\\310\\\\D\211\\\310\\\\>S\\>\245E\3347\335\"\335EZBC<\336F\236AG\3347\336\"G:\203\226G@\337=\203\226\321<\336E>_\\BC\320#<\3177<\"\210\304\340!\210.	)\316:\236\206\262\316\236\206\262\341A\342=\204\223\320\211H8\343\3137!\236A\204\317\344\311!\210\202\276\3137!8\315I\236\204\346\314\3158\2368\"8\321:8\320$8\345\314\3468\2368\"B8\335F\236\203\n\347\3358\"8\350F\236\203\347\3508\"8\351F\236\203&\347\3518\"8\336F\236\2034\347\3368\"8\352\321F\3538#!H\3147\354 \"\204L\355\320!\210\356\357!\211J\204]K7=\203\201\356\360!\206e\354 @L\361L!MK7=\203zLK\362\363J\"\210*)\3647H\"\210\3657\342\"\210*\202F\320\211\211NO<\321:\320#O\335F\236\203\262\347\335O\"O\350F\236\203\300\347\350O\"O\351F\236\203\316\347\351O\"O\336F\236\203\334\347\336O\"OO\211N\203!\320\211PQN@@I\236PN@@O\236AQP\203PAQ=\204N@@QB<B<*NA\211N\204\344<\237<\3177<\"\210\324<\236\203E\325<\236\204@\3267!\210\3277!\210+q\210\3206\320\2117)\207" [default-frame-alist default menu-bar-mode noninteractive tool-bar-mode old-buffer boundp menu-bar-lines 0 1 tool-bar-lines frame-parameters delq name minibuffer modify-frame-parameters nil append selected-frame tty-handle-reverse-video background-color background-mode frame-set-background-mode face-set-after-frame-default frame-live-p display-graphic-p frame-char-height 3 frame-parameter height top - -1 (minibuffer . t) t visibility sleep-for (reverse) reverse assq-delete-all width left make-frame ((user-size . t) (user-position . t)) minibuffer-frame-list make-initial-minibuffer-frame filtered-frame-list #[(frame) "	=?\205 \302\303!!	=\207" [frame frame-initial-frame window-frame minibuffer-window] 3] #[(frame) "\301\302!\236A\303=\207" [frame minibuffer frame-parameters only] 3] minibuffer-window mapcar #[(frame) "\302\303	BC\"\207" [frame new-minibuffer modify-frame-parameters minibuffer] 4] redirect-frame-focus delete-frame frame-notice-user-settings frame-initial-frame parms window-system initial-frame-alist frame newparms tool-bar-originally-present char-height tool-bar-images-pixel-height image-height tool-bar-button-margin margin tool-bar-button-relief relief lines frame-initial-geometry-arguments initial-top new frame-initial-frame-alist users-of-initial default-minibuffer-frame new-surrogate new-minibuffer tail allparms oldval newval] 8 (#$ . 6130)])
(defalias 'make-initial-minibuffer-frame #[(display) "\303\304\"\n\203 \305\n	\"\202 \306	!)\207" [minibuffer-frame-alist parms display append ((minibuffer . only)) make-frame-on-display make-frame] 3])
#@158 Return some frame other than the current frame.
Create one if necessary.  Note that the minibuffer frame, if separate,
is not considered (see `next-frame').
(defalias 'get-other-frame #[nil "\300\301 !\301 \232\203 \302 \207\300\301 !\207" [next-frame selected-frame make-frame] 3 (#$ . 9637)])
#@61 Select the next window, regardless of which frame it is on.
(defalias 'next-multiframe-window #[nil "\300\301\302 \303 \304V\305#!\210\306\307 !\207" [select-window next-window selected-window minibuffer-depth 0 t select-frame-set-input-focus selected-frame] 5 (#$ . 9939) nil])
#@65 Select the previous window, regardless of which frame it is on.
(defalias 'previous-multiframe-window #[nil "\300\301\302 \303 \304V\305#!\210\306\307 !\207" [select-window previous-window selected-window minibuffer-depth 0 t select-frame-set-input-focus selected-frame] 5 (#$ . 10224) nil])
#@113 Make a frame on display DISPLAY.
The optional second argument PARAMETERS specifies additional frame parameters.
(defalias 'make-frame-on-display #[(display &optional parameters) "\302\303\"\204 \304\305!\210\306\300B	B!\207" [display parameters string-match "\\`[^:]*:[0-9]+\\(\\.[0-9]+\\)?\\'" error "Invalid display, not HOST:SERVER or HOST:SERVER.SCREEN" make-frame] 3 (#$ . 10523) "sMake frame on display: "])
#@74 Make a new frame, and select it if the terminal displays only one frame.
(defalias 'make-frame-command #[nil "\203 \301=\204 \302 \207\303\302 !\207" [window-system pc make-frame select-frame] 2 (#$ . 10946) nil])
#@45 Functions to run before a frame is created.
(defvar before-make-frame-hook nil (#$ . 11170))
#@105 Functions to run after a frame is created.
The functions are run with one arg, the newly created frame.
(defvar after-make-frame-functions nil (#$ . 11270))
#@57 Functions to run after a frame's font has been changed.
(defvar after-setting-font-hook nil (#$ . 11433))
(defalias 'new-frame 'make-frame)
#@962 Return a newly created frame displaying the current buffer.
Optional argument PARAMETERS is an alist of parameters for the new frame.
Each element of PARAMETERS should have the form (NAME . VALUE), for example:

 (name . STRING)	The frame should be named STRING.

 (width . NUMBER)	The frame should be NUMBER characters in width.
 (height . NUMBER)	The frame should be NUMBER text lines high.

You cannot specify either `width' or `height', you must use neither or both.

 (minibuffer . t)	The frame should have a minibuffer.
 (minibuffer . nil)	The frame should have no minibuffer.
 (minibuffer . only)	The frame should contain only a minibuffer.
 (minibuffer . WINDOW)	The frame should use WINDOW as its minibuffer window.

Before the frame is created (via `frame-creation-function'), functions on the
hook `before-make-frame-hook' are run.  After the frame is created, functions
on `after-make-frame-functions' are run with one arg, the newly created frame.
(defalias 'make-frame #[(&optional parameters) "\303\304!\210	!\305\306\n\"\210\n)\207" [frame-creation-function parameters frame run-hooks before-make-frame-hook run-hook-with-args after-make-frame-functions] 3 (#$ . 11580) nil])
#@59 Return a list of all live frames which satisfy PREDICATE.
(defalias 'filtered-frame-list #[(predicate) "\303 \211:\203 \n@!\204 \304\240\210A\211\202 \305\304	\"*\207" [frames list predicate frame-list nil delq] 4 (#$ . 12780)])
#@57 Return a list of all frames with their own minibuffers.
(defalias 'minibuffer-frame-list #[nil "\300\301!\207" [filtered-frame-list #[(frame) "\301\302!!=\207" [frame window-frame minibuffer-window] 4]] 2 (#$ . 13025)])
#@189 Return a list of all frames on DISPLAY.
DISPLAY is a name of a display, a string of the form HOST:SERVER.SCREEN.
If DISPLAY is omitted or nil, it defaults to the selected frame's display.
(defalias 'frames-on-display-list #[(&optional display) "\206 \302\303\300\"\304\305	!*\207" [display func frame-parameter nil #[(frame) "\302\301\"	=\207" [frame display frame-parameter] 3] filtered-frame-list] 3 (#$ . 13254)])
#@249 Return the type of frames on DISPLAY.
DISPLAY may be a display name or a frame.  If it is a frame, its type is
returned.
If DISPLAY is omitted or nil, it defaults to the selected frame's display.
All frames on a given display are of the same type.
(defalias 'framep-on-display #[(&optional display) "\301!\206\f \301\302!@!\207" [display framep frames-on-display-list] 3 (#$ . 13683)])
#@289 Return the parameter list PARAM-LIST, but with geometry specs removed.
This deletes all bindings in PARAM-LIST for `top', `left', `width',
`height', `user-size' and `user-position' parameters.
Emacs uses this to avoid overriding explicit moves and resizings from
the user during startup.
(defalias 'frame-remove-geometry-params #[(param-list) "\303B\211	A:\2032 	A@:\203+ 	A@@\304>\203+ 	A@\nB	\211AA\241\210\202 	A\211\202 )\n\237A\207" [param-list tail frame-initial-geometry-arguments nil (height width top left user-position user-size)] 3 (#$ . 14078)])
#@66 *Non-nil if window system changes focus when you move the mouse.
(custom-declare-variable 'focus-follows-mouse 't '(#$ . -14651) :type 'boolean :group 'frames :version "20.3")
#@59 Select FRAME, raise it, and set input focus, if possible.
(defalias 'select-frame-set-input-focus #[(frame) "\303!\210\304!\210	\305=\203 \306!\210\n\203& 	\305=?\205/ \307\310 \311 S\312#\207	\313=\205/ \314!\207" [frame window-system focus-follows-mouse select-frame raise-frame w32 w32-focus-frame set-mouse-position selected-frame frame-width 0 x x-focus-frame] 4 (#$ . 14833)])
#@225 Select the ARG'th different visible frame on current display, and raise it.
All frames are arranged in a cyclic order.
This command selects the frame ARG steps away in that order.
A negative ARG moves in the opposite order.
(defalias 'other-frame #[(arg) "\302 	\303V\203# \304!\305!\306=\204 \304!\202 	S\211\202 	\303W\203C \307!\305!\306=\204< \307!\202- 	T\211\202$ \310!)\207" [frame arg selected-frame 0 next-frame frame-visible-p t previous-frame select-frame-set-input-focus] 3 (#$ . 15228) "p"])
(defalias 'make-frame-names-alist #[nil "\303 \304\305\"B\306B\307\306\310\"\211=\204) \304\n\305\"\nB	B\307\n\310\"\211\202 	+\207" [current-frame falist frame selected-frame frame-parameter name nil next-frame t] 4])
(byte-code "\301B\302\301!\204\f \303\303\207" [current-load-list frame-name-history boundp nil] 2)
#@127 Select the frame on the current terminal whose name is NAME and raise it.
If there is no frame by that name, signal an error.
(defalias 'select-frame-by-name #[(name) "\305 \306	\"A\211\204 \307\310	\"\210\311\n!\210\312\n!\210\313\n!\210\314=\203* \315\n!\2026 \f\2056 \316\317 \320 S\321#*\207" [frame-names-alist name frame window-system focus-follows-mouse make-frame-names-alist assoc error "There is no frame named `%s'" make-frame-visible raise-frame select-frame w32 w32-focus-frame set-mouse-position selected-frame frame-width 0] 5 (#$ . 16088) (byte-code "\303 \211@@\304\305\306	\"\307\310\307\311&\211G\312U\203  	C\202\" \nC+\207" [frame-names-alist default input make-frame-names-alist completing-read format "Select Frame (default %s): " nil t frame-name-history 0] 8)])
#@342 Return a list describing the positions and states of all frames.
Its car is `frame-configuration'.
Each element of the cdr is a list of the form (FRAME ALIST WINDOW-CONFIG),
where
  FRAME is a frame object,
  ALIST is an association list specifying some of FRAME's parameters, and
  WINDOW-CONFIG is a window configuration object for FRAME.
(defalias 'current-frame-configuration #[nil "\300\301\302\303 \"B\207" [frame-configuration mapcar #[(frame) "\301!\302!E\207" [frame frame-parameters current-window-configuration] 4] frame-list] 4 (#$ . 16892)])
#@388 Restore the frames to the state described by CONFIGURATION.
Each frame listed in CONFIGURATION has its position, size, window
configuration, and other parameters set as specified in CONFIGURATION.
Ordinarily, this function deletes all existing frames not
listed in CONFIGURATION.  But if optional second argument NODELETE
is given and non-nil, the unwanted frames are iconified instead.
(defalias 'set-frame-configuration #[(configuration &optional nodelete) "\304!\204 \305\306\304D\"\210A\307\310\311\312 \"\210\203# \310\313	\"\202' \310\314	\"*\207" [configuration frames-to-delete config-alist nodelete frame-configuration-p signal wrong-type-argument nil mapcar #[(frame) "	\236\211\203' \306\nA@\307\236\211\203 \310\f\"*\"\210\311\312\n8!\202, B\211)\207" [frame config-alist parameters parms mini frames-to-delete modify-frame-parameters minibuffer delq set-window-configuration 2] 6] frame-list iconify-frame delete-frame] 4 (#$ . 17457)])
#@116 Return number of lines available for display on FRAME.
If FRAME is omitted, describe the currently selected frame.
(defalias 'frame-height #[(&optional frame) "\301\302!\236A\207" [frame height frame-parameters] 3 (#$ . 18434)])
#@118 Return number of columns available for display on FRAME.
If FRAME is omitted, describe the currently selected frame.
(defalias 'frame-width #[(&optional frame) "\301\302!\236A\207" [frame width frame-parameters] 3 (#$ . 18671)])
(defalias 'set-default-font 'set-frame-font)
#@182 Set the font of the selected frame to FONT-NAME.
When called interactively, prompt for the name of the font to use.
To get the frame's current default font, use `frame-parameters'.
(defalias 'set-frame-font #[(font-name) "\301\302 \303BC\"\210\304\305\306\"\207" [font-name modify-frame-parameters selected-frame font run-hooks after-setting-font-hook after-setting-font-hooks] 4 (#$ . 18953) (list (let ((completion-ignore-case t)) (completing-read "Font name: " (mapcar #'list (x-list-fonts "*" nil (selected-frame))))))])
#@200 Set the background color of the selected frame to COLOR-NAME.
When called interactively, prompt for the name of the color to use.
To get the frame's current background color, use `frame-parameters'.
(defalias 'set-background-color #[(color-name) "\302\303 \304BC\"\210	\206 \305\303 !\207" [color-name window-system modify-frame-parameters selected-frame background-color face-set-after-frame-default] 4 (#$ . 19486) (list (facemenu-read-color))])
#@200 Set the foreground color of the selected frame to COLOR-NAME.
When called interactively, prompt for the name of the color to use.
To get the frame's current foreground color, use `frame-parameters'.
(defalias 'set-foreground-color #[(color-name) "\302\303 \304BC\"\210	\206 \305\303 !\207" [color-name window-system modify-frame-parameters selected-frame foreground-color face-set-after-frame-default] 4 (#$ . 19943) (list (facemenu-read-color))])
#@197 Set the text cursor color of the selected frame to COLOR-NAME.
When called interactively, prompt for the name of the color to use.
To get the frame's current cursor color, use `frame-parameters'.
(defalias 'set-cursor-color #[(color-name) "\301\302 \303BC\"\207" [color-name modify-frame-parameters selected-frame cursor-color] 4 (#$ . 20400) (list (facemenu-read-color))])
#@205 Set the color of the mouse pointer of the selected frame to COLOR-NAME.
When called interactively, prompt for the name of the color to use.
To get the frame's current mouse color, use `frame-parameters'.
(defalias 'set-mouse-color #[(color-name) "\301\302 \303\206 \303\304 \236ABC\"\207" [color-name modify-frame-parameters selected-frame mouse-color frame-parameters] 5 (#$ . 20782) (list (facemenu-read-color))])
#@199 Set the color of the border of the selected frame to COLOR-NAME.
When called interactively, prompt for the name of the color to use.
To get the frame's current border color, use `frame-parameters'.
(defalias 'set-border-color #[(color-name) "\301\302 \303BC\"\207" [color-name modify-frame-parameters selected-frame border-color] 4 (#$ . 21207) (list (facemenu-read-color))])
#@393 Toggle whether or not the selected frame should auto-raise.
With arg, turn auto-raise mode on if and only if arg is positive.
Note that this controls Emacs's own auto-raise feature.
Some window managers allow you to enable auto-raise for certain windows.
You can use that for Emacs windows if you wish, but if you do,
that is beyond the control of Emacs and this command has no effect on it.
(defalias 'auto-raise-mode #[(arg) "\204 \301\302\303 !\236A\203 \304\202 \305\306V\203 \307\303 !\210\310\303 \301\306VBC\"\207" [arg auto-raise frame-parameters selected-frame -1 1 0 raise-frame modify-frame-parameters] 5 (#$ . 21591) "P"])
#@393 Toggle whether or not the selected frame should auto-lower.
With arg, turn auto-lower mode on if and only if arg is positive.
Note that this controls Emacs's own auto-lower feature.
Some window managers allow you to enable auto-lower for certain windows.
You can use that for Emacs windows if you wish, but if you do,
that is beyond the control of Emacs and this command has no effect on it.
(defalias 'auto-lower-mode #[(arg) "\204 \301\302\303 !\236A\203 \304\202 \305\306\303 \301\307VBC\"\207" [arg auto-lower frame-parameters selected-frame -1 1 modify-frame-parameters 0] 5 (#$ . 22241) "P"])
#@251 Set the name of the selected frame to NAME.
When called interactively, prompt for the name of the frame.
The frame name is displayed on the modeline if the terminal displays only
one frame, otherwise the name is displayed on the frame's caption bar.
(defalias 'set-frame-name #[(name) "\301\302 \300BC\"\207" [name modify-frame-parameters selected-frame] 4 (#$ . 22853) "sFrame name: "])
#@137 Return non-nil if DISPLAY has a mouse available.
DISPLAY can be a display name, a frame, or nil (meaning the selected
frame's display).
(defalias 'display-mouse-p #[(&optional display) "\305!\211\306=\203 \307 \2022 \n\310=\203 \311V\2022 	\312>\203% \313\2022 \314\315!\203/ \f\2062 \314\316!)\207" [display frame-type system-type w32-num-mouse-buttons xterm-mouse-mode framep-on-display pc msdos-mouse-p windows-nt 0 (x mac) t featurep xt-mouse t-mouse] 3 (#$ . 23249)])
#@206 Return non-nil if popup menus are supported on DISPLAY.
DISPLAY can be a display name, a frame, or nil (meaning the selected
frame's display).
Support for popup menus requires that the mouse be available.
(defalias 'display-popup-menus-p #[(&optional display) "\302!\211\303>)\205 \304!\207" [display frame-type framep-on-display (x w32 pc mac) display-mouse-p] 3 (#$ . 23734)])
#@347 Return non-nil if DISPLAY is a graphic display.
Graphical displays are those which are capable of displaying several
frames and several different fonts at once.  This is true for displays
that use a window system such as X, and false for text-only terminals.
DISPLAY can be a display name, a frame, or nil (meaning the selected
frame's display).
(defalias 'display-graphic-p #[(&optional display) "\301!\302>??\207" [display framep-on-display (x w32 mac)] 2 (#$ . 24124)])
#@135 Return non-nil if DISPLAY can display images.

DISPLAY can be a display name, a frame, or nil (meaning the selected
frame's display).
(defalias 'display-images-p #[(&optional display) "\301!\205 \302\303!\205 \302\304!\205 \305!\306=?\207" [display display-graphic-p fboundp image-mask-p image-size framep-on-display w32] 2 (#$ . 24605)])
(byte-code "\300\301\302\"\210\300\303\302\"\207" [defalias display-multi-frame-p display-graphic-p display-multi-font-p] 3)
#@282 Return non-nil if DISPLAY supports selections.
A selection is a way to transfer text or other data between programs
via special system buffers called `selection' or `cut buffer' or
`clipboard'.
DISPLAY can be a display name, a frame, or nil (meaning the selected
frame's display).
(defalias 'display-selections-p #[(&optional display) "\303!\211\304=\203 \n??\202 	\305>\203 \306\202 \307)\207" [display frame-type dos-windows-version framep-on-display pc (x w32 mac) t nil] 3 (#$ . 25081)])
#@55 Return the number of screens associated with DISPLAY.
(defalias 'display-screens #[(&optional display) "\302!\211\303>\203 \304!\202 \305)\207" [display frame-type framep-on-display (x w32) x-display-screens 1] 3 (#$ . 25585)])
#@116 Return the height of DISPLAY's screen in pixels.
For character terminals, each character counts as a single pixel.
(defalias 'display-pixel-height #[(&optional display) "\302!\211\303>\203 \304!\202 \305\306!\203 \202 \307 !)\207" [display frame-type framep-on-display (x w32 mac) x-display-pixel-height frame-height framep selected-frame] 4 (#$ . 25825)])
#@115 Return the width of DISPLAY's screen in pixels.
For character terminals, each character counts as a single pixel.
(defalias 'display-pixel-width #[(&optional display) "\302!\211\303>\203 \304!\202 \305\306!\203 \202 \307 !)\207" [display frame-type framep-on-display (x w32 mac) x-display-pixel-width frame-width framep selected-frame] 4 (#$ . 26198)])
#@104 Return the height of DISPLAY's screen in millimeters.
If the information is unavailable, value is nil.
(defalias 'display-mm-height #[(&optional display) "\301!\302>\205 \303!\207" [display framep-on-display (x w32 mac) x-display-mm-height] 2 (#$ . 26567)])
#@103 Return the width of DISPLAY's screen in millimeters.
If the information is unavailable, value is nil.
(defalias 'display-mm-width #[(&optional display) "\301!\302>\205 \303!\207" [display framep-on-display (x w32 mac) x-display-mm-width] 2 (#$ . 26835)])
#@183 Return the backing store capability of DISPLAY's screen.
The value may be `always', `when-mapped', `not-useful', or nil if
the question is inapplicable to a certain kind of display.
(defalias 'display-backing-store #[(&optional display) "\302!\211\303>\203 \304!\202 \305)\207" [display frame-type framep-on-display (x w32 mac) x-display-backing-store not-useful] 3 (#$ . 27100)])
#@68 Return non-nil if DISPLAY's screen supports the SaveUnder feature.
(defalias 'display-save-under #[(&optional display) "\302!\211\303>\203 \304!\202 \305)\207" [display frame-type framep-on-display (x w32 mac) x-display-save-under not-useful] 3 (#$ . 27492)])
#@51 Return the number of planes supported by DISPLAY.
(defalias 'display-planes #[(&optional display) "\302!\211\303>\203 \304!\202\" 	\305=\203 \306\202\" \307\310\311 G\312\"!)\207" [display frame-type framep-on-display (x w32 mac) x-display-planes pc 4 truncate log tty-color-alist 2] 5 (#$ . 27763)])
#@56 Return the number of color cells supported by DISPLAY.
(defalias 'display-color-cells #[(&optional display) "\302!\211\303>\203 \304!\202 	\305=\203 \306\202 \307 G)\207" [display frame-type framep-on-display (x w32 mac) x-display-color-cells pc 16 tty-color-alist] 3 (#$ . 28075)])
#@164 Returns the visual class of DISPLAY.
The value is one of the symbols `static-gray', `gray-scale',
`static-color', `pseudo-color', `true-color', or `direct-color'.
(defalias 'display-visual-class #[(&optional display) "\302!\211\303>\203 \304!\202! 	\305>\203  \306!\203  \307\202! \310)\207" [display frame-type framep-on-display (x w32 mac) x-display-visual-class (pc t) tty-display-color-p static-color static-gray] 3 (#$ . 28372)])
(byte-code "\300\301\302\"\210\300\303\304\"\207" [defalias screen-height frame-height screen-width frame-width] 3)
#@327 Obsolete function to change the size of the screen to COLS columns.
Optional second arg non-nil means that redisplay should use COLS columns
but that the idea of the actual width of the frame should not be changed.
This function is provided only for compatibility with Emacs 18; new code
should use `set-frame-width instead'.
(defalias 'set-screen-width #[(cols &optional pretend) "\302\303 	#\207" [cols pretend set-frame-width selected-frame] 4 (#$ . 28935)])
#@330 Obsolete function to change the height of the screen to LINES lines.
Optional second arg non-nil means that redisplay should use LINES lines
but that the idea of the actual height of the screen should not be changed.
This function is provided only for compatibility with Emacs 18; new code
should use `set-frame-height' instead.
(defalias 'set-screen-height #[(lines &optional pretend) "\302\303 	#\207" [lines pretend set-frame-height selected-frame] 4 (#$ . 29405)])
#@167 Delete all frames except FRAME.
If FRAME uses another frame's minibuffer, the minibuffer frame is
left untouched.  FRAME nil or omitted means use the selected frame.
(defalias 'delete-other-frames #[(&optional frame) "\204 \305 \306\307!!\310	\310\311 \"\"\211\312\211\2035 @\313\314\"\315=\204. \316!\210A\211\204 *\n\312\211\203U \f@\313\314\"\315=\203N \316!\210\fA\211\204> ,\312\207" [frame mini-frame frames #1=#:--dolist-temp--97269 #2=#:--dolist-temp--97270 selected-frame window-frame minibuffer-window delq frame-list nil frame-parameter minibuffer only delete-frame] 6 (#$ . 29882) nil])
(byte-code "\300\301\302\"\210\300\303\304\"\210\300\305\306\"\210\300\307\310\"\210\311\312!\207" [make-obsolete screen-height frame-height screen-width frame-width set-screen-width set-frame-width set-screen-height set-frame-height make-variable-buffer-local show-trailing-whitespace] 3)
#@138 *Non-nil means highlight trailing whitespace in face `trailing-whitespace'.

Setting this variable makes it local to the current buffer.
(custom-declare-variable 'show-trailing-whitespace 'nil '(#$ . -30800) :tag "Highlight trailing whitespace." :set #'(lambda (symbol value) (set-default symbol value)) :type 'boolean :group 'font-lock)
(custom-declare-group 'scrolling nil "Scrolling windows." :version "21.1" :group 'frames)
#@145 *Allow or disallow automatic scrolling windows horizontally.
If non-nil, windows are automatically scrolled horizontally to make
point visible.
(custom-declare-variable 'automatic-hscrolling 't '(#$ . -31235) :version "21.1" :type 'boolean :group 'scrolling)
(custom-declare-group 'cursor nil "Displaying text cursors." :version "21.1" :group 'frames)
#@59 *Seconds of idle time after which cursor starts to blink.
(custom-declare-variable 'blink-cursor-delay '0.5 '(#$ . -31593) :tag "Delay in seconds." :type 'number :group 'cursor)
#@46 *Length of cursor blink interval in seconds.
(custom-declare-variable 'blink-cursor-interval '0.5 '(#$ . -31777) :tag "Blink interval in seconds." :type 'number :group 'cursor)
#@136 Timer started after `blink-cursor-delay' seconds of Emacs idle time.
The function `blink-cursor-start' is called when the timer fires.
(defvar blink-cursor-idle-timer nil (#$ . 31961))
#@113 Timer started from `blink-cursor-start'.
This timer calls `blink-cursor' every `blink-cursor-interval' seconds.
(defvar blink-cursor-timer nil (#$ . 32153))
#@42 Non-nil means blinking cursor is active.
(defvar blink-cursor-mode nil (#$ . 32316))
#@185 Toggle blinking cursor mode.
With a numeric argument, turn blinking cursor mode on iff ARG is positive.
When blinking cursor mode is enabled, the cursor of the selected
window blinks.
(defalias 'blink-cursor-mode #[(arg) "\204	 	?\202 \306!\307V\203 \310!\210\f\203 \310\f!\210\311\311\311\n\2035 \312\211\313#\314\211\2029 \315\311\314\")\207" [arg blink-cursor-mode on-p blink-cursor-idle-timer blink-cursor-timer blink-cursor-delay prefix-numeric-value 0 cancel-timer nil run-with-idle-timer blink-cursor-start t internal-show-cursor] 4 (#$ . 32408) "P"])
#@48 *Non-nil means blinking cursor mode is active.
(custom-declare-variable 'blink-cursor 'nil '(#$ . -32987) :group 'cursor :tag "Blinking cursor" :type 'boolean :set #'(lambda (symbol value) (set-default symbol value) (blink-cursor-mode (or value 0))))
#@257 Timer function called from the timer `blink-cursor-idle-timer'.
This starts the timer `blink-cursor-timer', which makes the cursor blink
if appropriate.  It also arranges to cancel that timer when the next
command starts, by installing a pre-command hook.
(defalias 'blink-cursor-start #[nil "?\205 \302\303\304\"\210\305	\211\306#\211\207" [blink-cursor-timer blink-cursor-interval add-hook pre-command-hook blink-cursor-end run-with-timer blink-cursor-timer-function] 4 (#$ . 33245)])
#@47 Timer function of timer `blink-cursor-timer'.
(defalias 'blink-cursor-timer-function #[nil "\300\301\302 ?\"\207" [internal-show-cursor nil internal-show-cursor-p] 3 (#$ . 33741)])
#@183 Stop cursor blinking.
This is installed as a pre-command hook by `blink-cursor-start'.
When run, it cancels the timer `blink-cursor-timer' and removes 
itself as a pre-command hook.
(defalias 'blink-cursor-end #[nil "\301\302\303\"\210\304\305\306\"\210\307!\210\305\211\207" [blink-cursor-timer remove-hook pre-command-hook blink-cursor-end internal-show-cursor nil t cancel-timer] 3 (#$ . 33929)])
#@78 *Non-nil means show an hourglass pointer when running under a window system.
(custom-declare-variable 'display-hourglass 't '(#$ . -34337) :tag "Hourglass pointer" :type 'boolean :group 'cursor)
#@58 *Seconds to wait before displaying an hourglass pointer.
(custom-declare-variable 'hourglass-delay '1 '(#$ . -34538) :tag "Hourglass delay" :type 'number :group 'cursor)
#@185 *Non-nil means show a hollow box cursor in non-selected-windows.
If nil, don't show a cursor except in the selected window.
Use Custom to set this variable to get the display updated.
(custom-declare-variable 'cursor-in-non-selected-windows 't '(#$ . -34715) :tag "Cursor in non-selected windows" :type 'boolean :group 'cursor :set #'(lambda (symbol value) (set-default symbol value) (force-mode-line-update t)))
(byte-code "\301\302\303#\210\301\304\305#\210\301\306\307#\210\301\310\311#\210\312\313!\207" [ctl-x-5-map define-key "2" make-frame-command "1" delete-other-frames "0" delete-frame "o" other-frame provide frame] 4)
