aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--doc/lispref/internals.texi7
-rw-r--r--lisp/term/ns-win.el9
-rw-r--r--lisp/term/pc-win.el138
-rw-r--r--src/doc.c42
-rw-r--r--src/dosfns.c6
-rw-r--r--src/frame.c2
-rw-r--r--src/nsfns.m163
-rw-r--r--src/nsmenu.m2
-rw-r--r--src/nsterm.m16
-rw-r--r--src/w16select.c36
-rw-r--r--src/w32fns.c275
-rw-r--r--src/w32menu.c2
-rw-r--r--src/w32select.c36
-rw-r--r--src/w32term.c27
-rw-r--r--src/xfns.c82
-rw-r--r--src/xmenu.c10
16 files changed, 170 insertions, 683 deletions
diff --git a/doc/lispref/internals.texi b/doc/lispref/internals.texi
index 8bf9abfc614..76be7bf0ac6 100644
--- a/doc/lispref/internals.texi
+++ b/doc/lispref/internals.texi
@@ -758,6 +758,13 @@ names in the documentation string from the ones used in the C code.
758@samp{usage:} is required if the function has an unlimited number of 758@samp{usage:} is required if the function has an unlimited number of
759arguments. 759arguments.
760 760
761Some primitives have multiple definitions, one per platform (e.g.,
762@code{x-create-frame}). In such cases, rather than writing the
763same documentation string in each definition, only one definition has
764the actual documentation. The others have placeholders beginning with
765@samp{SKIP}, which are ignored by the function that parses the
766@file{DOC} file.
767
761All the usual rules for documentation strings in Lisp code 768All the usual rules for documentation strings in Lisp code
762(@pxref{Documentation Tips}) apply to C code documentation strings 769(@pxref{Documentation Tips}) apply to C code documentation strings
763too. 770too.
diff --git a/lisp/term/ns-win.el b/lisp/term/ns-win.el
index ca2cc725a66..7d89ec33a46 100644
--- a/lisp/term/ns-win.el
+++ b/lisp/term/ns-win.el
@@ -437,14 +437,7 @@ Lines are highlighted according to `ns-input-line'."
437;;;; File handling. 437;;;; File handling.
438 438
439(defun x-file-dialog (prompt dir default_filename mustmatch only_dir_p) 439(defun x-file-dialog (prompt dir default_filename mustmatch only_dir_p)
440"Read file name, prompting with PROMPT in directory DIR. 440"SKIP: real doc in xfns.c."
441Use a file selection dialog. Select DEFAULT-FILENAME in the dialog's file
442selection box, if specified. If MUSTMATCH is non-nil, the returned file
443or directory must exist.
444
445This function is only defined on NS, MS Windows, and X Windows with the
446Motif or Gtk toolkits. With the Motif toolkit, ONLY-DIR-P is ignored.
447Otherwise, if ONLY-DIR-P is non-nil, the user can only select directories."
448 (ns-read-file-name prompt dir mustmatch default_filename only_dir_p)) 441 (ns-read-file-name prompt dir mustmatch default_filename only_dir_p))
449 442
450(defun ns-open-file-using-panel () 443(defun ns-open-file-using-panel ()
diff --git a/lisp/term/pc-win.el b/lisp/term/pc-win.el
index 3ed21b8e436..9c1b471d484 100644
--- a/lisp/term/pc-win.el
+++ b/lisp/term/pc-win.el
@@ -158,159 +158,59 @@ created."
158;; a useful function for returning 'nil regardless of argument. 158;; a useful function for returning 'nil regardless of argument.
159 159
160;; Note: Any re-definition in this file of a function that is defined 160;; Note: Any re-definition in this file of a function that is defined
161;; in C on other platforms, should either have no doc-string, or one 161;; in C on other platforms, should either have a doc-string that
162;; that is identical to the C version, but with the arglist signature 162;; starts with "SKIP", or one that is identical to the C version,
163;; at the end. Otherwise help-split-fundoc gets confused on other 163;; but with the arglist signature at the end. Otherwise
164;; platforms. (Bug#10783) 164;; help-split-fundoc gets confused on other platforms. (Bug#10783)
165 165
166;; From src/xfns.c
167(defun x-list-fonts (_pattern &optional _face _frame _maximum width) 166(defun x-list-fonts (_pattern &optional _face _frame _maximum width)
168 "Return a list of the names of available fonts matching PATTERN. 167 "SKIP: real doc in xfaces.c."
169If optional arguments FACE and FRAME are specified, return only fonts
170the same size as FACE on FRAME.
171
172PATTERN should be a string containing a font name in the XLFD,
173Fontconfig, or GTK format. A font name given in the XLFD format may
174contain wildcard characters:
175 the * character matches any substring, and
176 the ? character matches any single character.
177 PATTERN is case-insensitive.
178
179The return value is a list of strings, suitable as arguments to
180`set-face-font'.
181
182Fonts Emacs can't use may or may not be excluded
183even if they match PATTERN and FACE.
184The optional fourth argument MAXIMUM sets a limit on how many
185fonts to match. The first MAXIMUM fonts are reported.
186The optional fifth argument WIDTH, if specified, is a number of columns
187occupied by a character of a font. In that case, return only fonts
188the WIDTH times as wide as FACE on FRAME."
189 (if (or (null width) (and (numberp width) (= width 1))) 168 (if (or (null width) (and (numberp width) (= width 1)))
190 (list "ms-dos") 169 (list "ms-dos")
191 (list "no-such-font"))) 170 (list "no-such-font")))
192(defun x-display-pixel-width (&optional frame) 171(defun x-display-pixel-width (&optional frame)
193 "Return the width in pixels of DISPLAY. 172 "SKIP: real doc in xfns.c."
194The optional argument DISPLAY specifies which display to ask about.
195DISPLAY should be either a frame or a display name (a string).
196If omitted or nil, that stands for the selected frame's display.
197
198On \"multi-monitor\" setups this refers to the pixel width for all
199physical monitors associated with DISPLAY. To get information for
200each physical monitor, use `display-monitor-attributes-list'."
201 (frame-width frame)) 173 (frame-width frame))
202(defun x-display-pixel-height (&optional frame) 174(defun x-display-pixel-height (&optional frame)
203 "Return the height in pixels of DISPLAY. 175 "SKIP: real doc in xfns.c."
204The optional argument DISPLAY specifies which display to ask about.
205DISPLAY should be either a frame or a display name (a string).
206If omitted or nil, that stands for the selected frame's display.
207
208On \"multi-monitor\" setups this refers to the pixel height for all
209physical monitors associated with DISPLAY. To get information for
210each physical monitor, use `display-monitor-attributes-list'."
211 (frame-height frame)) 176 (frame-height frame))
212(defun x-display-planes (&optional _frame) 177(defun x-display-planes (&optional _frame)
213 "Return the number of bitplanes of DISPLAY. 178 "SKIP: real doc in xfns.c."
214The optional argument DISPLAY specifies which display to ask about.
215DISPLAY should be either a frame or a display name (a string).
216If omitted or nil, that stands for the selected frame's display."
217 4) ;bg switched to 16 colors as well 179 4) ;bg switched to 16 colors as well
218(defun x-display-color-cells (&optional _frame) 180(defun x-display-color-cells (&optional _frame)
219 "Return the number of color cells of DISPLAY. 181 "SKIP: real doc in xfns.c."
220The optional argument DISPLAY specifies which display to ask about.
221DISPLAY should be either a frame or a display name (a string).
222If omitted or nil, that stands for the selected frame's display."
223 16) 182 16)
224(defun x-server-max-request-size (&optional _frame) 183(defun x-server-max-request-size (&optional _frame)
225 "Return the maximum request size of the server of DISPLAY. 184 "SKIP: real doc in xfns.c."
226The optional argument DISPLAY specifies which display to ask about.
227DISPLAY should be either a frame or a display name (a string).
228If omitted or nil, that stands for the selected frame's display."
229 1000000) ; ??? 185 1000000) ; ???
230(defun x-server-vendor (&optional _frame) 186(defun x-server-vendor (&optional _frame)
231 "Return the \"vendor ID\" string of the GUI software on TERMINAL. 187 "SKIP: real doc in xfns.c."
232
233\(Labeling every distributor as a \"vendor\" embodies the false assumption
234that operating systems cannot be developed and distributed noncommercially.)
235
236For GNU and Unix systems, this queries the X server software; for
237MS-Windows, this queries the OS.
238
239The optional argument TERMINAL specifies which display to ask about.
240TERMINAL should be a terminal object, a frame or a display name (a string).
241If omitted or nil, that stands for the selected frame's display."
242 "GNU") 188 "GNU")
243(defun x-server-version (&optional _frame) 189(defun x-server-version (&optional _frame)
244 "Return the version numbers of the GUI software on TERMINAL. 190 "SKIP: real doc in xfns.c."
245The value is a list of three integers specifying the version of the GUI
246software in use.
247
248For GNU and Unix system, the first 2 numbers are the version of the X
249Protocol used on TERMINAL and the 3rd number is the distributor-specific
250release number. For MS-Windows, the 3 numbers report the version and
251the build number of the OS.
252
253See also the function `x-server-vendor'.
254
255The optional argument TERMINAL specifies which display to ask about.
256TERMINAL should be a terminal object, a frame or a display name (a string).
257If omitted or nil, that stands for the selected frame's display."
258 '(1 0 0)) 191 '(1 0 0))
259(defun x-display-screens (&optional _frame) 192(defun x-display-screens (&optional _frame)
260 "Return the number of screens on the server of DISPLAY. 193 "SKIP: real doc in xfns.c."
261The optional argument DISPLAY specifies which display to ask about.
262DISPLAY should be either a frame or a display name (a string).
263If omitted or nil, that stands for the selected frame's display."
264 1) 194 1)
265(defun x-display-mm-height (&optional _frame) 195(defun x-display-mm-height (&optional _frame)
266 "Return the height in millimeters of DISPLAY. 196 "SKIP: real doc in xfns.c."
267The optional argument DISPLAY specifies which display to ask about.
268DISPLAY should be either a frame or a display name (a string).
269If omitted or nil, that stands for the selected frame's display.
270
271On \"multi-monitor\" setups this refers to the height in millimeters for
272all physical monitors associated with DISPLAY. To get information
273for each physical monitor, use `display-monitor-attributes-list'."
274 245) ; Guess the size of my... 197 245) ; Guess the size of my...
275(defun x-display-mm-width (&optional _frame) 198(defun x-display-mm-width (&optional _frame)
276 "Return the width in millimeters of DISPLAY. 199 "SKIP: real doc in xfns.c."
277The optional argument DISPLAY specifies which display to ask about.
278DISPLAY should be either a frame or a display name (a string).
279If omitted or nil, that stands for the selected frame's display.
280
281On \"multi-monitor\" setups this refers to the width in millimeters for
282all physical monitors associated with TERMINAL. To get information
283for each physical monitor, use `display-monitor-attributes-list'."
284 322) ; ...monitor, EZ... 200 322) ; ...monitor, EZ...
285(defun x-display-backing-store (&optional _frame) 201(defun x-display-backing-store (&optional _frame)
286 "Return an indication of whether DISPLAY does backing store. 202 "SKIP: real doc in xfns.c."
287The value may be `always', `when-mapped', or `not-useful'.
288The optional argument DISPLAY specifies which display to ask about.
289DISPLAY should be either a frame or a display name (a string).
290If omitted or nil, that stands for the selected frame's display."
291 'not-useful) 203 'not-useful)
292(defun x-display-visual-class (&optional _frame) 204(defun x-display-visual-class (&optional _frame)
293 "Return the visual class of DISPLAY. 205 "SKIP: real doc in xfns.c."
294The value is one of the symbols `static-gray', `gray-scale',
295`static-color', `pseudo-color', `true-color', or `direct-color'.
296
297The optional argument DISPLAY specifies which display to ask about.
298DISPLAY should be either a frame or a display name (a string).
299If omitted or nil, that stands for the selected frame's display."
300 'static-color) 206 'static-color)
301(fset 'x-display-save-under 'ignore) 207(fset 'x-display-save-under 'ignore)
302(fset 'x-get-resource 'ignore) 208(fset 'x-get-resource 'ignore)
303 209
304;; From lisp/term/x-win.el
305(defvar x-display-name "pc" 210(defvar x-display-name "pc"
306 "The name of the window display on which Emacs was started. 211 "SKIP: real doc in common-win.el.")
307On X, the display name of individual X frames is recorded in the
308`display' frame parameter.")
309(defvar x-colors (mapcar 'car msdos-color-values) 212(defvar x-colors (mapcar 'car msdos-color-values)
310 "List of basic colors available on color displays. 213 "SKIP: real doc in common-win.el.")
311For X, the list comes from the `rgb.txt' file,v 10.41 94/02/20.
312For Nextstep, this is a list of non-PANTONE colors returned by
313the operating system.")
314 214
315;; From lisp/term/w32-win.el 215;; From lisp/term/w32-win.el
316; 216;
diff --git a/src/doc.c b/src/doc.c
index 3424bffdf9a..4264ed50640 100644
--- a/src/doc.c
+++ b/src/doc.c
@@ -535,7 +535,6 @@ the same file name is found in the `doc-directory'. */)
535 EMACS_INT pos; 535 EMACS_INT pos;
536 Lisp_Object sym; 536 Lisp_Object sym;
537 char *p, *name; 537 char *p, *name;
538 bool skip_file = 0;
539 ptrdiff_t count; 538 ptrdiff_t count;
540 char const *dirname; 539 char const *dirname;
541 ptrdiff_t dirlen; 540 ptrdiff_t dirlen;
@@ -609,34 +608,24 @@ the same file name is found in the `doc-directory'. */)
609 { 608 {
610 end = strchr (p, '\n'); 609 end = strchr (p, '\n');
611 610
612 /* See if this is a file name, and if it is a file in build-files. */ 611 /* We used to skip files not in build_files, so that when a
613 if (p[1] == 'S') 612 function was defined several times in different files
614 { 613 (typically, once in xterm, once in w32term, ...), we only
615 skip_file = 0; 614 paid attention to the relevant one.
616 if (end - p > 4 && end[-2] == '.' 615
617 && (end[-1] == 'o' || end[-1] == 'c')) 616 But this meant the doc had to be kept and updated in
618 { 617 multiple files. Nowadays we keep the doc only in eg xterm.
619 ptrdiff_t len = end - p - 2; 618 The (f)boundp checks below ensure we don't report
620 char *fromfile = SAFE_ALLOCA (len + 1); 619 docs for eg w32-specific items on X.
621 memcpy (fromfile, &p[2], len); 620 */
622 fromfile[len] = 0;
623 if (fromfile[len-1] == 'c')
624 fromfile[len-1] = 'o';
625
626 skip_file = NILP (Fmember (build_string (fromfile),
627 Vbuild_files));
628 }
629 }
630 621
631 sym = oblookup (Vobarray, p + 2, 622 sym = oblookup (Vobarray, p + 2,
632 multibyte_chars_in_text ((unsigned char *) p + 2, 623 multibyte_chars_in_text ((unsigned char *) p + 2,
633 end - p - 2), 624 end - p - 2),
634 end - p - 2); 625 end - p - 2);
635 /* Check skip_file so that when a function is defined several 626 /* Ignore docs that start with SKIP. These mark
636 times in different files (typically, once in xterm, once in 627 placeholders where the real doc is elsewhere. */
637 w32term, ...), we only pay attention to the one that 628 if (SYMBOLP (sym))
638 matters. */
639 if (! skip_file && SYMBOLP (sym))
640 { 629 {
641 /* Attach a docstring to a variable? */ 630 /* Attach a docstring to a variable? */
642 if (p[1] == 'V') 631 if (p[1] == 'V')
@@ -644,8 +633,9 @@ the same file name is found in the `doc-directory'. */)
644 /* Install file-position as variable-documentation property 633 /* Install file-position as variable-documentation property
645 and make it negative for a user-variable 634 and make it negative for a user-variable
646 (doc starts with a `*'). */ 635 (doc starts with a `*'). */
647 if (!NILP (Fboundp (sym)) 636 if ((!NILP (Fboundp (sym))
648 || !NILP (Fmemq (sym, delayed_init))) 637 || !NILP (Fmemq (sym, delayed_init)))
638 && strncmp (end, "\nSKIP", 5))
649 Fput (sym, Qvariable_documentation, 639 Fput (sym, Qvariable_documentation,
650 make_number ((pos + end + 1 - buf) 640 make_number ((pos + end + 1 - buf)
651 * (end[1] == '*' ? -1 : 1))); 641 * (end[1] == '*' ? -1 : 1)));
@@ -654,7 +644,7 @@ the same file name is found in the `doc-directory'. */)
654 /* Attach a docstring to a function? */ 644 /* Attach a docstring to a function? */
655 else if (p[1] == 'F') 645 else if (p[1] == 'F')
656 { 646 {
657 if (!NILP (Ffboundp (sym))) 647 if (!NILP (Ffboundp (sym)) && strncmp (end, "\nSKIP", 5))
658 store_function_docstring (sym, pos + end + 1 - buf); 648 store_function_docstring (sym, pos + end + 1 - buf);
659 } 649 }
660 else if (p[1] == 'S') 650 else if (p[1] == 'S')
diff --git a/src/dosfns.c b/src/dosfns.c
index c6d4d5b8d82..f9845a3049d 100644
--- a/src/dosfns.c
+++ b/src/dosfns.c
@@ -480,11 +480,7 @@ x_set_title (struct frame *f, Lisp_Object name)
480#endif /* !HAVE_X_WINDOWS */ 480#endif /* !HAVE_X_WINDOWS */
481 481
482DEFUN ("file-system-info", Ffile_system_info, Sfile_system_info, 1, 1, 0, 482DEFUN ("file-system-info", Ffile_system_info, Sfile_system_info, 1, 1, 0,
483 doc: /* Return storage information about the file system FILENAME is on. 483 doc: /* SKIP: real doc in fileio.c. */)
484Value is a list of floats (TOTAL FREE AVAIL), where TOTAL is the total
485storage of the file system, FREE is the free storage, and AVAIL is the
486storage available to a non-superuser. All 3 numbers are in bytes.
487If the underlying system call fails, value is nil. */)
488 (Lisp_Object filename) 484 (Lisp_Object filename)
489{ 485{
490 struct statfs stfs; 486 struct statfs stfs;
diff --git a/src/frame.c b/src/frame.c
index 9eac242ea3f..fdde3d99a93 100644
--- a/src/frame.c
+++ b/src/frame.c
@@ -317,7 +317,7 @@ predicates which report frame's specific UI-related capabilities. */)
317/* Placeholder used by temacs -nw before window.el is loaded. */ 317/* Placeholder used by temacs -nw before window.el is loaded. */
318DEFUN ("frame-windows-min-size", Fframe_windows_min_size, 318DEFUN ("frame-windows-min-size", Fframe_windows_min_size,
319 Sframe_windows_min_size, 4, 4, 0, 319 Sframe_windows_min_size, 4, 4, 0,
320 doc: /* */ 320 doc: /* SKIP: real doc in window.el. */
321 attributes: const) 321 attributes: const)
322 (Lisp_Object frame, Lisp_Object horizontal, 322 (Lisp_Object frame, Lisp_Object horizontal,
323 Lisp_Object ignore, Lisp_Object pixelwise) 323 Lisp_Object ignore, Lisp_Object pixelwise)
diff --git a/src/nsfns.m b/src/nsfns.m
index 06827f6dd19..6407560d89e 100644
--- a/src/nsfns.m
+++ b/src/nsfns.m
@@ -998,15 +998,7 @@ get_geometry_from_preferences (struct ns_display_info *dpyinfo,
998 998
999DEFUN ("x-create-frame", Fx_create_frame, Sx_create_frame, 999DEFUN ("x-create-frame", Fx_create_frame, Sx_create_frame,
1000 1, 1, 0, 1000 1, 1, 0,
1001 doc: /* Make a new Nextstep window, called a "frame" in Emacs terms. 1001 doc: /* SKIP: real doc in xfns.c. */)
1002Return an Emacs frame object.
1003PARMS is an alist of frame parameters.
1004If the parameters specify that the frame should not have a minibuffer,
1005and do not specify a specific minibuffer window to use,
1006then `default-minibuffer-frame' must be a frame whose minibuffer can
1007be shared by the new frame.
1008
1009This function is an internal primitive--use `make-frame' instead. */)
1010 (Lisp_Object parms) 1002 (Lisp_Object parms)
1011{ 1003{
1012 struct frame *f; 1004 struct frame *f;
@@ -1702,7 +1694,7 @@ If VALUE is nil, the default is removed. */)
1702DEFUN ("x-server-max-request-size", Fx_server_max_request_size, 1694DEFUN ("x-server-max-request-size", Fx_server_max_request_size,
1703 Sx_server_max_request_size, 1695 Sx_server_max_request_size,
1704 0, 1, 0, 1696 0, 1, 0,
1705 doc: /* This function is a no-op. It is only present for completeness. */) 1697 doc: /* SKIP: real doc in xfns.c. */)
1706 (Lisp_Object terminal) 1698 (Lisp_Object terminal)
1707{ 1699{
1708 check_ns_display_info (terminal); 1700 check_ns_display_info (terminal);
@@ -1713,12 +1705,7 @@ DEFUN ("x-server-max-request-size", Fx_server_max_request_size,
1713 1705
1714 1706
1715DEFUN ("x-server-vendor", Fx_server_vendor, Sx_server_vendor, 0, 1, 0, 1707DEFUN ("x-server-vendor", Fx_server_vendor, Sx_server_vendor, 0, 1, 0,
1716 doc: /* Return the "vendor ID" string of Nextstep display server TERMINAL. 1708 doc: /* SKIP: real doc in xfns.c. */)
1717\(Labeling every distributor as a "vendor" embodies the false assumption
1718that operating systems cannot be developed and distributed noncommercially.)
1719The optional argument TERMINAL specifies which display to ask about.
1720TERMINAL should be a terminal object, a frame or a display name (a string).
1721If omitted or nil, that stands for the selected frame's display. */)
1722 (Lisp_Object terminal) 1709 (Lisp_Object terminal)
1723{ 1710{
1724 check_ns_display_info (terminal); 1711 check_ns_display_info (terminal);
@@ -1731,14 +1718,7 @@ If omitted or nil, that stands for the selected frame's display. */)
1731 1718
1732 1719
1733DEFUN ("x-server-version", Fx_server_version, Sx_server_version, 0, 1, 0, 1720DEFUN ("x-server-version", Fx_server_version, Sx_server_version, 0, 1, 0,
1734 doc: /* Return the version numbers of the server of display TERMINAL. 1721 doc: /* SKIP: real doc in xfns.c. */)
1735The value is a list of three integers: the major and minor
1736version numbers of the X Protocol in use, and the distributor-specific release
1737number. See also the function `x-server-vendor'.
1738
1739The optional argument TERMINAL specifies which display to ask about.
1740TERMINAL should be a terminal object, a frame or a display name (a string).
1741If omitted or nil, that stands for the selected frame's display. */)
1742 (Lisp_Object terminal) 1722 (Lisp_Object terminal)
1743{ 1723{
1744 check_ns_display_info (terminal); 1724 check_ns_display_info (terminal);
@@ -1753,14 +1733,7 @@ If omitted or nil, that stands for the selected frame's display. */)
1753 1733
1754 1734
1755DEFUN ("x-display-screens", Fx_display_screens, Sx_display_screens, 0, 1, 0, 1735DEFUN ("x-display-screens", Fx_display_screens, Sx_display_screens, 0, 1, 0,
1756 doc: /* Return the number of screens on Nextstep display server TERMINAL. 1736 doc: /* SKIP: real doc in xfns.c. */)
1757The optional argument TERMINAL specifies which display to ask about.
1758TERMINAL should be a terminal object, a frame or a display name (a string).
1759If omitted or nil, that stands for the selected frame's display.
1760
1761Note: "screen" here is not in Nextstep terminology but in X11's. For
1762the number of physical monitors, use `(length
1763\(display-monitor-attributes-list TERMINAL))' instead. */)
1764 (Lisp_Object terminal) 1737 (Lisp_Object terminal)
1765{ 1738{
1766 check_ns_display_info (terminal); 1739 check_ns_display_info (terminal);
@@ -1769,14 +1742,7 @@ the number of physical monitors, use `(length
1769 1742
1770 1743
1771DEFUN ("x-display-mm-height", Fx_display_mm_height, Sx_display_mm_height, 0, 1, 0, 1744DEFUN ("x-display-mm-height", Fx_display_mm_height, Sx_display_mm_height, 0, 1, 0,
1772 doc: /* Return the height in millimeters of the Nextstep display TERMINAL. 1745 doc: /* SKIP: real doc in xfns.c. */)
1773The optional argument TERMINAL specifies which display to ask about.
1774TERMINAL should be a terminal object, a frame or a display name (a string).
1775If omitted or nil, that stands for the selected frame's display.
1776
1777On \"multi-monitor\" setups this refers to the height in millimeters for
1778all physical monitors associated with TERMINAL. To get information
1779for each physical monitor, use `display-monitor-attributes-list'. */)
1780 (Lisp_Object terminal) 1746 (Lisp_Object terminal)
1781{ 1747{
1782 struct ns_display_info *dpyinfo = check_ns_display_info (terminal); 1748 struct ns_display_info *dpyinfo = check_ns_display_info (terminal);
@@ -1786,14 +1752,7 @@ for each physical monitor, use `display-monitor-attributes-list'. */)
1786 1752
1787 1753
1788DEFUN ("x-display-mm-width", Fx_display_mm_width, Sx_display_mm_width, 0, 1, 0, 1754DEFUN ("x-display-mm-width", Fx_display_mm_width, Sx_display_mm_width, 0, 1, 0,
1789 doc: /* Return the width in millimeters of the Nextstep display TERMINAL. 1755 doc: /* SKIP: real doc in xfns.c. */)
1790The optional argument TERMINAL specifies which display to ask about.
1791TERMINAL should be a terminal object, a frame or a display name (a string).
1792If omitted or nil, that stands for the selected frame's display.
1793
1794On \"multi-monitor\" setups this refers to the width in millimeters for
1795all physical monitors associated with TERMINAL. To get information
1796for each physical monitor, use `display-monitor-attributes-list'. */)
1797 (Lisp_Object terminal) 1756 (Lisp_Object terminal)
1798{ 1757{
1799 struct ns_display_info *dpyinfo = check_ns_display_info (terminal); 1758 struct ns_display_info *dpyinfo = check_ns_display_info (terminal);
@@ -1804,14 +1763,11 @@ for each physical monitor, use `display-monitor-attributes-list'. */)
1804 1763
1805DEFUN ("x-display-backing-store", Fx_display_backing_store, 1764DEFUN ("x-display-backing-store", Fx_display_backing_store,
1806 Sx_display_backing_store, 0, 1, 0, 1765 Sx_display_backing_store, 0, 1, 0,
1807 doc: /* Return an indication of whether the Nextstep display TERMINAL does backing store. 1766 doc: /* SKIP: real doc in xfns.c. */)
1808The value may be `buffered', `retained', or `non-retained'.
1809The optional argument TERMINAL specifies which display to ask about.
1810TERMINAL should be a terminal object, a frame or a display name (a string).
1811If omitted or nil, that stands for the selected frame's display. */)
1812 (Lisp_Object terminal) 1767 (Lisp_Object terminal)
1813{ 1768{
1814 check_ns_display_info (terminal); 1769 check_ns_display_info (terminal);
1770 /* Note that the xfns.c version has different return values. */
1815 switch ([ns_get_window (terminal) backingType]) 1771 switch ([ns_get_window (terminal) backingType])
1816 { 1772 {
1817 case NSBackingStoreBuffered: 1773 case NSBackingStoreBuffered:
@@ -1831,13 +1787,7 @@ If omitted or nil, that stands for the selected frame's display. */)
1831 1787
1832DEFUN ("x-display-visual-class", Fx_display_visual_class, 1788DEFUN ("x-display-visual-class", Fx_display_visual_class,
1833 Sx_display_visual_class, 0, 1, 0, 1789 Sx_display_visual_class, 0, 1, 0,
1834 doc: /* Return the visual class of the Nextstep display TERMINAL. 1790 doc: /* SKIP: real doc in xfns.c. */)
1835The value is one of the symbols `static-gray', `gray-scale',
1836`static-color', `pseudo-color', `true-color', or `direct-color'.
1837
1838The optional argument TERMINAL specifies which display to ask about.
1839TERMINAL should a terminal object, a frame or a display name (a string).
1840If omitted or nil, that stands for the selected frame's display. */)
1841 (Lisp_Object terminal) 1791 (Lisp_Object terminal)
1842{ 1792{
1843 NSWindowDepth depth; 1793 NSWindowDepth depth;
@@ -1863,10 +1813,7 @@ If omitted or nil, that stands for the selected frame's display. */)
1863 1813
1864DEFUN ("x-display-save-under", Fx_display_save_under, 1814DEFUN ("x-display-save-under", Fx_display_save_under,
1865 Sx_display_save_under, 0, 1, 0, 1815 Sx_display_save_under, 0, 1, 0,
1866 doc: /* Return t if TERMINAL supports the save-under feature. 1816 doc: /* SKIP: real doc in xfns.c. */)
1867The optional argument TERMINAL specifies which display to ask about.
1868TERMINAL should be a terminal object, a frame or a display name (a string).
1869If omitted or nil, that stands for the selected frame's display. */)
1870 (Lisp_Object terminal) 1817 (Lisp_Object terminal)
1871{ 1818{
1872 check_ns_display_info (terminal); 1819 check_ns_display_info (terminal);
@@ -1890,12 +1837,7 @@ If omitted or nil, that stands for the selected frame's display. */)
1890 1837
1891DEFUN ("x-open-connection", Fx_open_connection, Sx_open_connection, 1838DEFUN ("x-open-connection", Fx_open_connection, Sx_open_connection,
1892 1, 3, 0, 1839 1, 3, 0,
1893 doc: /* Open a connection to a display server. 1840 doc: /* SKIP: real doc in xfns.c. */)
1894DISPLAY is the name of the display to connect to.
1895Optional second arg XRM-STRING is a string of resources in xrdb format.
1896If the optional third arg MUST-SUCCEED is non-nil,
1897terminate Emacs if we can't open the connection.
1898\(In the Nextstep version, the last two arguments are currently ignored.) */)
1899 (Lisp_Object display, Lisp_Object resource_string, Lisp_Object must_succeed) 1841 (Lisp_Object display, Lisp_Object resource_string, Lisp_Object must_succeed)
1900{ 1842{
1901 struct ns_display_info *dpyinfo; 1843 struct ns_display_info *dpyinfo;
@@ -1920,10 +1862,7 @@ terminate Emacs if we can't open the connection.
1920 1862
1921DEFUN ("x-close-connection", Fx_close_connection, Sx_close_connection, 1863DEFUN ("x-close-connection", Fx_close_connection, Sx_close_connection,
1922 1, 1, 0, 1864 1, 1, 0,
1923 doc: /* Close the connection to TERMINAL's Nextstep display server. 1865 doc: /* SKIP: real doc in xfns.c. */)
1924For TERMINAL, specify a terminal object, a frame or a display name (a
1925string). If TERMINAL is nil, that stands for the selected frame's
1926terminal. */)
1927 (Lisp_Object terminal) 1866 (Lisp_Object terminal)
1928{ 1867{
1929 check_ns_display_info (terminal); 1868 check_ns_display_info (terminal);
@@ -1933,7 +1872,7 @@ terminal. */)
1933 1872
1934 1873
1935DEFUN ("x-display-list", Fx_display_list, Sx_display_list, 0, 0, 0, 1874DEFUN ("x-display-list", Fx_display_list, Sx_display_list, 0, 0, 0,
1936 doc: /* Return the list of display names that Emacs has connections to. */) 1875 doc: /* SKIP: real doc in xfns.c. */)
1937 (void) 1876 (void)
1938{ 1877{
1939 Lisp_Object result = Qnil; 1878 Lisp_Object result = Qnil;
@@ -2306,8 +2245,7 @@ x_get_focus_frame (struct frame *frame)
2306 2245
2307 2246
2308DEFUN ("xw-color-defined-p", Fxw_color_defined_p, Sxw_color_defined_p, 1, 2, 0, 2247DEFUN ("xw-color-defined-p", Fxw_color_defined_p, Sxw_color_defined_p, 1, 2, 0,
2309 doc: /* Internal function called by `color-defined-p', which see. 2248 doc: /* SKIP: real doc in xfns.c. */)
2310\(Note that the Nextstep version of this function ignores FRAME.) */)
2311 (Lisp_Object color, Lisp_Object frame) 2249 (Lisp_Object color, Lisp_Object frame)
2312{ 2250{
2313 NSColor * col; 2251 NSColor * col;
@@ -2317,7 +2255,7 @@ DEFUN ("xw-color-defined-p", Fxw_color_defined_p, Sxw_color_defined_p, 1, 2, 0,
2317 2255
2318 2256
2319DEFUN ("xw-color-values", Fxw_color_values, Sxw_color_values, 1, 2, 0, 2257DEFUN ("xw-color-values", Fxw_color_values, Sxw_color_values, 1, 2, 0,
2320 doc: /* Internal function called by `color-values', which see. */) 2258 doc: /* SKIP: real doc in xfns.c. */)
2321 (Lisp_Object color, Lisp_Object frame) 2259 (Lisp_Object color, Lisp_Object frame)
2322{ 2260{
2323 NSColor * col; 2261 NSColor * col;
@@ -2342,7 +2280,7 @@ DEFUN ("xw-color-values", Fxw_color_values, Sxw_color_values, 1, 2, 0,
2342 2280
2343 2281
2344DEFUN ("xw-display-color-p", Fxw_display_color_p, Sxw_display_color_p, 0, 1, 0, 2282DEFUN ("xw-display-color-p", Fxw_display_color_p, Sxw_display_color_p, 0, 1, 0,
2345 doc: /* Internal function called by `display-color-p', which see. */) 2283 doc: /* SKIP: real doc in xfns.c. */)
2346 (Lisp_Object terminal) 2284 (Lisp_Object terminal)
2347{ 2285{
2348 NSWindowDepth depth; 2286 NSWindowDepth depth;
@@ -2360,11 +2298,7 @@ DEFUN ("xw-display-color-p", Fxw_display_color_p, Sxw_display_color_p, 0, 1, 0,
2360 2298
2361DEFUN ("x-display-grayscale-p", Fx_display_grayscale_p, Sx_display_grayscale_p, 2299DEFUN ("x-display-grayscale-p", Fx_display_grayscale_p, Sx_display_grayscale_p,
2362 0, 1, 0, 2300 0, 1, 0,
2363 doc: /* Return t if the Nextstep display supports shades of gray. 2301 doc: /* SKIP: real doc in xfns.c. */)
2364Note that color displays do support shades of gray.
2365The optional argument TERMINAL specifies which display to ask about.
2366TERMINAL should be a terminal object, a frame or a display name (a string).
2367If omitted or nil, that stands for the selected frame's display. */)
2368 (Lisp_Object terminal) 2302 (Lisp_Object terminal)
2369{ 2303{
2370 NSWindowDepth depth; 2304 NSWindowDepth depth;
@@ -2378,14 +2312,7 @@ If omitted or nil, that stands for the selected frame's display. */)
2378 2312
2379DEFUN ("x-display-pixel-width", Fx_display_pixel_width, Sx_display_pixel_width, 2313DEFUN ("x-display-pixel-width", Fx_display_pixel_width, Sx_display_pixel_width,
2380 0, 1, 0, 2314 0, 1, 0,
2381 doc: /* Return the width in pixels of the Nextstep display TERMINAL. 2315 doc: /* SKIP: real doc in xfns.c. */)
2382The optional argument TERMINAL specifies which display to ask about.
2383TERMINAL should be a terminal object, a frame or a display name (a string).
2384If omitted or nil, that stands for the selected frame's display.
2385
2386On \"multi-monitor\" setups this refers to the pixel width for all
2387physical monitors associated with TERMINAL. To get information for
2388each physical monitor, use `display-monitor-attributes-list'. */)
2389 (Lisp_Object terminal) 2316 (Lisp_Object terminal)
2390{ 2317{
2391 struct ns_display_info *dpyinfo = check_ns_display_info (terminal); 2318 struct ns_display_info *dpyinfo = check_ns_display_info (terminal);
@@ -2396,14 +2323,7 @@ each physical monitor, use `display-monitor-attributes-list'. */)
2396 2323
2397DEFUN ("x-display-pixel-height", Fx_display_pixel_height, 2324DEFUN ("x-display-pixel-height", Fx_display_pixel_height,
2398 Sx_display_pixel_height, 0, 1, 0, 2325 Sx_display_pixel_height, 0, 1, 0,
2399 doc: /* Return the height in pixels of the Nextstep display TERMINAL. 2326 doc: /* SKIP: real doc in xfns.c. */)
2400The optional argument TERMINAL specifies which display to ask about.
2401TERMINAL should be a terminal object, a frame or a display name (a string).
2402If omitted or nil, that stands for the selected frame's display.
2403
2404On \"multi-monitor\" setups this refers to the pixel height for all
2405physical monitors associated with TERMINAL. To get information for
2406each physical monitor, use `display-monitor-attributes-list'. */)
2407 (Lisp_Object terminal) 2327 (Lisp_Object terminal)
2408{ 2328{
2409 struct ns_display_info *dpyinfo = check_ns_display_info (terminal); 2329 struct ns_display_info *dpyinfo = check_ns_display_info (terminal);
@@ -2648,10 +2568,7 @@ Internal use only, use `display-monitor-attributes-list' instead. */)
2648 2568
2649DEFUN ("x-display-planes", Fx_display_planes, Sx_display_planes, 2569DEFUN ("x-display-planes", Fx_display_planes, Sx_display_planes,
2650 0, 1, 0, 2570 0, 1, 0,
2651 doc: /* Return the number of bitplanes of the Nextstep display TERMINAL. 2571 doc: /* SKIP: real doc in xfns.c. */)
2652The optional argument TERMINAL specifies which display to ask about.
2653TERMINAL should be a terminal object, a frame or a display name (a string).
2654If omitted or nil, that stands for the selected frame's display. */)
2655 (Lisp_Object terminal) 2572 (Lisp_Object terminal)
2656{ 2573{
2657 check_ns_display_info (terminal); 2574 check_ns_display_info (terminal);
@@ -2662,10 +2579,7 @@ If omitted or nil, that stands for the selected frame's display. */)
2662 2579
2663DEFUN ("x-display-color-cells", Fx_display_color_cells, Sx_display_color_cells, 2580DEFUN ("x-display-color-cells", Fx_display_color_cells, Sx_display_color_cells,
2664 0, 1, 0, 2581 0, 1, 0,
2665 doc: /* Returns the number of color cells of the Nextstep display TERMINAL. 2582 doc: /* SKIP: real doc in xfns.c. */)
2666The optional argument TERMINAL specifies which display to ask about.
2667TERMINAL should be a terminal object, a frame or a display name (a string).
2668If omitted or nil, that stands for the selected frame's display. */)
2669 (Lisp_Object terminal) 2583 (Lisp_Object terminal)
2670{ 2584{
2671 struct ns_display_info *dpyinfo = check_ns_display_info (terminal); 2585 struct ns_display_info *dpyinfo = check_ns_display_info (terminal);
@@ -2753,35 +2667,7 @@ compute_tip_xy (struct frame *f,
2753 2667
2754 2668
2755DEFUN ("x-show-tip", Fx_show_tip, Sx_show_tip, 1, 6, 0, 2669DEFUN ("x-show-tip", Fx_show_tip, Sx_show_tip, 1, 6, 0,
2756 doc: /* Show STRING in a \"tooltip\" window on frame FRAME. 2670 doc: /* SKIP: real doc in xfns.c. */)
2757A tooltip window is a small window displaying a string.
2758
2759This is an internal function; Lisp code should call `tooltip-show'.
2760
2761FRAME nil or omitted means use the selected frame.
2762
2763PARMS is an optional list of frame parameters which can be used to
2764change the tooltip's appearance.
2765
2766Automatically hide the tooltip after TIMEOUT seconds. TIMEOUT nil
2767means use the default timeout of 5 seconds.
2768
2769If the list of frame parameters PARMS contains a `left' parameter,
2770display the tooltip at that x-position. If the list of frame parameters
2771PARMS contains no `left' but a `right' parameter, display the tooltip
2772right-adjusted at that x-position. Otherwise display it at the
2773x-position of the mouse, with offset DX added (default is 5 if DX isn't
2774specified).
2775
2776Likewise for the y-position: If a `top' frame parameter is specified, it
2777determines the position of the upper edge of the tooltip window. If a
2778`bottom' parameter but no `top' frame parameter is specified, it
2779determines the position of the lower edge of the tooltip window.
2780Otherwise display the tooltip window at the y-position of the mouse,
2781with offset DY added (default is -10).
2782
2783A tooltip's maximum size is specified by `x-max-tooltip-size'.
2784Text larger than the specified size is clipped. */)
2785 (Lisp_Object string, Lisp_Object frame, Lisp_Object parms, Lisp_Object timeout, Lisp_Object dx, Lisp_Object dy) 2671 (Lisp_Object string, Lisp_Object frame, Lisp_Object parms, Lisp_Object timeout, Lisp_Object dx, Lisp_Object dy)
2786{ 2672{
2787 int root_x, root_y; 2673 int root_x, root_y;
@@ -2842,8 +2728,7 @@ Text larger than the specified size is clipped. */)
2842 2728
2843 2729
2844DEFUN ("x-hide-tip", Fx_hide_tip, Sx_hide_tip, 0, 0, 0, 2730DEFUN ("x-hide-tip", Fx_hide_tip, Sx_hide_tip, 0, 0, 0,
2845 doc: /* Hide the current tooltip window, if there is any. 2731 doc: /* SKIP: real doc in xfns.c. */)
2846Value is t if tooltip was open, nil otherwise. */)
2847 (void) 2732 (void)
2848{ 2733{
2849 if (ns_tooltip == nil || ![ns_tooltip isActive]) 2734 if (ns_tooltip == nil || ![ns_tooltip isActive])
diff --git a/src/nsmenu.m b/src/nsmenu.m
index 58b45fb38e5..29b0f99e642 100644
--- a/src/nsmenu.m
+++ b/src/nsmenu.m
@@ -1874,7 +1874,7 @@ DEFUN ("ns-reset-menu", Fns_reset_menu, Sns_reset_menu, 0, 0, 0,
1874 1874
1875 1875
1876DEFUN ("menu-or-popup-active-p", Fmenu_or_popup_active_p, Smenu_or_popup_active_p, 0, 0, 0, 1876DEFUN ("menu-or-popup-active-p", Fmenu_or_popup_active_p, Smenu_or_popup_active_p, 0, 0, 0,
1877 doc: /* Return t if a menu or popup dialog is active. */) 1877 doc: /* SKIP: real doc in xmenu.c. */)
1878 (void) 1878 (void)
1879{ 1879{
1880 return popup_activated () ? Qt : Qnil; 1880 return popup_activated () ? Qt : Qnil;
diff --git a/src/nsterm.m b/src/nsterm.m
index 8a66643cfb7..627a61cac62 100644
--- a/src/nsterm.m
+++ b/src/nsterm.m
@@ -9380,27 +9380,17 @@ This variable is ignored on macOS < 10.7 and GNUstep. Default is t. */);
9380 9380
9381 /* TODO: move to common code */ 9381 /* TODO: move to common code */
9382 DEFVAR_LISP ("x-toolkit-scroll-bars", Vx_toolkit_scroll_bars, 9382 DEFVAR_LISP ("x-toolkit-scroll-bars", Vx_toolkit_scroll_bars,
9383 doc: /* Which toolkit scroll bars Emacs uses, if any. 9383 doc: /* SKIP: real doc in xterm.c. */);
9384A value of nil means Emacs doesn't use toolkit scroll bars.
9385With the X Window system, the value is a symbol describing the
9386X toolkit. Possible values are: gtk, motif, xaw, or xaw3d.
9387With MS Windows or Nextstep, the value is t. */);
9388 Vx_toolkit_scroll_bars = Qt; 9384 Vx_toolkit_scroll_bars = Qt;
9389 9385
9390 DEFVAR_BOOL ("x-use-underline-position-properties", 9386 DEFVAR_BOOL ("x-use-underline-position-properties",
9391 x_use_underline_position_properties, 9387 x_use_underline_position_properties,
9392 doc: /*Non-nil means make use of UNDERLINE_POSITION font properties. 9388 doc: /* SKIP: real doc in xterm.c. */);
9393A value of nil means ignore them. If you encounter fonts with bogus
9394UNDERLINE_POSITION font properties, for example 7x13 on XFree prior
9395to 4.1, set this to nil. */);
9396 x_use_underline_position_properties = 0; 9389 x_use_underline_position_properties = 0;
9397 9390
9398 DEFVAR_BOOL ("x-underline-at-descent-line", 9391 DEFVAR_BOOL ("x-underline-at-descent-line",
9399 x_underline_at_descent_line, 9392 x_underline_at_descent_line,
9400 doc: /* Non-nil means to draw the underline at the same place as the descent line. 9393 doc: /* SKIP: real doc in xterm.c. */);
9401A value of nil means to draw the underline according to the value of the
9402variable `x-use-underline-position-properties', which is usually at the
9403baseline level. The default value is nil. */);
9404 x_underline_at_descent_line = 0; 9394 x_underline_at_descent_line = 0;
9405 9395
9406 /* Tell Emacs about this window system. */ 9396 /* Tell Emacs about this window system. */
diff --git a/src/w16select.c b/src/w16select.c
index ed3d041f2df..2d740a3ee61 100644
--- a/src/w16select.c
+++ b/src/w16select.c
@@ -678,43 +678,11 @@ syms_of_win16select (void)
678 defsubr (&Sw16_selection_exists_p); 678 defsubr (&Sw16_selection_exists_p);
679 679
680 DEFVAR_LISP ("selection-coding-system", Vselection_coding_system, 680 DEFVAR_LISP ("selection-coding-system", Vselection_coding_system,
681 doc: /* Coding system for communicating with other programs. 681 doc: /* SKIP: real doc in select.el. */);
682
683For MS-Windows and MS-DOS:
684When sending or receiving text via selection and clipboard, the text
685is encoded or decoded by this coding system. The default value is
686the current system default encoding on 9x/Me, `utf-16le-dos'
687\(Unicode) on NT/W2K/XP, and `iso-latin-1-dos' on MS-DOS.
688
689For X Windows:
690When sending text via selection and clipboard, if the target
691data-type matches with the type of this coding system, it is used
692for encoding the text. Otherwise (including the case that this
693variable is nil), a proper coding system is used as below:
694
695data-type coding system
696--------- -------------
697UTF8_STRING utf-8
698COMPOUND_TEXT compound-text-with-extensions
699STRING iso-latin-1
700C_STRING no-conversion
701
702When receiving text, if this coding system is non-nil, it is used
703for decoding regardless of the data-type. If this is nil, a
704proper coding system is used according to the data-type as above.
705
706See also the documentation of the variable `x-select-request-type' how
707to control which data-type to request for receiving text.
708
709The default value is nil. */);
710 Vselection_coding_system = intern ("iso-latin-1-dos"); 682 Vselection_coding_system = intern ("iso-latin-1-dos");
711 683
712 DEFVAR_LISP ("next-selection-coding-system", Vnext_selection_coding_system, 684 DEFVAR_LISP ("next-selection-coding-system", Vnext_selection_coding_system,
713 doc: /* Coding system for the next communication with other programs. 685 doc: /* SKIP: real doc in select.el. */);
714Usually, `selection-coding-system' is used for communicating with
715other programs (X Windows clients or MS Windows programs). But, if this
716variable is set, it is used for the next communication only.
717After the communication, this variable is set to nil. */);
718 Vnext_selection_coding_system = Qnil; 686 Vnext_selection_coding_system = Qnil;
719 687
720 DEFSYM (QCLIPBOARD, "CLIPBOARD"); 688 DEFSYM (QCLIPBOARD, "CLIPBOARD");
diff --git a/src/w32fns.c b/src/w32fns.c
index 2b8c34a5ab5..2b920f29c65 100644
--- a/src/w32fns.c
+++ b/src/w32fns.c
@@ -5670,15 +5670,7 @@ x_default_font_parameter (struct frame *f, Lisp_Object parms)
5670 5670
5671DEFUN ("x-create-frame", Fx_create_frame, Sx_create_frame, 5671DEFUN ("x-create-frame", Fx_create_frame, Sx_create_frame,
5672 1, 1, 0, 5672 1, 1, 0,
5673 doc: /* Make a new window, which is called a \"frame\" in Emacs terms. 5673 doc: /* SKIP: real doc in xfns.c. */)
5674Return an Emacs frame object.
5675PARAMETERS is an alist of frame parameters.
5676If the parameters specify that the frame should not have a minibuffer,
5677and do not specify a specific minibuffer window to use,
5678then `default-minibuffer-frame' must be a frame whose minibuffer can
5679be shared by the new frame.
5680
5681This function is an internal primitive--use `make-frame' instead. */)
5682 (Lisp_Object parameters) 5674 (Lisp_Object parameters)
5683{ 5675{
5684 struct frame *f; 5676 struct frame *f;
@@ -6097,8 +6089,7 @@ x_get_focus_frame (struct frame *frame)
6097} 6089}
6098 6090
6099DEFUN ("xw-color-defined-p", Fxw_color_defined_p, Sxw_color_defined_p, 1, 2, 0, 6091DEFUN ("xw-color-defined-p", Fxw_color_defined_p, Sxw_color_defined_p, 1, 2, 0,
6100 doc: /* Internal function called by `color-defined-p', which see. 6092 doc: /* SKIP: real doc in xfns.c. */)
6101\(Note that the Nextstep version of this function ignores FRAME.) */)
6102 (Lisp_Object color, Lisp_Object frame) 6093 (Lisp_Object color, Lisp_Object frame)
6103{ 6094{
6104 XColor foo; 6095 XColor foo;
@@ -6113,7 +6104,7 @@ DEFUN ("xw-color-defined-p", Fxw_color_defined_p, Sxw_color_defined_p, 1, 2, 0,
6113} 6104}
6114 6105
6115DEFUN ("xw-color-values", Fxw_color_values, Sxw_color_values, 1, 2, 0, 6106DEFUN ("xw-color-values", Fxw_color_values, Sxw_color_values, 1, 2, 0,
6116 doc: /* Internal function called by `color-values', which see. */) 6107 doc: /* SKIP: real doc in xfns.c. */)
6117 (Lisp_Object color, Lisp_Object frame) 6108 (Lisp_Object color, Lisp_Object frame)
6118{ 6109{
6119 XColor foo; 6110 XColor foo;
@@ -6130,7 +6121,7 @@ DEFUN ("xw-color-values", Fxw_color_values, Sxw_color_values, 1, 2, 0,
6130} 6121}
6131 6122
6132DEFUN ("xw-display-color-p", Fxw_display_color_p, Sxw_display_color_p, 0, 1, 0, 6123DEFUN ("xw-display-color-p", Fxw_display_color_p, Sxw_display_color_p, 0, 1, 0,
6133 doc: /* Internal function called by `display-color-p', which see. */) 6124 doc: /* SKIP: real doc in xfns.c. */)
6134 (Lisp_Object display) 6125 (Lisp_Object display)
6135{ 6126{
6136 struct w32_display_info *dpyinfo = check_x_display_info (display); 6127 struct w32_display_info *dpyinfo = check_x_display_info (display);
@@ -6143,11 +6134,7 @@ DEFUN ("xw-display-color-p", Fxw_display_color_p, Sxw_display_color_p, 0, 1, 0,
6143 6134
6144DEFUN ("x-display-grayscale-p", Fx_display_grayscale_p, 6135DEFUN ("x-display-grayscale-p", Fx_display_grayscale_p,
6145 Sx_display_grayscale_p, 0, 1, 0, 6136 Sx_display_grayscale_p, 0, 1, 0,
6146 doc: /* Return t if DISPLAY supports shades of gray. 6137 doc: /* SKIP: real doc in xfns.c. */)
6147Note that color displays do support shades of gray.
6148The optional argument DISPLAY specifies which display to ask about.
6149DISPLAY should be either a frame or a display name (a string).
6150If omitted or nil, that stands for the selected frame's display. */)
6151 (Lisp_Object display) 6138 (Lisp_Object display)
6152{ 6139{
6153 struct w32_display_info *dpyinfo = check_x_display_info (display); 6140 struct w32_display_info *dpyinfo = check_x_display_info (display);
@@ -6160,14 +6147,7 @@ If omitted or nil, that stands for the selected frame's display. */)
6160 6147
6161DEFUN ("x-display-pixel-width", Fx_display_pixel_width, 6148DEFUN ("x-display-pixel-width", Fx_display_pixel_width,
6162 Sx_display_pixel_width, 0, 1, 0, 6149 Sx_display_pixel_width, 0, 1, 0,
6163 doc: /* Return the width in pixels of DISPLAY. 6150 doc: /* SKIP: real doc in xfns.c. */)
6164The optional argument DISPLAY specifies which display to ask about.
6165DISPLAY should be either a frame or a display name (a string).
6166If omitted or nil, that stands for the selected frame's display.
6167
6168On \"multi-monitor\" setups this refers to the pixel width for all
6169physical monitors associated with DISPLAY. To get information for
6170each physical monitor, use `display-monitor-attributes-list'. */)
6171 (Lisp_Object display) 6151 (Lisp_Object display)
6172{ 6152{
6173 struct w32_display_info *dpyinfo = check_x_display_info (display); 6153 struct w32_display_info *dpyinfo = check_x_display_info (display);
@@ -6177,14 +6157,7 @@ each physical monitor, use `display-monitor-attributes-list'. */)
6177 6157
6178DEFUN ("x-display-pixel-height", Fx_display_pixel_height, 6158DEFUN ("x-display-pixel-height", Fx_display_pixel_height,
6179 Sx_display_pixel_height, 0, 1, 0, 6159 Sx_display_pixel_height, 0, 1, 0,
6180 doc: /* Return the height in pixels of DISPLAY. 6160 doc: /* SKIP: real doc in xfns.c. */)
6181The optional argument DISPLAY specifies which display to ask about.
6182DISPLAY should be either a frame or a display name (a string).
6183If omitted or nil, that stands for the selected frame's display.
6184
6185On \"multi-monitor\" setups this refers to the pixel height for all
6186physical monitors associated with DISPLAY. To get information for
6187each physical monitor, use `display-monitor-attributes-list'. */)
6188 (Lisp_Object display) 6161 (Lisp_Object display)
6189{ 6162{
6190 struct w32_display_info *dpyinfo = check_x_display_info (display); 6163 struct w32_display_info *dpyinfo = check_x_display_info (display);
@@ -6194,10 +6167,7 @@ each physical monitor, use `display-monitor-attributes-list'. */)
6194 6167
6195DEFUN ("x-display-planes", Fx_display_planes, Sx_display_planes, 6168DEFUN ("x-display-planes", Fx_display_planes, Sx_display_planes,
6196 0, 1, 0, 6169 0, 1, 0,
6197 doc: /* Return the number of bitplanes of DISPLAY. 6170 doc: /* SKIP: real doc in xfns.c. */)
6198The optional argument DISPLAY specifies which display to ask about.
6199DISPLAY should be either a frame or a display name (a string).
6200If omitted or nil, that stands for the selected frame's display. */)
6201 (Lisp_Object display) 6171 (Lisp_Object display)
6202{ 6172{
6203 struct w32_display_info *dpyinfo = check_x_display_info (display); 6173 struct w32_display_info *dpyinfo = check_x_display_info (display);
@@ -6207,10 +6177,7 @@ If omitted or nil, that stands for the selected frame's display. */)
6207 6177
6208DEFUN ("x-display-color-cells", Fx_display_color_cells, Sx_display_color_cells, 6178DEFUN ("x-display-color-cells", Fx_display_color_cells, Sx_display_color_cells,
6209 0, 1, 0, 6179 0, 1, 0,
6210 doc: /* Return the number of color cells of DISPLAY. 6180 doc: /* SKIP: real doc in xfns.c. */)
6211The optional argument DISPLAY specifies which display to ask about.
6212DISPLAY should be either a frame or a display name (a string).
6213If omitted or nil, that stands for the selected frame's display. */)
6214 (Lisp_Object display) 6181 (Lisp_Object display)
6215{ 6182{
6216 struct w32_display_info *dpyinfo = check_x_display_info (display); 6183 struct w32_display_info *dpyinfo = check_x_display_info (display);
@@ -6228,57 +6195,28 @@ If omitted or nil, that stands for the selected frame's display. */)
6228DEFUN ("x-server-max-request-size", Fx_server_max_request_size, 6195DEFUN ("x-server-max-request-size", Fx_server_max_request_size,
6229 Sx_server_max_request_size, 6196 Sx_server_max_request_size,
6230 0, 1, 0, 6197 0, 1, 0,
6231 doc: /* Return the maximum request size of the server of DISPLAY. 6198 doc: /* SKIP: real doc in xfns.c. */)
6232The optional argument DISPLAY specifies which display to ask about.
6233DISPLAY should be either a frame or a display name (a string).
6234If omitted or nil, that stands for the selected frame's display. */)
6235 (Lisp_Object display) 6199 (Lisp_Object display)
6236{ 6200{
6237 return make_number (1); 6201 return make_number (1);
6238} 6202}
6239 6203
6240DEFUN ("x-server-vendor", Fx_server_vendor, Sx_server_vendor, 0, 1, 0, 6204DEFUN ("x-server-vendor", Fx_server_vendor, Sx_server_vendor, 0, 1, 0,
6241 doc: /* Return the "vendor ID" string of the GUI software on TERMINAL. 6205 doc: /* SKIP: real doc in xfns.c. */)
6242
6243\(Labeling every distributor as a "vendor" embodies the false assumption
6244that operating systems cannot be developed and distributed noncommercially.)
6245
6246For GNU and Unix systems, this queries the X server software; for
6247MS-Windows, this queries the OS.
6248
6249The optional argument TERMINAL specifies which display to ask about.
6250TERMINAL should be a terminal object, a frame or a display name (a string).
6251If omitted or nil, that stands for the selected frame's display. */)
6252 (Lisp_Object terminal) 6206 (Lisp_Object terminal)
6253{ 6207{
6254 return build_string ("Microsoft Corp."); 6208 return build_string ("Microsoft Corp.");
6255} 6209}
6256 6210
6257DEFUN ("x-server-version", Fx_server_version, Sx_server_version, 0, 1, 0, 6211DEFUN ("x-server-version", Fx_server_version, Sx_server_version, 0, 1, 0,
6258 doc: /* Return the version numbers of the GUI software on TERMINAL. 6212 doc: /* SKIP: real doc in xfns.c. */)
6259The value is a list of three integers specifying the version of the GUI
6260software in use.
6261
6262For GNU and Unix system, the first 2 numbers are the version of the X
6263Protocol used on TERMINAL and the 3rd number is the distributor-specific
6264release number. For MS-Windows, the 3 numbers report the version and
6265the build number of the OS.
6266
6267See also the function `x-server-vendor'.
6268
6269The optional argument TERMINAL specifies which display to ask about.
6270TERMINAL should be a terminal object, a frame or a display name (a string).
6271If omitted or nil, that stands for the selected frame's display. */)
6272 (Lisp_Object terminal) 6213 (Lisp_Object terminal)
6273{ 6214{
6274 return list3i (w32_major_version, w32_minor_version, w32_build_number); 6215 return list3i (w32_major_version, w32_minor_version, w32_build_number);
6275} 6216}
6276 6217
6277DEFUN ("x-display-screens", Fx_display_screens, Sx_display_screens, 0, 1, 0, 6218DEFUN ("x-display-screens", Fx_display_screens, Sx_display_screens, 0, 1, 0,
6278 doc: /* Return the number of screens on the server of DISPLAY. 6219 doc: /* SKIP: real doc in xfns.c. */)
6279The optional argument DISPLAY specifies which display to ask about.
6280DISPLAY should be either a frame or a display name (a string).
6281If omitted or nil, that stands for the selected frame's display. */)
6282 (Lisp_Object display) 6220 (Lisp_Object display)
6283{ 6221{
6284 return make_number (1); 6222 return make_number (1);
@@ -6286,14 +6224,7 @@ If omitted or nil, that stands for the selected frame's display. */)
6286 6224
6287DEFUN ("x-display-mm-height", Fx_display_mm_height, 6225DEFUN ("x-display-mm-height", Fx_display_mm_height,
6288 Sx_display_mm_height, 0, 1, 0, 6226 Sx_display_mm_height, 0, 1, 0,
6289 doc: /* Return the height in millimeters of DISPLAY. 6227 doc: /* SKIP: real doc in xfns.c. */)
6290The optional argument DISPLAY specifies which display to ask about.
6291DISPLAY should be either a frame or a display name (a string).
6292If omitted or nil, that stands for the selected frame's display.
6293
6294On \"multi-monitor\" setups this refers to the height in millimeters for
6295all physical monitors associated with DISPLAY. To get information
6296for each physical monitor, use `display-monitor-attributes-list'. */)
6297 (Lisp_Object display) 6228 (Lisp_Object display)
6298{ 6229{
6299 struct w32_display_info *dpyinfo = check_x_display_info (display); 6230 struct w32_display_info *dpyinfo = check_x_display_info (display);
@@ -6309,14 +6240,7 @@ for each physical monitor, use `display-monitor-attributes-list'. */)
6309} 6240}
6310 6241
6311DEFUN ("x-display-mm-width", Fx_display_mm_width, Sx_display_mm_width, 0, 1, 0, 6242DEFUN ("x-display-mm-width", Fx_display_mm_width, Sx_display_mm_width, 0, 1, 0,
6312 doc: /* Return the width in millimeters of DISPLAY. 6243 doc: /* SKIP: real doc in xfns.c. */)
6313The optional argument DISPLAY specifies which display to ask about.
6314DISPLAY should be either a frame or a display name (a string).
6315If omitted or nil, that stands for the selected frame's display.
6316
6317On \"multi-monitor\" setups this refers to the width in millimeters for
6318all physical monitors associated with TERMINAL. To get information
6319for each physical monitor, use `display-monitor-attributes-list'. */)
6320 (Lisp_Object display) 6244 (Lisp_Object display)
6321{ 6245{
6322 struct w32_display_info *dpyinfo = check_x_display_info (display); 6246 struct w32_display_info *dpyinfo = check_x_display_info (display);
@@ -6333,11 +6257,7 @@ for each physical monitor, use `display-monitor-attributes-list'. */)
6333 6257
6334DEFUN ("x-display-backing-store", Fx_display_backing_store, 6258DEFUN ("x-display-backing-store", Fx_display_backing_store,
6335 Sx_display_backing_store, 0, 1, 0, 6259 Sx_display_backing_store, 0, 1, 0,
6336 doc: /* Return an indication of whether DISPLAY does backing store. 6260 doc: /* SKIP: real doc in xfns.c. */)
6337The value may be `always', `when-mapped', or `not-useful'.
6338The optional argument DISPLAY specifies which display to ask about.
6339DISPLAY should be either a frame or a display name (a string).
6340If omitted or nil, that stands for the selected frame's display. */)
6341 (Lisp_Object display) 6261 (Lisp_Object display)
6342{ 6262{
6343 return intern ("not-useful"); 6263 return intern ("not-useful");
@@ -6345,13 +6265,7 @@ If omitted or nil, that stands for the selected frame's display. */)
6345 6265
6346DEFUN ("x-display-visual-class", Fx_display_visual_class, 6266DEFUN ("x-display-visual-class", Fx_display_visual_class,
6347 Sx_display_visual_class, 0, 1, 0, 6267 Sx_display_visual_class, 0, 1, 0,
6348 doc: /* Return the visual class of DISPLAY. 6268 doc: /* SKIP: real doc in xfns.c. */)
6349The value is one of the symbols `static-gray', `gray-scale',
6350`static-color', `pseudo-color', `true-color', or `direct-color'.
6351
6352The optional argument DISPLAY specifies which display to ask about.
6353DISPLAY should be either a frame or a display name (a string).
6354If omitted or nil, that stands for the selected frame's display. */)
6355 (Lisp_Object display) 6269 (Lisp_Object display)
6356{ 6270{
6357 struct w32_display_info *dpyinfo = check_x_display_info (display); 6271 struct w32_display_info *dpyinfo = check_x_display_info (display);
@@ -6360,7 +6274,7 @@ If omitted or nil, that stands for the selected frame's display. */)
6360 if (dpyinfo->has_palette) 6274 if (dpyinfo->has_palette)
6361 result = intern ("pseudo-color"); 6275 result = intern ("pseudo-color");
6362 else if (dpyinfo->n_planes * dpyinfo->n_cbits == 1) 6276 else if (dpyinfo->n_planes * dpyinfo->n_cbits == 1)
6363 result = intern ("static-grey"); 6277 result = intern ("static-gray");
6364 else if (dpyinfo->n_planes * dpyinfo->n_cbits == 4) 6278 else if (dpyinfo->n_planes * dpyinfo->n_cbits == 4)
6365 result = intern ("static-color"); 6279 result = intern ("static-color");
6366 else if (dpyinfo->n_planes * dpyinfo->n_cbits > 8) 6280 else if (dpyinfo->n_planes * dpyinfo->n_cbits > 8)
@@ -6371,10 +6285,7 @@ If omitted or nil, that stands for the selected frame's display. */)
6371 6285
6372DEFUN ("x-display-save-under", Fx_display_save_under, 6286DEFUN ("x-display-save-under", Fx_display_save_under,
6373 Sx_display_save_under, 0, 1, 0, 6287 Sx_display_save_under, 0, 1, 0,
6374 doc: /* Return t if DISPLAY supports the save-under feature. 6288 doc: /* SKIP: real doc in xfns.c. */)
6375The optional argument DISPLAY specifies which display to ask about.
6376DISPLAY should be either a frame or a display name (a string).
6377If omitted or nil, that stands for the selected frame's display. */)
6378 (Lisp_Object display) 6289 (Lisp_Object display)
6379{ 6290{
6380 return Qnil; 6291 return Qnil;
@@ -6639,12 +6550,7 @@ x_display_info_for_name (Lisp_Object name)
6639} 6550}
6640 6551
6641DEFUN ("x-open-connection", Fx_open_connection, Sx_open_connection, 6552DEFUN ("x-open-connection", Fx_open_connection, Sx_open_connection,
6642 1, 3, 0, doc: /* Open a connection to a display server. 6553 1, 3, 0, doc: /* SKIP: real doc in xfns.c. */)
6643DISPLAY is the name of the display to connect to.
6644Optional second arg XRM-STRING is a string of resources in xrdb format.
6645If the optional third arg MUST-SUCCEED is non-nil,
6646terminate Emacs if we can't open the connection.
6647\(In the Nextstep version, the last two arguments are currently ignored.) */)
6648 (Lisp_Object display, Lisp_Object xrm_string, Lisp_Object must_succeed) 6554 (Lisp_Object display, Lisp_Object xrm_string, Lisp_Object must_succeed)
6649{ 6555{
6650 char *xrm_option; 6556 char *xrm_option;
@@ -6726,9 +6632,7 @@ terminate Emacs if we can't open the connection.
6726 6632
6727DEFUN ("x-close-connection", Fx_close_connection, 6633DEFUN ("x-close-connection", Fx_close_connection,
6728 Sx_close_connection, 1, 1, 0, 6634 Sx_close_connection, 1, 1, 0,
6729 doc: /* Close the connection to DISPLAY's server. 6635 doc: /* SKIP: real doc in xfns.c. */)
6730For DISPLAY, specify either a frame or a display name (a string).
6731If DISPLAY is nil, that stands for the selected frame's display. */)
6732 (Lisp_Object display) 6636 (Lisp_Object display)
6733{ 6637{
6734 struct w32_display_info *dpyinfo = check_x_display_info (display); 6638 struct w32_display_info *dpyinfo = check_x_display_info (display);
@@ -6746,7 +6650,7 @@ If DISPLAY is nil, that stands for the selected frame's display. */)
6746} 6650}
6747 6651
6748DEFUN ("x-display-list", Fx_display_list, Sx_display_list, 0, 0, 0, 6652DEFUN ("x-display-list", Fx_display_list, Sx_display_list, 0, 0, 0,
6749 doc: /* Return the list of display names that Emacs has connections to. */) 6653 doc: /* SKIP: real doc in xfns.c. */)
6750 (void) 6654 (void)
6751{ 6655{
6752 Lisp_Object result = Qnil; 6656 Lisp_Object result = Qnil;
@@ -6759,17 +6663,7 @@ DEFUN ("x-display-list", Fx_display_list, Sx_display_list, 0, 0, 0,
6759} 6663}
6760 6664
6761DEFUN ("x-synchronize", Fx_synchronize, Sx_synchronize, 1, 2, 0, 6665DEFUN ("x-synchronize", Fx_synchronize, Sx_synchronize, 1, 2, 0,
6762 doc: /* If ON is non-nil, report X errors as soon as the erring request is made. 6666 doc: /* SKIP: real doc in xfns.c. */)
6763This function only has an effect on X Windows. With MS Windows, it is
6764defined but does nothing.
6765
6766If ON is nil, allow buffering of requests.
6767Turning on synchronization prohibits the Xlib routines from buffering
6768requests and seriously degrades performance, but makes debugging much
6769easier.
6770The optional second argument TERMINAL specifies which display to act on.
6771TERMINAL should be a terminal object, a frame or a display name (a string).
6772If TERMINAL is omitted or nil, that stands for the selected frame's display. */)
6773 (Lisp_Object on, Lisp_Object display) 6667 (Lisp_Object on, Lisp_Object display)
6774{ 6668{
6775 return Qnil; 6669 return Qnil;
@@ -6785,21 +6679,7 @@ If TERMINAL is omitted or nil, that stands for the selected frame's display. */
6785 6679
6786DEFUN ("x-change-window-property", Fx_change_window_property, 6680DEFUN ("x-change-window-property", Fx_change_window_property,
6787 Sx_change_window_property, 2, 6, 0, 6681 Sx_change_window_property, 2, 6, 0,
6788 doc: /* Change window property PROP to VALUE on the X window of FRAME. 6682 doc: /* SKIP: real doc in xfns.c. */)
6789PROP must be a string. VALUE may be a string or a list of conses,
6790numbers and/or strings. If an element in the list is a string, it is
6791converted to an atom and the value of the Atom is used. If an element
6792is a cons, it is converted to a 32 bit number where the car is the 16
6793top bits and the cdr is the lower 16 bits.
6794
6795FRAME nil or omitted means use the selected frame.
6796If TYPE is given and non-nil, it is the name of the type of VALUE.
6797If TYPE is not given or nil, the type is STRING.
6798FORMAT gives the size in bits of each element if VALUE is a list.
6799It must be one of 8, 16 or 32.
6800If VALUE is a string or FORMAT is nil or not given, FORMAT defaults to 8.
6801If OUTER-P is non-nil, the property is changed for the outer X window of
6802FRAME. Default is to change on the edit X window. */)
6803 (Lisp_Object prop, Lisp_Object value, Lisp_Object frame, 6683 (Lisp_Object prop, Lisp_Object value, Lisp_Object frame,
6804 Lisp_Object type, Lisp_Object format, Lisp_Object outer_p) 6684 Lisp_Object type, Lisp_Object format, Lisp_Object outer_p)
6805{ 6685{
@@ -6825,8 +6705,7 @@ FRAME. Default is to change on the edit X window. */)
6825 6705
6826DEFUN ("x-delete-window-property", Fx_delete_window_property, 6706DEFUN ("x-delete-window-property", Fx_delete_window_property,
6827 Sx_delete_window_property, 1, 2, 0, 6707 Sx_delete_window_property, 1, 2, 0,
6828 doc: /* Remove window property PROP from X window of FRAME. 6708 doc: /* SKIP: real doc in xfns.c. */)
6829FRAME nil or omitted means use the selected frame. Value is PROP. */)
6830 (Lisp_Object prop, Lisp_Object frame) 6709 (Lisp_Object prop, Lisp_Object frame)
6831{ 6710{
6832 struct frame *f = decode_window_system_frame (frame); 6711 struct frame *f = decode_window_system_frame (frame);
@@ -6847,21 +6726,7 @@ FRAME nil or omitted means use the selected frame. Value is PROP. */)
6847 6726
6848DEFUN ("x-window-property", Fx_window_property, Sx_window_property, 6727DEFUN ("x-window-property", Fx_window_property, Sx_window_property,
6849 1, 6, 0, 6728 1, 6, 0,
6850 doc: /* Value is the value of window property PROP on FRAME. 6729 doc: /* SKIP: real doc in xfns.c. */)
6851If FRAME is nil or omitted, use the selected frame.
6852
6853On X Windows, the following optional arguments are also accepted:
6854If TYPE is nil or omitted, get the property as a string.
6855Otherwise TYPE is the name of the atom that denotes the type expected.
6856If SOURCE is non-nil, get the property on that window instead of from
6857FRAME. The number 0 denotes the root window.
6858If DELETE-P is non-nil, delete the property after retrieving it.
6859If VECTOR-RET-P is non-nil, don't return a string but a vector of values.
6860
6861On MS Windows, this function accepts but ignores those optional arguments.
6862
6863Value is nil if FRAME hasn't a property with name PROP or if PROP has
6864no value of TYPE (always string in the MS Windows case). */)
6865 (Lisp_Object prop, Lisp_Object frame, Lisp_Object type, 6730 (Lisp_Object prop, Lisp_Object frame, Lisp_Object type,
6866 Lisp_Object source, Lisp_Object delete_p, Lisp_Object vector_ret_p) 6731 Lisp_Object source, Lisp_Object delete_p, Lisp_Object vector_ret_p)
6867{ 6732{
@@ -7326,35 +7191,7 @@ x_hide_tip (bool delete)
7326 7191
7327 7192
7328DEFUN ("x-show-tip", Fx_show_tip, Sx_show_tip, 1, 6, 0, 7193DEFUN ("x-show-tip", Fx_show_tip, Sx_show_tip, 1, 6, 0,
7329 doc: /* Show STRING in a \"tooltip\" window on frame FRAME. 7194 doc: /* SKIP: real doc in xfns.c. */)
7330A tooltip window is a small window displaying a string.
7331
7332This is an internal function; Lisp code should call `tooltip-show'.
7333
7334FRAME nil or omitted means use the selected frame.
7335
7336PARMS is an optional list of frame parameters which can be
7337used to change the tooltip's appearance.
7338
7339Automatically hide the tooltip after TIMEOUT seconds. TIMEOUT nil
7340means use the default timeout of 5 seconds.
7341
7342If the list of frame parameters PARMS contains a `left' parameter,
7343display the tooltip at that x-position. If the list of frame parameters
7344PARMS contains no `left' but a `right' parameter, display the tooltip
7345right-adjusted at that x-position. Otherwise display it at the
7346x-position of the mouse, with offset DX added (default is 5 if DX isn't
7347specified).
7348
7349Likewise for the y-position: If a `top' frame parameter is specified, it
7350determines the position of the upper edge of the tooltip window. If a
7351`bottom' parameter but no `top' frame parameter is specified, it
7352determines the position of the lower edge of the tooltip window.
7353Otherwise display the tooltip window at the y-position of the mouse,
7354with offset DY added (default is -10).
7355
7356A tooltip's maximum size is specified by `x-max-tooltip-size'.
7357Text larger than the specified size is clipped. */)
7358 (Lisp_Object string, Lisp_Object frame, Lisp_Object parms, 7195 (Lisp_Object string, Lisp_Object frame, Lisp_Object parms,
7359 Lisp_Object timeout, Lisp_Object dx, Lisp_Object dy) 7196 Lisp_Object timeout, Lisp_Object dx, Lisp_Object dy)
7360{ 7197{
@@ -7633,8 +7470,7 @@ Text larger than the specified size is clipped. */)
7633 7470
7634 7471
7635DEFUN ("x-hide-tip", Fx_hide_tip, Sx_hide_tip, 0, 0, 0, 7472DEFUN ("x-hide-tip", Fx_hide_tip, Sx_hide_tip, 0, 0, 0,
7636 doc: /* Hide the current tooltip window, if there is any. 7473 doc: /* SKIP: real doc in xfns.c. */)
7637Value is t if tooltip was open, nil otherwise. */)
7638 (void) 7474 (void)
7639{ 7475{
7640 return x_hide_tip (!tooltip_reuse_hidden_frame); 7476 return x_hide_tip (!tooltip_reuse_hidden_frame);
@@ -7765,18 +7601,7 @@ w32_dialog_in_progress (Lisp_Object in_progress)
7765} 7601}
7766 7602
7767DEFUN ("x-file-dialog", Fx_file_dialog, Sx_file_dialog, 2, 5, 0, 7603DEFUN ("x-file-dialog", Fx_file_dialog, Sx_file_dialog, 2, 5, 0,
7768 doc: /* Read file name, prompting with PROMPT in directory DIR. 7604 doc: /* SKIP: real doc in xfns.c. */)
7769Use a file selection dialog. Select DEFAULT-FILENAME in the dialog's file
7770selection box, if specified. If MUSTMATCH is non-nil, the returned file
7771or directory must exist.
7772
7773This function is only defined on NS, MS Windows, and X Windows with the
7774Motif or Gtk toolkits. With the Motif toolkit, ONLY-DIR-P is ignored.
7775Otherwise, if ONLY-DIR-P is non-nil, the user can only select directories.
7776On Windows 7 and later, the file selection dialog "remembers" the last
7777directory where the user selected a file, and will open that directory
7778instead of DIR on subsequent invocations of this function with the same
7779value of DIR as in previous invocations; this is standard Windows behavior. */)
7780 (Lisp_Object prompt, Lisp_Object dir, Lisp_Object default_filename, Lisp_Object mustmatch, Lisp_Object only_dir_p) 7605 (Lisp_Object prompt, Lisp_Object dir, Lisp_Object default_filename, Lisp_Object mustmatch, Lisp_Object only_dir_p)
7781{ 7606{
7782 /* Filter index: 1: All Files, 2: Directories only */ 7607 /* Filter index: 1: All Files, 2: Directories only */
@@ -9242,11 +9067,7 @@ typedef BOOL (WINAPI *GetDiskFreeSpaceExA_Proc)
9242 (LPCSTR, PULARGE_INTEGER, PULARGE_INTEGER, PULARGE_INTEGER); 9067 (LPCSTR, PULARGE_INTEGER, PULARGE_INTEGER, PULARGE_INTEGER);
9243 9068
9244DEFUN ("file-system-info", Ffile_system_info, Sfile_system_info, 1, 1, 0, 9069DEFUN ("file-system-info", Ffile_system_info, Sfile_system_info, 1, 1, 0,
9245 doc: /* Return storage information about the file system FILENAME is on. 9070 doc: /* SKIP: Real doc in fileio.c. */)
9246Value is a list of floats (TOTAL FREE AVAIL), where TOTAL is the total
9247storage of the file system, FREE is the free storage, and AVAIL is the
9248storage available to a non-superuser. All 3 numbers are in bytes.
9249If the underlying system call fails, value is nil. */)
9250 (Lisp_Object filename) 9071 (Lisp_Object filename)
9251{ 9072{
9252 Lisp_Object encoded, value; 9073 Lisp_Object encoded, value;
@@ -10529,9 +10350,7 @@ bass-down, bass-boost, bass-up, treble-down, treble-up */);
10529 10350
10530#if 0 /* TODO: Mouse cursor customization. */ 10351#if 0 /* TODO: Mouse cursor customization. */
10531 DEFVAR_LISP ("x-pointer-shape", Vx_pointer_shape, 10352 DEFVAR_LISP ("x-pointer-shape", Vx_pointer_shape,
10532 doc: /* The shape of the pointer when over text. 10353 doc: /* SKIP: real doc in xfns.c. */);
10533Changing the value does not affect existing frames
10534unless you set the mouse color. */);
10535 Vx_pointer_shape = Qnil; 10354 Vx_pointer_shape = Qnil;
10536 10355
10537 Vx_nontext_pointer_shape = Qnil; 10356 Vx_nontext_pointer_shape = Qnil;
@@ -10539,58 +10358,42 @@ unless you set the mouse color. */);
10539 Vx_mode_pointer_shape = Qnil; 10358 Vx_mode_pointer_shape = Qnil;
10540 10359
10541 DEFVAR_LISP ("x-hourglass-pointer-shape", Vx_hourglass_pointer_shape, 10360 DEFVAR_LISP ("x-hourglass-pointer-shape", Vx_hourglass_pointer_shape,
10542 doc: /* The shape of the pointer when Emacs is busy. 10361 doc: /* SKIP: real doc in xfns.c. */);
10543This variable takes effect when you create a new frame
10544or when you set the mouse color. */);
10545 Vx_hourglass_pointer_shape = Qnil; 10362 Vx_hourglass_pointer_shape = Qnil;
10546 10363
10547 DEFVAR_LISP ("x-sensitive-text-pointer-shape", 10364 DEFVAR_LISP ("x-sensitive-text-pointer-shape",
10548 Vx_sensitive_text_pointer_shape, 10365 Vx_sensitive_text_pointer_shape,
10549 doc: /* The shape of the pointer when over mouse-sensitive text. 10366 doc: /* SKIP: real doc in xfns.c. */);
10550This variable takes effect when you create a new frame
10551or when you set the mouse color. */);
10552 Vx_sensitive_text_pointer_shape = Qnil; 10367 Vx_sensitive_text_pointer_shape = Qnil;
10553 10368
10554 DEFVAR_LISP ("x-window-horizontal-drag-cursor", 10369 DEFVAR_LISP ("x-window-horizontal-drag-cursor",
10555 Vx_window_horizontal_drag_shape, 10370 Vx_window_horizontal_drag_shape,
10556 doc: /* Pointer shape to use for indicating a window can be dragged horizontally. 10371 doc: /* SKIP: real doc in xfns.c. */);
10557This variable takes effect when you create a new frame
10558or when you set the mouse color. */);
10559 Vx_window_horizontal_drag_shape = Qnil; 10372 Vx_window_horizontal_drag_shape = Qnil;
10560 10373
10561 DEFVAR_LISP ("x-window-vertical-drag-cursor", 10374 DEFVAR_LISP ("x-window-vertical-drag-cursor",
10562 Vx_window_vertical_drag_shape, 10375 Vx_window_vertical_drag_shape,
10563 doc: /* Pointer shape to use for indicating a window can be dragged vertically. 10376 doc: /* SKIP: real doc in xfns.c. */);
10564This variable takes effect when you create a new frame
10565or when you set the mouse color. */);
10566 Vx_window_vertical_drag_shape = Qnil; 10377 Vx_window_vertical_drag_shape = Qnil;
10567#endif 10378#endif
10568 10379
10569 DEFVAR_LISP ("x-cursor-fore-pixel", Vx_cursor_fore_pixel, 10380 DEFVAR_LISP ("x-cursor-fore-pixel", Vx_cursor_fore_pixel,
10570 doc: /* A string indicating the foreground color of the cursor box. */); 10381 doc: /* SKIP: real doc in xfns.c. */);
10571 Vx_cursor_fore_pixel = Qnil; 10382 Vx_cursor_fore_pixel = Qnil;
10572 10383
10573 DEFVAR_LISP ("x-max-tooltip-size", Vx_max_tooltip_size, 10384 DEFVAR_LISP ("x-max-tooltip-size", Vx_max_tooltip_size,
10574 doc: /* Maximum size for tooltips. 10385 doc: /* SKIP: real doc in xfns.c. */);
10575Value is a pair (COLUMNS . ROWS). Text larger than this is clipped. */);
10576 Vx_max_tooltip_size = Fcons (make_number (80), make_number (40)); 10386 Vx_max_tooltip_size = Fcons (make_number (80), make_number (40));
10577 10387
10578 DEFVAR_LISP ("x-no-window-manager", Vx_no_window_manager, 10388 DEFVAR_LISP ("x-no-window-manager", Vx_no_window_manager,
10579 doc: /* Non-nil if no window manager is in use. 10389 doc: /* SKIP: real doc in xfns.c. */);
10580Emacs doesn't try to figure this out; this is always nil
10581unless you set it to something else. */);
10582 /* We don't have any way to find this out, so set it to nil 10390 /* We don't have any way to find this out, so set it to nil
10583 and maybe the user would like to set it to t. */ 10391 and maybe the user would like to set it to t. */
10584 Vx_no_window_manager = Qnil; 10392 Vx_no_window_manager = Qnil;
10585 10393
10586 DEFVAR_LISP ("x-pixel-size-width-font-regexp", 10394 DEFVAR_LISP ("x-pixel-size-width-font-regexp",
10587 Vx_pixel_size_width_font_regexp, 10395 Vx_pixel_size_width_font_regexp,
10588 doc: /* Regexp matching a font name whose width is the same as `PIXEL_SIZE'. 10396 doc: /* SKIP: real doc in xfns.c. */);
10589
10590Since Emacs gets width of a font matching with this regexp from
10591PIXEL_SIZE field of the name, font finding mechanism gets faster for
10592such a font. This is especially effective for such large fonts as
10593Chinese, Japanese, and Korean. */);
10594 Vx_pixel_size_width_font_regexp = Qnil; 10397 Vx_pixel_size_width_font_regexp = Qnil;
10595 10398
10596 DEFVAR_LISP ("w32-bdf-filename-alist", 10399 DEFVAR_LISP ("w32-bdf-filename-alist",
diff --git a/src/w32menu.c b/src/w32menu.c
index 0cd7284c9b0..30ad54db26d 100644
--- a/src/w32menu.c
+++ b/src/w32menu.c
@@ -1571,7 +1571,7 @@ w32_free_menu_strings (HWND hwnd)
1571/* The following is used by delayed window autoselection. */ 1571/* The following is used by delayed window autoselection. */
1572 1572
1573DEFUN ("menu-or-popup-active-p", Fmenu_or_popup_active_p, Smenu_or_popup_active_p, 0, 0, 0, 1573DEFUN ("menu-or-popup-active-p", Fmenu_or_popup_active_p, Smenu_or_popup_active_p, 0, 0, 0,
1574 doc: /* Return t if a menu or popup dialog is active on selected frame. */) 1574 doc: /* SKIP: real doc in xmenu.c. */)
1575 (void) 1575 (void)
1576{ 1576{
1577 struct frame *f; 1577 struct frame *f;
diff --git a/src/w32select.c b/src/w32select.c
index c451b7ff933..ce062ccfe61 100644
--- a/src/w32select.c
+++ b/src/w32select.c
@@ -1170,45 +1170,13 @@ syms_of_w32select (void)
1170 defsubr (&Sw32_selection_targets); 1170 defsubr (&Sw32_selection_targets);
1171 1171
1172 DEFVAR_LISP ("selection-coding-system", Vselection_coding_system, 1172 DEFVAR_LISP ("selection-coding-system", Vselection_coding_system,
1173 doc: /* Coding system for communicating with other programs. 1173 doc: /* SKIP: real doc in select.el. */);
1174
1175For MS-Windows and MS-DOS:
1176When sending or receiving text via selection and clipboard, the text
1177is encoded or decoded by this coding system. The default value is
1178the current system default encoding on 9x/Me, `utf-16le-dos'
1179\(Unicode) on NT/W2K/XP, and `iso-latin-1-dos' on MS-DOS.
1180
1181For X Windows:
1182When sending text via selection and clipboard, if the target
1183data-type matches with the type of this coding system, it is used
1184for encoding the text. Otherwise (including the case that this
1185variable is nil), a proper coding system is used as below:
1186
1187data-type coding system
1188--------- -------------
1189UTF8_STRING utf-8
1190COMPOUND_TEXT compound-text-with-extensions
1191STRING iso-latin-1
1192C_STRING no-conversion
1193
1194When receiving text, if this coding system is non-nil, it is used
1195for decoding regardless of the data-type. If this is nil, a
1196proper coding system is used according to the data-type as above.
1197
1198See also the documentation of the variable `x-select-request-type' how
1199to control which data-type to request for receiving text.
1200
1201The default value is nil. */);
1202 /* The actual value is set dynamically in the dumped Emacs, see 1174 /* The actual value is set dynamically in the dumped Emacs, see
1203 below. */ 1175 below. */
1204 Vselection_coding_system = Qnil; 1176 Vselection_coding_system = Qnil;
1205 1177
1206 DEFVAR_LISP ("next-selection-coding-system", Vnext_selection_coding_system, 1178 DEFVAR_LISP ("next-selection-coding-system", Vnext_selection_coding_system,
1207 doc: /* Coding system for the next communication with other programs. 1179 doc: /* SKIP: real doc in select.el. */);
1208Usually, `selection-coding-system' is used for communicating with
1209other programs (X Windows clients or MS Windows programs). But, if this
1210variable is set, it is used for the next communication only.
1211After the communication, this variable is set to nil. */);
1212 Vnext_selection_coding_system = Qnil; 1180 Vnext_selection_coding_system = Qnil;
1213 1181
1214 DEFSYM (QCLIPBOARD, "CLIPBOARD"); 1182 DEFSYM (QCLIPBOARD, "CLIPBOARD");
diff --git a/src/w32term.c b/src/w32term.c
index c1d039c1375..97afb678c1d 100644
--- a/src/w32term.c
+++ b/src/w32term.c
@@ -7329,14 +7329,7 @@ syms_of_w32term (void)
7329 DEFSYM (Qrenamed_to, "renamed-to"); 7329 DEFSYM (Qrenamed_to, "renamed-to");
7330 7330
7331 DEFVAR_LISP ("x-wait-for-event-timeout", Vx_wait_for_event_timeout, 7331 DEFVAR_LISP ("x-wait-for-event-timeout", Vx_wait_for_event_timeout,
7332 doc: /* How long to wait for X events. 7332 doc: /* SKIP: real doc in xterm.c. */);
7333
7334Emacs will wait up to this many seconds to receive X events after
7335making changes which affect the state of the graphical interface.
7336Under some window managers this can take an indefinite amount of time,
7337so it is important to limit the wait.
7338
7339If set to a non-float value, there will be no wait at all. */);
7340 Vx_wait_for_event_timeout = make_float (0.1); 7333 Vx_wait_for_event_timeout = make_float (0.1);
7341 7334
7342 DEFVAR_INT ("w32-num-mouse-buttons", 7335 DEFVAR_INT ("w32-num-mouse-buttons",
@@ -7390,28 +7383,16 @@ the cursor have no effect. */);
7390 from cus-start.el and other places, like "M-x set-variable". */ 7383 from cus-start.el and other places, like "M-x set-variable". */
7391 DEFVAR_BOOL ("x-use-underline-position-properties", 7384 DEFVAR_BOOL ("x-use-underline-position-properties",
7392 x_use_underline_position_properties, 7385 x_use_underline_position_properties,
7393 doc: /* Non-nil means make use of UNDERLINE_POSITION font properties. 7386 doc: /* SKIP: real doc in xterm.c. */);
7394A value of nil means ignore them. If you encounter fonts with bogus
7395UNDERLINE_POSITION font properties, for example 7x13 on XFree prior
7396to 4.1, set this to nil. You can also use `underline-minimum-offset'
7397to override the font's UNDERLINE_POSITION for small font display
7398sizes. */);
7399 x_use_underline_position_properties = 0; 7387 x_use_underline_position_properties = 0;
7400 7388
7401 DEFVAR_BOOL ("x-underline-at-descent-line", 7389 DEFVAR_BOOL ("x-underline-at-descent-line",
7402 x_underline_at_descent_line, 7390 x_underline_at_descent_line,
7403 doc: /* Non-nil means to draw the underline at the same place as the descent line. 7391 doc: /* SKIP: real doc in xterm.c. */);
7404A value of nil means to draw the underline according to the value of the
7405variable `x-use-underline-position-properties', which is usually at the
7406baseline level. The default value is nil. */);
7407 x_underline_at_descent_line = 0; 7392 x_underline_at_descent_line = 0;
7408 7393
7409 DEFVAR_LISP ("x-toolkit-scroll-bars", Vx_toolkit_scroll_bars, 7394 DEFVAR_LISP ("x-toolkit-scroll-bars", Vx_toolkit_scroll_bars,
7410 doc: /* Which toolkit scroll bars Emacs uses, if any. 7395 doc: /* SKIP: real doc in xterm.c. */);
7411A value of nil means Emacs doesn't use toolkit scroll bars.
7412With the X Window system, the value is a symbol describing the
7413X toolkit. Possible values are: gtk, motif, xaw, or xaw3d.
7414With MS Windows or Nextstep, the value is t. */);
7415 Vx_toolkit_scroll_bars = Qt; 7396 Vx_toolkit_scroll_bars = Qt;
7416 7397
7417 DEFVAR_BOOL ("w32-unicode-filenames", 7398 DEFVAR_BOOL ("w32-unicode-filenames",
diff --git a/src/xfns.c b/src/xfns.c
index 9f0d9468c14..78151c81380 100644
--- a/src/xfns.c
+++ b/src/xfns.c
@@ -4125,7 +4125,7 @@ x_focus_frame (struct frame *f, bool noactivate)
4125 4125
4126 4126
4127DEFUN ("xw-color-defined-p", Fxw_color_defined_p, Sxw_color_defined_p, 1, 2, 0, 4127DEFUN ("xw-color-defined-p", Fxw_color_defined_p, Sxw_color_defined_p, 1, 2, 0,
4128 doc: /* Internal function called by `color-defined-p', which see. 4128 doc: /* Internal function called by `color-defined-p'.
4129\(Note that the Nextstep version of this function ignores FRAME.) */) 4129\(Note that the Nextstep version of this function ignores FRAME.) */)
4130 (Lisp_Object color, Lisp_Object frame) 4130 (Lisp_Object color, Lisp_Object frame)
4131{ 4131{
@@ -4141,7 +4141,8 @@ DEFUN ("xw-color-defined-p", Fxw_color_defined_p, Sxw_color_defined_p, 1, 2, 0,
4141} 4141}
4142 4142
4143DEFUN ("xw-color-values", Fxw_color_values, Sxw_color_values, 1, 2, 0, 4143DEFUN ("xw-color-values", Fxw_color_values, Sxw_color_values, 1, 2, 0,
4144 doc: /* Internal function called by `color-values', which see. */) 4144 doc: /* Internal function called by `color-values'.
4145\(Note that the Nextstep version of this function ignores FRAME.) */)
4145 (Lisp_Object color, Lisp_Object frame) 4146 (Lisp_Object color, Lisp_Object frame)
4146{ 4147{
4147 XColor foo; 4148 XColor foo;
@@ -4156,7 +4157,7 @@ DEFUN ("xw-color-values", Fxw_color_values, Sxw_color_values, 1, 2, 0,
4156} 4157}
4157 4158
4158DEFUN ("xw-display-color-p", Fxw_display_color_p, Sxw_display_color_p, 0, 1, 0, 4159DEFUN ("xw-display-color-p", Fxw_display_color_p, Sxw_display_color_p, 0, 1, 0,
4159 doc: /* Internal function called by `display-color-p', which see. */) 4160 doc: /* Internal function called by `display-color-p'. */)
4160 (Lisp_Object terminal) 4161 (Lisp_Object terminal)
4161{ 4162{
4162 struct x_display_info *dpyinfo = check_x_display_info (terminal); 4163 struct x_display_info *dpyinfo = check_x_display_info (terminal);
@@ -4212,6 +4213,7 @@ DEFUN ("x-display-pixel-width", Fx_display_pixel_width, Sx_display_pixel_width,
4212The optional argument TERMINAL specifies which display to ask about. 4213The optional argument TERMINAL specifies which display to ask about.
4213TERMINAL should be a terminal object, a frame or a display name (a string). 4214TERMINAL should be a terminal object, a frame or a display name (a string).
4214If omitted or nil, that stands for the selected frame's display. 4215If omitted or nil, that stands for the selected frame's display.
4216\(On MS Windows, this function does not accept terminal objects.)
4215 4217
4216On \"multi-monitor\" setups this refers to the pixel width for all 4218On \"multi-monitor\" setups this refers to the pixel width for all
4217physical monitors associated with TERMINAL. To get information for 4219physical monitors associated with TERMINAL. To get information for
@@ -4229,6 +4231,7 @@ DEFUN ("x-display-pixel-height", Fx_display_pixel_height,
4229The optional argument TERMINAL specifies which display to ask about. 4231The optional argument TERMINAL specifies which display to ask about.
4230TERMINAL should be a terminal object, a frame or a display name (a string). 4232TERMINAL should be a terminal object, a frame or a display name (a string).
4231If omitted or nil, that stands for the selected frame's display. 4233If omitted or nil, that stands for the selected frame's display.
4234\(On MS Windows, this function does not accept terminal objects.)
4232 4235
4233On \"multi-monitor\" setups this refers to the pixel height for all 4236On \"multi-monitor\" setups this refers to the pixel height for all
4234physical monitors associated with TERMINAL. To get information for 4237physical monitors associated with TERMINAL. To get information for
@@ -4245,7 +4248,8 @@ DEFUN ("x-display-planes", Fx_display_planes, Sx_display_planes,
4245 doc: /* Return the number of bitplanes of the X display TERMINAL. 4248 doc: /* Return the number of bitplanes of the X display TERMINAL.
4246The optional argument TERMINAL specifies which display to ask about. 4249The optional argument TERMINAL specifies which display to ask about.
4247TERMINAL should be a terminal object, a frame or a display name (a string). 4250TERMINAL should be a terminal object, a frame or a display name (a string).
4248If omitted or nil, that stands for the selected frame's display. */) 4251If omitted or nil, that stands for the selected frame's display.
4252\(On MS Windows, this function does not accept terminal objects.) */)
4249 (Lisp_Object terminal) 4253 (Lisp_Object terminal)
4250{ 4254{
4251 struct x_display_info *dpyinfo = check_x_display_info (terminal); 4255 struct x_display_info *dpyinfo = check_x_display_info (terminal);
@@ -4258,7 +4262,8 @@ DEFUN ("x-display-color-cells", Fx_display_color_cells, Sx_display_color_cells,
4258 doc: /* Return the number of color cells of the X display TERMINAL. 4262 doc: /* Return the number of color cells of the X display TERMINAL.
4259The optional argument TERMINAL specifies which display to ask about. 4263The optional argument TERMINAL specifies which display to ask about.
4260TERMINAL should be a terminal object, a frame or a display name (a string). 4264TERMINAL should be a terminal object, a frame or a display name (a string).
4261If omitted or nil, that stands for the selected frame's display. */) 4265If omitted or nil, that stands for the selected frame's display.
4266\(On MS Windows, this function does not accept terminal objects.) */)
4262 (Lisp_Object terminal) 4267 (Lisp_Object terminal)
4263{ 4268{
4264 struct x_display_info *dpyinfo = check_x_display_info (terminal); 4269 struct x_display_info *dpyinfo = check_x_display_info (terminal);
@@ -4282,7 +4287,10 @@ DEFUN ("x-server-max-request-size", Fx_server_max_request_size,
4282 doc: /* Return the maximum request size of the X server of display TERMINAL. 4287 doc: /* Return the maximum request size of the X server of display TERMINAL.
4283The optional argument TERMINAL specifies which display to ask about. 4288The optional argument TERMINAL specifies which display to ask about.
4284TERMINAL should be a terminal object, a frame or a display name (a string). 4289TERMINAL should be a terminal object, a frame or a display name (a string).
4285If omitted or nil, that stands for the selected frame's display. */) 4290If omitted or nil, that stands for the selected frame's display.
4291
4292On MS Windows, this function just returns 1.
4293On Nextstep, this function just returns nil. */)
4286 (Lisp_Object terminal) 4294 (Lisp_Object terminal)
4287{ 4295{
4288 struct x_display_info *dpyinfo = check_x_display_info (terminal); 4296 struct x_display_info *dpyinfo = check_x_display_info (terminal);
@@ -4297,8 +4305,8 @@ DEFUN ("x-server-vendor", Fx_server_vendor, Sx_server_vendor, 0, 1, 0,
4297that operating systems cannot be developed and distributed noncommercially.) 4305that operating systems cannot be developed and distributed noncommercially.)
4298The optional argument TERMINAL specifies which display to ask about. 4306The optional argument TERMINAL specifies which display to ask about.
4299 4307
4300For GNU and Unix systems, this queries the X server software; for 4308For GNU and Unix systems, this queries the X server software.
4301MS-Windows, this queries the OS. 4309For MS Windows and Nextstep the result is hard-coded.
4302 4310
4303TERMINAL should be a terminal object, a frame or a display name (a string). 4311TERMINAL should be a terminal object, a frame or a display name (a string).
4304If omitted or nil, that stands for the selected frame's display. */) 4312If omitted or nil, that stands for the selected frame's display. */)
@@ -4318,8 +4326,9 @@ software in use.
4318 4326
4319For GNU and Unix system, the first 2 numbers are the version of the X 4327For GNU and Unix system, the first 2 numbers are the version of the X
4320Protocol used on TERMINAL and the 3rd number is the distributor-specific 4328Protocol used on TERMINAL and the 3rd number is the distributor-specific
4321release number. For MS-Windows, the 3 numbers report the version and 4329release number. For MS Windows, the 3 numbers report the OS major and
4322the build number of the OS. 4330minor version and build number. For Nextstep, the first 2 numbers are
4331hard-coded and the 3rd represents the OS version.
4323 4332
4324See also the function `x-server-vendor'. 4333See also the function `x-server-vendor'.
4325 4334
@@ -4339,7 +4348,12 @@ DEFUN ("x-display-screens", Fx_display_screens, Sx_display_screens, 0, 1, 0,
4339 doc: /* Return the number of screens on the X server of display TERMINAL. 4348 doc: /* Return the number of screens on the X server of display TERMINAL.
4340The optional argument TERMINAL specifies which display to ask about. 4349The optional argument TERMINAL specifies which display to ask about.
4341TERMINAL should be a terminal object, a frame or a display name (a string). 4350TERMINAL should be a terminal object, a frame or a display name (a string).
4342If omitted or nil, that stands for the selected frame's display. */) 4351If omitted or nil, that stands for the selected frame's display.
4352
4353On MS Windows, this function just returns 1.
4354On Nextstep, "screen" is in X terminology, not that of Nextstep.
4355For the number of physical monitors, use `(length
4356\(display-monitor-attributes-list TERMINAL))' instead. */)
4343 (Lisp_Object terminal) 4357 (Lisp_Object terminal)
4344{ 4358{
4345 struct x_display_info *dpyinfo = check_x_display_info (terminal); 4359 struct x_display_info *dpyinfo = check_x_display_info (terminal);
@@ -4352,6 +4366,7 @@ DEFUN ("x-display-mm-height", Fx_display_mm_height, Sx_display_mm_height, 0, 1,
4352The optional argument TERMINAL specifies which display to ask about. 4366The optional argument TERMINAL specifies which display to ask about.
4353TERMINAL should be a terminal object, a frame or a display name (a string). 4367TERMINAL should be a terminal object, a frame or a display name (a string).
4354If omitted or nil, that stands for the selected frame's display. 4368If omitted or nil, that stands for the selected frame's display.
4369\(On MS Windows, this function does not accept terminal objects.)
4355 4370
4356On \"multi-monitor\" setups this refers to the height in millimeters for 4371On \"multi-monitor\" setups this refers to the height in millimeters for
4357all physical monitors associated with TERMINAL. To get information 4372all physical monitors associated with TERMINAL. To get information
@@ -4368,6 +4383,7 @@ DEFUN ("x-display-mm-width", Fx_display_mm_width, Sx_display_mm_width, 0, 1, 0,
4368The optional argument TERMINAL specifies which display to ask about. 4383The optional argument TERMINAL specifies which display to ask about.
4369TERMINAL should be a terminal object, a frame or a display name (a string). 4384TERMINAL should be a terminal object, a frame or a display name (a string).
4370If omitted or nil, that stands for the selected frame's display. 4385If omitted or nil, that stands for the selected frame's display.
4386\(On MS Windows, this function does not accept terminal objects.)
4371 4387
4372On \"multi-monitor\" setups this refers to the width in millimeters for 4388On \"multi-monitor\" setups this refers to the width in millimeters for
4373all physical monitors associated with TERMINAL. To get information 4389all physical monitors associated with TERMINAL. To get information
@@ -4382,10 +4398,13 @@ for each physical monitor, use `display-monitor-attributes-list'. */)
4382DEFUN ("x-display-backing-store", Fx_display_backing_store, 4398DEFUN ("x-display-backing-store", Fx_display_backing_store,
4383 Sx_display_backing_store, 0, 1, 0, 4399 Sx_display_backing_store, 0, 1, 0,
4384 doc: /* Return an indication of whether X display TERMINAL does backing store. 4400 doc: /* Return an indication of whether X display TERMINAL does backing store.
4385The value may be `always', `when-mapped', or `not-useful'.
4386The optional argument TERMINAL specifies which display to ask about. 4401The optional argument TERMINAL specifies which display to ask about.
4387TERMINAL should be a terminal object, a frame or a display name (a string). 4402TERMINAL should be a terminal object, a frame or a display name (a string).
4388If omitted or nil, that stands for the selected frame's display. */) 4403If omitted or nil, that stands for the selected frame's display.
4404
4405The value may be `always', `when-mapped', or `not-useful'.
4406On Nextstep, the value may be `buffered', `retained', or `non-retained'.
4407On MS Windows, this returns nothing useful. */)
4389 (Lisp_Object terminal) 4408 (Lisp_Object terminal)
4390{ 4409{
4391 struct x_display_info *dpyinfo = check_x_display_info (terminal); 4410 struct x_display_info *dpyinfo = check_x_display_info (terminal);
@@ -4417,10 +4436,12 @@ DEFUN ("x-display-visual-class", Fx_display_visual_class,
4417 doc: /* Return the visual class of the X display TERMINAL. 4436 doc: /* Return the visual class of the X display TERMINAL.
4418The value is one of the symbols `static-gray', `gray-scale', 4437The value is one of the symbols `static-gray', `gray-scale',
4419`static-color', `pseudo-color', `true-color', or `direct-color'. 4438`static-color', `pseudo-color', `true-color', or `direct-color'.
4439\(On MS Windows, the second and last result above are not possible.)
4420 4440
4421The optional argument TERMINAL specifies which display to ask about. 4441The optional argument TERMINAL specifies which display to ask about.
4422TERMINAL should a terminal object, a frame or a display name (a string). 4442TERMINAL should a terminal object, a frame or a display name (a string).
4423If omitted or nil, that stands for the selected frame's display. */) 4443If omitted or nil, that stands for the selected frame's display.
4444\(On MS Windows, this function does not accept terminal objects.) */)
4424 (Lisp_Object terminal) 4445 (Lisp_Object terminal)
4425{ 4446{
4426 struct x_display_info *dpyinfo = check_x_display_info (terminal); 4447 struct x_display_info *dpyinfo = check_x_display_info (terminal);
@@ -4458,7 +4479,9 @@ DEFUN ("x-display-save-under", Fx_display_save_under,
4458 doc: /* Return t if the X display TERMINAL supports the save-under feature. 4479 doc: /* Return t if the X display TERMINAL supports the save-under feature.
4459The optional argument TERMINAL specifies which display to ask about. 4480The optional argument TERMINAL specifies which display to ask about.
4460TERMINAL should be a terminal object, a frame or a display name (a string). 4481TERMINAL should be a terminal object, a frame or a display name (a string).
4461If omitted or nil, that stands for the selected frame's display. */) 4482If omitted or nil, that stands for the selected frame's display.
4483
4484On MS Windows, this just returns nil. */)
4462 (Lisp_Object terminal) 4485 (Lisp_Object terminal)
4463{ 4486{
4464 struct x_display_info *dpyinfo = check_x_display_info (terminal); 4487 struct x_display_info *dpyinfo = check_x_display_info (terminal);
@@ -5652,8 +5675,8 @@ DEFUN ("x-close-connection", Fx_close_connection,
5652 Sx_close_connection, 1, 1, 0, 5675 Sx_close_connection, 1, 1, 0,
5653 doc: /* Close the connection to TERMINAL's X server. 5676 doc: /* Close the connection to TERMINAL's X server.
5654For TERMINAL, specify a terminal object, a frame or a display name (a 5677For TERMINAL, specify a terminal object, a frame or a display name (a
5655string). If TERMINAL is nil, that stands for the selected frame's 5678string). If TERMINAL is nil, that stands for the selected frame's terminal.
5656terminal. */) 5679\(On MS Windows, this function does not accept terminal objects.) */)
5657 (Lisp_Object terminal) 5680 (Lisp_Object terminal)
5658{ 5681{
5659 struct x_display_info *dpyinfo = check_x_display_info (terminal); 5682 struct x_display_info *dpyinfo = check_x_display_info (terminal);
@@ -5926,8 +5949,6 @@ FRAME. The number 0 denotes the root window.
5926If DELETE-P is non-nil, delete the property after retrieving it. 5949If DELETE-P is non-nil, delete the property after retrieving it.
5927If VECTOR-RET-P is non-nil, don't return a string but a vector of values. 5950If VECTOR-RET-P is non-nil, don't return a string but a vector of values.
5928 5951
5929On MS Windows, this function accepts but ignores those optional arguments.
5930
5931Value is nil if FRAME hasn't a property with name PROP or if PROP has 5952Value is nil if FRAME hasn't a property with name PROP or if PROP has
5932no value of TYPE (always string in the MS Windows case). */) 5953no value of TYPE (always string in the MS Windows case). */)
5933 (Lisp_Object prop, Lisp_Object frame, Lisp_Object type, 5954 (Lisp_Object prop, Lisp_Object frame, Lisp_Object type,
@@ -7039,18 +7060,7 @@ clean_up_file_dialog (void *arg)
7039 7060
7040 7061
7041DEFUN ("x-file-dialog", Fx_file_dialog, Sx_file_dialog, 2, 5, 0, 7062DEFUN ("x-file-dialog", Fx_file_dialog, Sx_file_dialog, 2, 5, 0,
7042 doc: /* Read file name, prompting with PROMPT in directory DIR. 7063 doc: /* SKIP: real doc in USE_GTK definition in xfns.c. */)
7043Use a file selection dialog. Select DEFAULT-FILENAME in the dialog's file
7044selection box, if specified. If MUSTMATCH is non-nil, the returned file
7045or directory must exist.
7046
7047This function is only defined on NS, MS Windows, and X Windows with the
7048Motif or Gtk toolkits. With the Motif toolkit, ONLY-DIR-P is ignored.
7049Otherwise, if ONLY-DIR-P is non-nil, the user can only select directories.
7050On Windows 7 and later, the file selection dialog "remembers" the last
7051directory where the user selected a file, and will open that directory
7052instead of DIR on subsequent invocations of this function with the same
7053value of DIR as in previous invocations; this is standard Windows behavior. */)
7054 (Lisp_Object prompt, Lisp_Object dir, Lisp_Object default_filename, 7064 (Lisp_Object prompt, Lisp_Object dir, Lisp_Object default_filename,
7055 Lisp_Object mustmatch, Lisp_Object only_dir_p) 7065 Lisp_Object mustmatch, Lisp_Object only_dir_p)
7056{ 7066{
@@ -7219,10 +7229,10 @@ or directory must exist.
7219This function is only defined on NS, MS Windows, and X Windows with the 7229This function is only defined on NS, MS Windows, and X Windows with the
7220Motif or Gtk toolkits. With the Motif toolkit, ONLY-DIR-P is ignored. 7230Motif or Gtk toolkits. With the Motif toolkit, ONLY-DIR-P is ignored.
7221Otherwise, if ONLY-DIR-P is non-nil, the user can only select directories. 7231Otherwise, if ONLY-DIR-P is non-nil, the user can only select directories.
7222On Windows 7 and later, the file selection dialog "remembers" the last 7232On MS Windows 7 and later, the file selection dialog "remembers" the last
7223directory where the user selected a file, and will open that directory 7233directory where the user selected a file, and will open that directory
7224instead of DIR on subsequent invocations of this function with the same 7234instead of DIR on subsequent invocations of this function with the same
7225value of DIR as in previous invocations; this is standard Windows behavior. */) 7235value of DIR as in previous invocations; this is standard MS Windows behavior. */)
7226 (Lisp_Object prompt, Lisp_Object dir, Lisp_Object default_filename, Lisp_Object mustmatch, Lisp_Object only_dir_p) 7236 (Lisp_Object prompt, Lisp_Object dir, Lisp_Object default_filename, Lisp_Object mustmatch, Lisp_Object only_dir_p)
7227{ 7237{
7228 struct frame *f = SELECTED_FRAME (); 7238 struct frame *f = SELECTED_FRAME ();
@@ -7797,9 +7807,9 @@ unless you set it to something else. */);
7797 Vx_pixel_size_width_font_regexp, 7807 Vx_pixel_size_width_font_regexp,
7798 doc: /* Regexp matching a font name whose width is the same as `PIXEL_SIZE'. 7808 doc: /* Regexp matching a font name whose width is the same as `PIXEL_SIZE'.
7799 7809
7800Since Emacs gets width of a font matching with this regexp from 7810Since Emacs gets the width of a font matching this regexp from the
7801PIXEL_SIZE field of the name, font finding mechanism gets faster for 7811PIXEL_SIZE field of the name, the font-finding mechanism gets faster for
7802such a font. This is especially effective for such large fonts as 7812such a font. This is especially effective for large fonts such as
7803Chinese, Japanese, and Korean. */); 7813Chinese, Japanese, and Korean. */);
7804 Vx_pixel_size_width_font_regexp = Qnil; 7814 Vx_pixel_size_width_font_regexp = Qnil;
7805 7815
diff --git a/src/xmenu.c b/src/xmenu.c
index e7ef31ac564..835db9191f1 100644
--- a/src/xmenu.c
+++ b/src/xmenu.c
@@ -278,12 +278,7 @@ popup_get_selection (XEvent *initial_event, struct x_display_info *dpyinfo,
278} 278}
279 279
280DEFUN ("x-menu-bar-open-internal", Fx_menu_bar_open_internal, Sx_menu_bar_open_internal, 0, 1, "i", 280DEFUN ("x-menu-bar-open-internal", Fx_menu_bar_open_internal, Sx_menu_bar_open_internal, 0, 1, "i",
281 doc: /* Start key navigation of the menu bar in FRAME. 281 doc: /* SKIP: real doc in USE_GTK definition in xmenu.c. */)
282This initially opens the first menu bar item and you can then navigate with the
283arrow keys, select a menu entry with the return key or cancel with the
284escape key. If FRAME has no menu bar this function does nothing.
285
286If FRAME is nil or not given, use the selected frame. */)
287 (Lisp_Object frame) 282 (Lisp_Object frame)
288{ 283{
289 XEvent ev; 284 XEvent ev;
@@ -2376,7 +2371,8 @@ popup_activated (void)
2376/* The following is used by delayed window autoselection. */ 2371/* The following is used by delayed window autoselection. */
2377 2372
2378DEFUN ("menu-or-popup-active-p", Fmenu_or_popup_active_p, Smenu_or_popup_active_p, 0, 0, 0, 2373DEFUN ("menu-or-popup-active-p", Fmenu_or_popup_active_p, Smenu_or_popup_active_p, 0, 0, 0,
2379 doc: /* Return t if a menu or popup dialog is active. */) 2374 doc: /* Return t if a menu or popup dialog is active.
2375\(On MS Windows, this refers to the selected frame.) */)
2380 (void) 2376 (void)
2381{ 2377{
2382 return (popup_activated ()) ? Qt : Qnil; 2378 return (popup_activated ()) ? Qt : Qnil;