summaryrefslogtreecommitdiff
path: root/specs
diff options
context:
space:
mode:
Diffstat (limited to 'specs')
-rw-r--r--specs/CTEXT/ctext.tbl.ms99
-rw-r--r--specs/ICCCM/icccm.ms29
-rw-r--r--specs/X11/CH0110
-rw-r--r--specs/X11/CH13462
-rw-r--r--specs/X11/CH14204
-rw-r--r--specs/X11/glossary5
-rw-r--r--specs/XIM/xim.ms33
-rw-r--r--specs/XPRINT/xp_proto.mif2
-rw-r--r--specs/XProtocol/X11.protocol591
-rw-r--r--specs/Xaw/AsciiSource4
-rw-r--r--specs/Xaw/AsciiText2
-rw-r--r--specs/Xaw/CH4.intro2
-rw-r--r--specs/Xaw/Form2
-rw-r--r--specs/Xaw/Text2
-rw-r--r--specs/Xaw/TextSource5
-rw-r--r--specs/Xaw/Toggle2
-rw-r--r--specs/Xaw/strings.xaw4
-rw-r--r--specs/Xext/DPMS.ms4
-rw-r--r--specs/Xext/buffer.ms93
-rw-r--r--specs/Xext/evi.ms7
-rw-r--r--specs/Xext/mit-shm.ms7
-rw-r--r--specs/Xext/sync.tex3
-rw-r--r--specs/Xi/porting.ms3
-rw-r--r--specs/Xmu/Xmu.ms18
-rw-r--r--specs/Xserver/analysis.tex18
-rw-r--r--specs/Xserver/secint.tex4
-rw-r--r--specs/Xt/CH014
-rw-r--r--specs/Xt/CH022
-rw-r--r--specs/i18n/Framework.ms7
-rw-r--r--specs/rstart/rstart.ms3
30 files changed, 1204 insertions, 427 deletions
diff --git a/specs/CTEXT/ctext.tbl.ms b/specs/CTEXT/ctext.tbl.ms
index 4aa08bc..64b3f79 100644
--- a/specs/CTEXT/ctext.tbl.ms
+++ b/specs/CTEXT/ctext.tbl.ms
@@ -1,8 +1,37 @@
.\" Use tbl and -ms
+.\"
+.\" $XFree86: xc/doc/specs/CTEXT/ctext.tbl.ms,v 1.2 2000/12/11 19:39:40 dawes Exp $
+.\"
+.\" --- bP --- bulleted paragraph macro
+.\"
+.de bP
+.IP \(bu 4
+..
+.\"
+.\" --- cT --- centered title; centers $1, adds TOC entry unless $2 is "no"
+.\"
+.de cT
+\\& \" filler so that the following .sp really leaves a space
+.sp 1
+.ce 1
+\\s+1\\fB\\$1\\fP\\s-1
+.sp 1
+.if !'\\$2'no' \{\
+.XS \\n(PN
+\\$1
+.XE
+\}
+..
.sp 8
-.ce 5
+.ce 9
\s+2\fBCompound Text Encoding\fP\s-2
.sp 6p
+Version 1.1.xf86.1
+XFree86 4.0.2
+XFree86, Inc.
+.sp 6p
+.I "based on"
+.sp 6p
Version 1.1
X Consortium Standard
X Version 11, Release 6.4
@@ -220,7 +249,7 @@ _
.sp 4p
_
.sp 6p
-4/02 94 7-bit ASCII graphics (ANSI X3.4-1968),
+04/02 94 7-bit ASCII graphics (ANSI X3.4-1968),
Left half of ISO 8859 sets
04/09 94 Right half of JIS X0201-1976 (reaffirmed 1984),
8-Bit Alphanumeric-Katakana Code
@@ -236,10 +265,16 @@ _
04/08 96 Right half of ISO 8859-8, Latin/Hebrew alphabet
04/12 96 Right half of ISO 8859-5, Latin/Cyrillic alphabet
04/13 96 Right half of ISO 8859-9, Latin alphabet No. 5
+05/06 96 Right half of ISO 8859-10, Latin alphabet No. 6
+05/09 96 Right half of ISO 8859-13, Latin alphabet No. 7 (Baltic Rim)
+05/15 96 Right half of ISO 8859-14, Latin alphabet No. 8 (Celtic)
+06/02 96 Right half of ISO 8859-15, Latin alphabet No. 9
+06/06 96 Right half of ISO 8859-16, Latin alphabet No. 10
.sp 6p
04/01 94\u\s-22\s+2\d GB2312-1980, China (PRC) Hanzi
-04/02 94\u\s-22\s+2\d JIS X0208-1983, Japanese Graphic Character Set
+04/02 94\u\s-22\s+2\d JIS X0208-1983/1990, Japanese Graphic Character Set
04/03 94\u\s-22\s+2\d KS C5601-1987, Korean Graphic Character Set
+04/02 94\u\s-22\s+2\d JIS X0212-1990, Supplementary Japanese Graphic Character Set
.sp 6p
_
.TE
@@ -300,9 +335,33 @@ for example,
they may contain octets in the C0 and C1 ranges, including 00/00, and
octets comprising a given character may differ in their most significant bit.
.LP
-[ISO-registered ``other coding systems'' are not used in Compound Text;
+[Except for UTF-8,
+ISO-registered ``other coding systems'' are not used in Compound Text;
extended segments are the only mechanism for non-2022 encodings.]
.NH 1
+The UTF-8 encoding
+.LP
+Unicode characters that are not contained in one of the approved standard
+encodings can be encoded using the UTF-8 encoding. The following escape
+sequences are used:
+.RS
+.TS
+l l.
+01/11 02/05 04/07 switch into UTF-8 mode
+01/11 02/05 04/00 return from UTF-8 mode
+.TE
+.RE
+.LP
+The first is the ISO registered sequence for UTF-8 (ISO-IR-196), the second
+is the ISO-2022 ``standard return'' sequence. While in UTF-8 mode, the UTF-8
+encoding replaces the currently designated GL and GR encodings. After return
+from UTF-8 mode, the previously designated GL and GR encodings are
+reactivated.
+.LP
+[This is the only ``other coding system'' used in Compound Text.]
+.LP
+[This is an XFree86 extension introduced in XFree86 4.0.2.]
+.NH 1
Directionality
.LP
If desired, horizontal text direction can be indicated using the following
@@ -375,9 +434,16 @@ ISO8859-6 ISO 8859-6 Latin/Arabic alphabet
ISO8859-7 ISO 8859-7 Latin/Greek alphabet
ISO8859-8 ISO 8859-8 Latin/Hebrew alphabet
ISO8859-9 ISO 8859-9 Latin alphabet No. 5
+ISO8859-10 ISO 8859-10 Latin alphabet No. 6
+ISO8859-13 ISO 8859-13 Latin alphabet No. 7 (Baltic Rim)
+ISO8859-14 ISO 8859-14 Latin alphabet No. 8 (Celtic)
+ISO8859-15 ISO 8859-15 Latin alphabet No. 9
+ISO8859-16 ISO 8859-16 Latin alphabet No. 10
JISX0201.1976-0 JIS X0201-1976 (reaffirmed 1984) 8-bit Alphanumeric-Katakana Code
GB2312.1980-0 GB2312-1980, GL encoding China (PRC) Hanzi
JISX0208.1983-0 JIS X0208-1983, GL encoding Japanese Graphic Character Set
+JISX0208.1990-0 JIS X0208-1990, GL encoding Japanese Graphic Character Set
+JISX0212.1990-0 JIS X0212-1990, GL encoding Supplementary Japanese Graphic Character Set
KSC5601.1987-0 KS C5601-1987, GL encoding Korean Graphic Character Set
.sp 6p
_
@@ -447,3 +513,28 @@ If a Compound Text string does not match the specification here (e.g., uses
undefined control characters, or undefined control sequences, or incorrectly
formatted extended segments), it is best to treat the entire string as invalid,
except as indicated by a version control sequence.
+.bp
+.\" Set registers to number the appendixes A.1, B.1, C.1, ...
+.nr H1 0
+.af H1 A
+.cT "Appendix A" no
+.nH 1 "Revision History"
+.LP
+This appendix describes the revision history of this document and
+summarizes the incompatibilities between this and earlier versions.
+.nH 2 "Version 1.1"
+.LP
+Version 1.1 is the original X11 specification.
+.nH 2 "Version 1.1.xf86.1"
+.LP
+Version 1.1.xf86.1 was released with XFree86 4.0.2 in December 2000.
+It adds the following changes:
+.bP
+Added ISO 8859-10,13,14,15,16 and JIS X0212 to the list of standard
+encodings. Mention the 1990 revision of JIS X0208 as an alternative to
+the 1983 edition.
+.bP
+Added ISO8859-10, ISO8859-13, ISO8859-14, ISO8859-15, ISO8859-16,
+JISX0208.1990-0, JISX0212.1990-0 to the list of font charsets.
+.bP
+The section about UTF-8 encoding was added.
diff --git a/specs/ICCCM/icccm.ms b/specs/ICCCM/icccm.ms
index bb3478b..1a26c09 100644
--- a/specs/ICCCM/icccm.ms
+++ b/specs/ICCCM/icccm.ms
@@ -1,4 +1,10 @@
.\" $Xorg: icccm.ms,v 1.3 2000/08/17 19:42:08 cpqbld Exp $
+.\"
+.\"
+.\"
+.\"
+.\" $XFree86: xc/doc/specs/ICCCM/icccm.ms,v 1.3 2001/01/17 16:57:41 dawes Exp $
+.\"
.\" Use tbl, eqn, -ms, and macros.t
.\" @(#)icccm.ms 1.50 16 Apr 1994 14:13:55
.EH ''''
@@ -39,6 +45,14 @@
.B
\s+2Inter-Client Communication Conventions Manual\s0
+Version 2.0.xf86.1
+
+XFree86 4.0.2
+
+XFree86, Inc.
+
+.I "based on"
+
Version 2.0
X Consortium Standard
@@ -1389,6 +1403,9 @@ T}
USER TEXT T{
The name of the user running the owner
T}
+UTF8_STRING TEXT T{
+UTF-8 text
+T}
.sp 6p
_
.TE
@@ -1665,6 +1682,7 @@ T}
PIXMAP 32 Fixed-size
SPAN 32 Fixed-size
STRING 8 Zero
+UTF8_STRING 8 Zero
WINDOW 32 Fixed-size
.sp 6p
_
@@ -1699,7 +1717,7 @@ The type would not actually be TEXT;
it would be STRING or some other ATOM naming the encoding chosen by the owner.
.LP
STRING as a type or a target specifies the ISO Latin-1 character set plus the
-control characters TAB (octal 11) and NEWLINE (octal 12).
+control characters TAB (hex 09) and NEWLINE (hex 0A).
The spacing interpretation of TAB is context dependent.
Other ASCII control characters are explicitly not included in STRING
at the present time.
@@ -1707,6 +1725,9 @@ at the present time.
COMPOUND_TEXT as a type or a target specifies the Compound Text interchange
format; see the \fICompound Text Encoding\fP.
.LP
+UTF8_STRING as a type or a target specifies an UTF-8 encoded string, with
+NEWLINE (U+000A, hex 0A) as end-of-line marker.
+.LP
There are some text objects where the source or intended user, as the
case may be, does not have a specific character set for the text, but
instead merely requires a zero-terminated sequence of bytes with no
@@ -1729,9 +1750,9 @@ way to treat them as the same. Thus no character-set based
property type is suitable.
.NE
.LP
-Type STRING, COMPOUND_TEXT, and C_STRING properties will consist of a list
-of elements separated by null characters; other encodings will need to
-specify an appropriate list format.
+Type STRING, COMPOUND_TEXT, UTF8_STRING, and C_STRING properties will
+consist of a list of elements separated by null characters; other encodings
+will need to specify an appropriate list format.
.nH 3 "INCR Properties"
.LP
Requestors may receive a property of type INCR\**
diff --git a/specs/X11/CH01 b/specs/X11/CH01
index be9f76d..92205b4 100644
--- a/specs/X11/CH01
+++ b/specs/X11/CH01
@@ -1,4 +1,5 @@
.\" Copyright \(co 1985, 1986, 1987, 1988, 1989, 1990, 1991, 1994, 1996 X Consortium
+.\" Copyright \(co 2000 The XFree86 Project, Inc.
.\"
.\" Permission is hereby granted, free of charge, to any person obtaining
.\" a copy of this software and associated documentation files (the
@@ -39,6 +40,8 @@
.\" Digital and Tektronix makes no representations about the suitability
.\" of this documentation for any purpose.
.\" It is provided ``as is'' without express or implied warranty.
+.\"
+.\" $XFree86: xc/doc/specs/X11/CH01,v 1.2 2000/11/28 18:49:17 dawes Exp $
.\"
.EH '\fBXlib \- C Library\fP''\fBX11, Release 6.4\fP'
.OH '\fBXlib \- C Library\fP''\fBX11, Release 6.4\fP'
@@ -587,7 +590,7 @@ in the host encoding.
.IP \(bu 5
Latin-1
.IP
-The coded character set defined by the ISO8859-1 standard.
+The coded character set defined by the ISO 8859-1 standard.
.IP \(bu 5
Latin Portable Character Encoding
.IP
@@ -601,6 +604,11 @@ STRING Encoding
.IP
Latin-1, plus tab and newline.
.IP \(bu 5
+UTF-8 Encoding
+.IP
+The ASCII compatible character encoding scheme defined by the ISO 10646-1
+standard.
+.IP \(bu 5
POSIX Portable Filename Character Set
.IP
The set of 65 characters,
diff --git a/specs/X11/CH13 b/specs/X11/CH13
index 539743c..b9f0266 100644
--- a/specs/X11/CH13
+++ b/specs/X11/CH13
@@ -1,4 +1,5 @@
.\" Copyright \(co 1985, 1986, 1987, 1988, 1989, 1990, 1991, 1994, 1996 X Consortium
+.\" Copyright \(co 2000 The XFree86 Project, Inc.
.\"
.\" Permission is hereby granted, free of charge, to any person obtaining
.\" a copy of this software and associated documentation files (the
@@ -39,6 +40,8 @@
.\" Digital and Tektronix makes no representations about the suitability
.\" of this documentation for any purpose.
.\" It is provided ``as is'' without express or implied warranty.
+.\"
+.\" $XFree86: xc/doc/specs/X11/CH13,v 1.5 2000/12/04 18:49:17 dawes Exp $
.\"
\&
.sp 1
@@ -345,6 +348,9 @@ Encoding of supplied/returned
T}
text (some WM_ property
text in environment locale)
+ T{
+.PN Xutf8SetWMProperties
+T}
.sp 6p
T{
.PN setlocale
@@ -357,11 +363,17 @@ T}
.PN XwcTextPropertyToTextList
T}
T{
+.PN Xutf8TextPropertyToTextList
+T}
+ T{
.PN XmbTextListToTextProperty
T}
T{
.PN XwcTextListToTextProperty
T}
+ T{
+.PN Xutf8TextListToTextProperty
+T}
.sp
Text Input:
.sp 6p
@@ -407,6 +419,9 @@ T}
T} T{
Encoding of returned text
T}
+ T{
+.PN Xutf8LookupString
+T}
.sp
Text Drawing:
.sp 6p
@@ -450,6 +465,12 @@ T} T{
Locale of supplied text
T}
T{
+.PN Xutf8DrawText ,
+and so on
+T} T{
+Locale-dependent metrics
+T}
+ T{
.PN XExtentsOfFontSet ,
and so on
T} T{
@@ -459,7 +480,10 @@ T}
.PN XmbTextExtents ,
T}
T{
-.PN XwcTextExtents ,
+.PN XwcTextExtents ,
+T}
+ T{
+.PN Xutf8TextExtents ,
and so on
T}
.sp
@@ -747,7 +771,11 @@ function presents a variable argument list programming interface
for setting properties or features of the specified output method.
This function returns NULL if it succeeds;
otherwise,
-it returns the name of the first argument that could not be obtained.
+it returns the name of the first argument that could not be set.
+Xlib does not attempt to set arguments from the supplied list that
+follow the failed argument;
+all arguments in the list preceding the failed argument have been set
+correctly.
.LP
No standard arguments are currently defined by Xlib.
.LP
@@ -1828,7 +1856,7 @@ returns a valid
.PN XFontSet
to font_set.
.LP
-When an Xmb/wc drawing or measuring function is called with an
+When an Xmb/wc/utf8 drawing or measuring function is called with an
.PN XFontSet
that has missing charsets, some characters in the locale will not be
drawable.
@@ -1901,7 +1929,7 @@ The
.PN XFontsOfFontSet
function returns a list of one or more
.PN XFontStructs
-and font names for the fonts used by the Xmb and Xwc layers
+and font names for the fonts used by the Xmb/wc/utf8 layer
for the given font set.
A list of pointers to the
.PN XFontStruct
@@ -2080,9 +2108,10 @@ Regardless of the character rendering order,
the origins of all characters are on the primary draw direction side
of the drawing origin.
The screen location of a particular character image may be determined with
-.PN XmbTextPerCharExtents
+.PN XmbTextPerCharExtents ,
+.PN XwcTextPerCharExtents
or
-.PN XwcTextPerCharExtents .
+.PN Xutf8TextPerCharExtents .
.LP
The drawing functions are allowed to implement context-dependent
rendering, where the glyphs drawn for a string are not simply a
@@ -2196,9 +2225,10 @@ The max_ink_extent member gives the maximum extent, over all drawable characters
the rectangles that bound the character glyph image drawn in the
foreground color, relative to a constant origin.
See
-.PN XmbTextExtents
-and
+.PN XmbTextExtents ,
.PN XwcTextExtents
+and
+.PN Xutf8TextExtents
for detailed semantics.
.LP
The max_logical_extent member gives the maximum extent,
@@ -2217,9 +2247,10 @@ the string's extent by an amount other than that character's
individual extent.
.LP
The rectangles for a given character in a string can be obtained from
-.PN XmbPerCharExtents
+.PN XmbPerCharExtents ,
+.PN XwcPerCharExtents
or
-.PN XwcPerCharExtents .
+.PN Xutf8PerCharExtents .
.LP
.sp
To obtain the maximum extents structure given an
@@ -2241,7 +2272,7 @@ The
.PN XExtentsOfFontSet
function returns an
.PN XFontSetExtents
-structure for the fonts used by the Xmb and Xwc layers
+structure for the fonts used by the Xmb/wc/utf8 layer
for the given font set.
.LP
The
@@ -2257,11 +2288,13 @@ Until freed, its contents will not be modified by Xlib.
.sp
To obtain the escapement in pixels of the specified text as a value,
use
-.PN XmbTextEscapement
+.PN XmbTextEscapement ,
+.PN XwcTextEscapement
or
-.PN XwcTextEscapement .
+.PN Xutf8TextEscapement .
.IN "XmbTextEscapement" "" "@DEF@"
.IN "XwcTextEscapement" "" "@DEF@"
+.IN "Xutf8TextEscapement" "" "@DEF@"
.sM
.FD 0
int XmbTextEscapement\^(\^\fIfont_set\fP\^, \fIstring\fP\^, \fInum_bytes\fP\^)
@@ -2281,6 +2314,15 @@ int XwcTextEscapement\^(\^\fIfont_set\fP\^, \fIstring\fP\^, \fInum_wchars\fP\^)
.br
int \fInum_wchars\fP\^;
.FN
+.FD 0
+int Xutf8TextEscapement\^(\^\fIfont_set\fP\^, \fIstring\fP\^, \fInum_bytes\fP\^)
+.br
+ XFontSet \fIfont_set\fP\^;
+.br
+ char *\fIstring\fP\^;
+.br
+ int \fInum_bytes\fP\^;
+.FN
.IP \fIfont_set\fP 1i
Specifies the font set.
.IP \fIstring\fP 1i
@@ -2292,9 +2334,10 @@ Specifies the number of characters in the string argument.
.LP
.eM
The
-.PN XmbTextEscapement
-and
+.PN XmbTextEscapement ,
.PN XwcTextEscapement
+and
+.PN Xutf8TextEscapement
functions return the escapement in pixels of the specified string as a value,
using the fonts loaded for the specified font set.
The escapement is the distance in pixels in the primary draw
@@ -2305,15 +2348,23 @@ dependent on the supplied string.
Regardless of the character rendering order,
the escapement is always positive.
.LP
+The function
+.PN Xutf8TextEscapement
+is an XFree86 extension introduced in XFree86 4.0.2. Its presence is
+indicated by the macro
+.PN X_HAVE_UTF8_STRING .
+.LP
.sp
To obtain the overall_ink_return and overall_logical_return arguments,
the overall bounding box of the string's image, and a logical bounding box,
use
-.PN XmbTextExtents
- or
-.PN XwcTextExtents .
+.PN XmbTextExtents ,
+.PN XwcTextExtents
+or
+.PN Xutf8TextExtents .
.IN "XmbTextExtents" "" "@DEF@"
.IN "XwcTextExtents" "" "@DEF@"
+.IN "Xutf8TextExtents" "" "@DEF@"
.sM
.FD 0
int XmbTextExtents\^(\^\fIfont_set\fP\^, \fIstring\fP\^, \fInum_bytes\fP\^, \fIoverall_ink_return\fP\^, \fIoverall_logical_return\fP\^)
@@ -2342,6 +2393,19 @@ int XwcTextExtents\^(\^\fIfont_set\fP\^, \fIstring\fP\^, \fInum_wchars\fP\^,
.br
XRectangle *\fIoverall_logical_return\fP\^;
.FN
+.FD 0
+int Xutf8TextExtents\^(\^\fIfont_set\fP\^, \fIstring\fP\^, \fInum_bytes\fP\^, \fIoverall_ink_return\fP\^, \fIoverall_logical_return\fP\^)
+.br
+ XFontSet \fIfont_set\fP\^;
+.br
+ char *\fIstring\fP\^;
+.br
+ int \fInum_bytes\fP\^;
+.br
+ XRectangle *\fIoverall_ink_return\fP\^;
+.br
+ XRectangle *\fIoverall_logical_return\fP\^;
+.FN
.IP \fIfont_set\fP 1i
Specifies the font set.
.IP \fIstring\fP 1i
@@ -2358,17 +2422,19 @@ Returns the overall logical \*(Ov.
.LP
.eM
The
-.PN XmbTextExtents
-and
+.PN XmbTextExtents ,
.PN XwcTextExtents
+and
+.PN Xutf8TextExtents
functions set the components of the specified overall_ink_return and
overall_logical_return
arguments to the overall bounding box of the string's image
and a logical bounding box for spacing purposes, respectively.
They return the value returned by
-.PN XmbTextEscapement
+.PN XmbTextEscapement ,
+.PN XwcTextEscapement
or
-.PN XwcTextEscapement .
+.PN Xutf8TextEscapement .
These metrics are relative to the drawing origin of the string,
using the fonts loaded for the specified font set.
.LP
@@ -2409,14 +2475,22 @@ or to justify words, but for context-dependent rendering,
the client should not assume that it can redraw the character by itself
and get the same rendering.
.LP
+The function
+.PN Xutf8TextExtents
+is an XFree86 extension introduced in XFree86 4.0.2. Its presence is
+indicated by the macro
+.PN X_HAVE_UTF8_STRING .
+.LP
.sp
To obtain per-character information for a text string,
use
-.PN XmbTextPerCharExtents
+.PN XmbTextPerCharExtents ,
+.PN XwcTextPerCharExtents
or
-.PN XwcTextPerCharExtents .
+.PN Xutf8TextPerCharExtents .
.IN "XmbTextPerCharExtents" "" "@DEF@"
.IN "XwcTextPerCharExtents" "" "@DEF@"
+.IN "Xutf8TextPerCharExtents" "" "@DEF@"
.sM
.FD 0
Status XmbTextPerCharExtents\^(\^\fIfont_set\fP\^, \fIstring\fP\^, \fInum_bytes\fP\^, \fIink_array_return\fP\^,
@@ -2464,6 +2538,29 @@ Status XwcTextPerCharExtents\^(\^\fIfont_set\fP\^, \fIstring\fP\^, \fInum_wchars
.br
XRectangle *\fIoverall_logical_return\fP\^;
.FN
+.FD 0
+Status Xutf8TextPerCharExtents\^(\^\fIfont_set\fP\^, \fIstring\fP\^, \fInum_bytes\fP\^, \fIink_array_return\fP\^,
+.br
+ \fIlogical_array_return\fP\^, \fIarray_size\fP\^, \fInum_chars_return\fP\^, \fIoverall_ink_return\fP\^, \fIoverall_logical_return\fP\^)
+.br
+ XFontSet \fIfont_set\fP\^;
+.br
+ char *\fIstring\fP\^;
+.br
+ int \fInum_bytes\fP\^;
+.br
+ XRectangle *\fIink_array_return\fP\^;
+.br
+ XRectangle *\fIlogical_array_return\fP\^;
+.br
+ int \fIarray_size\fP\^;
+.br
+ int *\fInum_chars_return\fP\^;
+.br
+ XRectangle *\fIoverall_ink_return\fP\^;
+.br
+ XRectangle *\fIoverall_logical_return\fP\^;
+.FN
.IP \fIfont_set\fP 1i
Specifies the font set.
.IP \fIstring\fP 1i
@@ -2489,9 +2586,10 @@ Returns the overall logical \*(Ov.
.LP
.eM
The
-.PN XmbTextPerCharExtents
-and
+.PN XmbTextPerCharExtents ,
.PN XwcTextPerCharExtents
+and
+.PN Xutf8TextPerCharExtents
functions return the text dimensions of each character of the specified text,
using the fonts loaded for the specified font set.
Each successive element of ink_array_return and logical_array_return
@@ -2534,14 +2632,22 @@ and num_chars_return is set to the number of rectangles required.
Otherwise, the functions return a nonzero value.
.LP
If the overall_ink_return or overall_logical_return argument is non-NULL,
-.PN XmbTextPerCharExtents
-and
+.PN XmbTextPerCharExtents ,
.PN XwcTextPerCharExtents
+and
+.PN Xutf8TextPerCharExtents
return the maximum extent of the string's metrics to overall_ink_return
or overall_logical_return, as returned by
-.PN XmbTextExtents
+.PN XmbTextExtents ,
+.PN XwcTextExtents
or
-.PN XwcTextExtents .
+.PN Xutf8TextExtents .
+.LP
+The function
+.PN Xutf8TextPerCharExtents
+is an XFree86 extension introduced in XFree86 4.0.2. Its presence is
+indicated by the macro
+.PN X_HAVE_UTF8_STRING .
.NH 3
Drawing Text Using Font Sets
.XS
@@ -2557,6 +2663,8 @@ and
.PN XDrawImageString
except that they work with font sets instead of single fonts
and interpret the text based on the locale of the font set
+(for functions whose name starts with Xmb or Xwc) or as UTF-8 encoded
+text (for functions whose name starts with Xutf8),
instead of treating the bytes of the string as direct font indexes.
See section 8.6 for details of the use of Graphics Contexts (GCs)
and possible protocol errors.
@@ -2570,9 +2678,10 @@ the font in the GC is ignored and may be modified by the functions.
No validation that all fonts conform to some width rule is performed.
.LP
The text functions
-.PN XmbDrawText
-and
+.PN XmbDrawText ,
.PN XwcDrawText
+and
+.PN Xutf8DrawText
use the following structures:
.LP
.IN "XmbTextItem" "" "@DEF@"
@@ -2603,11 +2712,13 @@ typedef struct {
.eM
.sp
To draw text using multiple font sets in a given drawable, use
-.PN XmbDrawText
+.PN XmbDrawText ,
+.PN XwcDrawText
or
-.PN XwcDrawText .
+.PN Xutf8DrawText .
.IN "XmbDrawText" "" "@DEF@"
.IN "XwcDrawText" "" "@DEF@"
+.IN "Xutf8DrawText" "" "@DEF@"
.sM
.FD 0
void XmbDrawText\^(\^\fIdisplay\fP\^, \fId\fP\^, \fIgc\fP\^, \fIx\fP\^, \fIy\fP\^, \fIitems\fP\^, \fInitems\fP\^)
@@ -2639,6 +2750,21 @@ void XwcDrawText\^(\^\fIdisplay\fP\^, \fId\fP\^, \fIgc\fP\^, \fIx\fP\^, \fIy\fP\
.br
int \fInitems\fP\^;
.FN
+.FD 0
+void Xutf8DrawText\^(\^\fIdisplay\fP\^, \fId\fP\^, \fIgc\fP\^, \fIx\fP\^, \fIy\fP\^, \fIitems\fP\^, \fInitems\fP\^)
+.br
+ Display *\fIdisplay\fP\^;
+.br
+ Drawable \fId\fP\^;
+.br
+ GC \fIgc\fP\^;
+.br
+ int \fIx\fP\^, \fIy\fP\^;
+.br
+ XmbTextItem *\fIitems\fP\^;
+.br
+ int \fInitems\fP\^;
+.FN
.IP \fIdisplay\fP 1i
Specifies the connection to the X server.
.IP \fId\fP 1i
@@ -2658,9 +2784,10 @@ Specifies the number of text items in the array.
.LP
.eM
The
-.PN XmbDrawText
-and
+.PN XmbDrawText ,
.PN XwcDrawText
+and
+.PN Xutf8DrawText
functions allow complex spacing and font set shifts between text strings.
Each text item is processed in turn, with the origin of a text
element advanced in the primary draw direction by the escapement of the
@@ -2675,18 +2802,19 @@ Leading text items with a font_set member set to
.PN None
will not be drawn.
.LP
-.PN XmbDrawText
-and
+.PN XmbDrawText ,
.PN XwcDrawText
+and
+.PN Xutf8DrawText
do not perform any context-dependent rendering between text segments.
Clients may compute the drawing metrics by passing each text segment to
-.PN XmbTextExtents
-and
-.PN XwcTextExtents
-or
-.PN XmbTextPerCharExtents
-and
+.PN XmbTextExtents ,
+.PN XwcTextExtents ,
+.PN Xutf8TextExtents
+or
+.PN XmbTextPerCharExtents ,
.PN XwcTextPerCharExtents .
+.PN Xutf8TextPerCharExtents .
When the
.PN XFontSet
has missing charsets, each unavailable character is drawn
@@ -2694,13 +2822,21 @@ with the default string returned by
.PN XCreateFontSet .
The behavior for an invalid codepoint is undefined.
.LP
+The function
+.PN Xutf8DrawText
+is an XFree86 extension introduced in XFree86 4.0.2. Its presence is
+indicated by the macro
+.PN X_HAVE_UTF8_STRING .
+.LP
.sp
To draw text using a single font set in a given drawable, use
-.PN XmbDrawString
+.PN XmbDrawString ,
+.PN XwcDrawString
or
-.PN XwcDrawString .
+.PN Xutf8DrawString .
.IN "XmbDrawString" "" "@DEF@"
.IN "XwcDrawString" "" "@DEF@"
+.IN "Xutf8DrawString" "" "@DEF@"
.sM
.FD 0
void XmbDrawString\^(\^\fIdisplay\fP\^, \fId\fP\^, \fIfont_set\fP\^, \fIgc\fP\^, \fIx\fP\^, \fIy\fP\^, \fIstring\fP\^, \fInum_bytes\fP\^)
@@ -2736,6 +2872,23 @@ void XwcDrawString\^(\^\fIdisplay\fP\^, \fId\fP\^, \fIfont_set\fP\^, \fIgc\fP\^,
.br
int \fInum_wchars\fP\^;
.FN
+.FD 0
+void Xutf8DrawString\^(\^\fIdisplay\fP\^, \fId\fP\^, \fIfont_set\fP\^, \fIgc\fP\^, \fIx\fP\^, \fIy\fP\^, \fIstring\fP\^, \fInum_bytes\fP\^)
+.br
+ Display *\fIdisplay\fP\^;
+.br
+ Drawable \fId\fP\^;
+.br
+ XFontSet \fIfont_set\fP\^;
+.br
+ GC \fIgc\fP\^;
+.br
+ int \fIx\fP\^, \fIy\fP\^;
+.br
+ char *\fIstring\fP\^;
+.br
+ int \fInum_bytes\fP\^;
+.FN
.IP \fIdisplay\fP 1i
Specifies the connection to the X server.
.IP \fId\fP 1i
@@ -2759,9 +2912,10 @@ Specifies the number of characters in the string argument.
.LP
.eM
The
-.PN XmbDrawString
-and
+.PN XmbDrawString ,
.PN XwcDrawString
+and
+.PN Xutf8DrawString
functions draw the specified text with the foreground pixel.
When the
.PN XFontSet
@@ -2770,13 +2924,21 @@ with the default string returned by
.PN XCreateFontSet .
The behavior for an invalid codepoint is undefined.
.LP
+The function
+.PN Xutf8DrawString
+is an XFree86 extension introduced in XFree86 4.0.2. Its presence is
+indicated by the macro
+.PN X_HAVE_UTF8_STRING .
+.LP
.sp
To draw image text using a single font set in a given drawable, use
-.PN XmbDrawImageString
+.PN XmbDrawImageString ,
+.PN XwcDrawImageString
or
-.PN XwcDrawImageString .
+.PN Xutf8DrawImageString .
.IN "XmbDrawImageString" "" "@DEF@"
.IN "XwcDrawImageString" "" "@DEF@"
+.IN "Xutf8DrawImageString" "" "@DEF@"
.sM
.FD 0
void XmbDrawImageString\^(\^\fIdisplay\fP\^, \fId\fP\^, \fIfont_set\fP\^, \fIgc\fP\^, \fIx\fP\^, \fIy\fP\^, \fIstring\fP\^, \fInum_bytes\fP\^)
@@ -2812,6 +2974,23 @@ void XwcDrawImageString\^(\^\fIdisplay\fP\^, \fId\fP\^, \fIfont_set\fP\^, \fIgc\
.br
int \fInum_wchars\fP\^;
.FN
+.FD 0
+void Xutf8DrawImageString\^(\^\fIdisplay\fP\^, \fId\fP\^, \fIfont_set\fP\^, \fIgc\fP\^, \fIx\fP\^, \fIy\fP\^, \fIstring\fP\^, \fInum_bytes\fP\^)
+.br
+ Display *\fIdisplay\fP\^;
+.br
+ Drawable \fId\fP\^;
+.br
+ XFontSet \fIfont_set\fP\^;
+.br
+ GC \fIgc\fP\^;
+.br
+ int \fIx\fP\^, \fIy\fP\^;
+.br
+ char *\fIstring\fP\^;
+.br
+ int \fInum_bytes\fP\^;
+.FN
.IP \fIdisplay\fP 1i
Specifies the connection to the X server.
.IP \fId\fP 1i
@@ -2835,15 +3014,17 @@ Specifies the number of characters in the string argument.
.LP
.eM
The
-.PN XmbDrawImageString
-and
+.PN XmbDrawImageString ,
.PN XwcDrawImageString
+and
+.PN Xutf8DrawImageString
functions fill a destination rectangle with the background pixel defined
in the GC and then paint the text with the foreground pixel.
The filled rectangle is the rectangle returned to overall_logical_return by
-.PN XmbTextExtents
-or
+.PN XmbTextExtents ,
.PN XwcTextExtents
+or
+.PN Xutf8TextExtents
for the same text and
.PN XFontSet .
.LP
@@ -2853,6 +3034,12 @@ has missing charsets, each unavailable character is drawn
with the default string returned by
.PN XCreateFontSet .
The behavior for an invalid codepoint is undefined.
+.LP
+The function
+.PN Xutf8TextExtents
+is an XFree86 extension introduced in XFree86 4.0.2. Its presence is
+indicated by the macro
+.PN X_HAVE_UTF8_STRING .
.NH 2
Input Methods
.XS
@@ -3195,9 +3382,10 @@ Getting Keyboard Input
.LP
To obtain characters from an input method,
a client must call the function
-.PN XmbLookupString
-or
+.PN XmbLookupString ,
.PN XwcLookupString
+or
+.PN Xutf8LookupString
with an input context created from that input method.
Both a locale and display are bound to an input method when it is opened,
and an input context inherits this locale and display.
@@ -3205,7 +3393,9 @@ Any strings returned by
.PN XmbLookupString
or
.PN XwcLookupString
-will be encoded in that locale.
+will be encoded in that locale. Strings returned by
+.PN Xutf8LookupString
+are encoded in UTF-8.
.NH 4
Focus Management
.XS
@@ -3213,9 +3403,10 @@ Focus Management
.XE
.LP
For each text entry area in which the
-.PN XmbLookupString
-or
+.PN XmbLookupString ,
.PN XwcLookupString
+or
+.PN Xutf8LookupString
functions are used,
there will be an associated input context.
.LP
@@ -3347,9 +3538,10 @@ Event Filtering
A filtering mechanism is provided to allow input methods
to capture X events transparently to clients.
It is expected that toolkits (or clients) using
-.PN XmbLookupString
-or
+.PN XmbLookupString ,
.PN XwcLookupString
+or
+.PN Xutf8LookupString
will call this filter at some point in the event processing mechanism
to make sure that events needed by an input method can be filtered
by that input method.
@@ -3386,9 +3578,10 @@ by the client itself, tightly coupled with the input method logic.
.LP
When the user enters a keystroke,
the client calls
-.PN XmbLookupString
+.PN XmbLookupString ,
+.PN XwcLookupString
or
-.PN XwcLookupString .
+.PN Xutf8LookupString .
At this point, in the on-the-spot case,
the echo of the keystroke in the preedit has not yet been done.
Before returning to the client logic that handles the input characters,
@@ -3436,9 +3629,10 @@ As highlighted before, the input method architecture provides
preediting, which supports a type of preprocessor input composition.
In this case, composition consists of interpreting a sequence
of key events and returning a committed string via
-.PN XmbLookupString
+.PN XmbLookupString ,
+.PN XwcLookupString
or
-.PN XwcLookupString .
+.PN Xutf8LookupString .
This provides the basics for input methods.
.LP
In addition to preediting based on key events, a general framework
@@ -3509,9 +3703,10 @@ and starts editing again.
.sp
For this reason, an input method supporting this type of conversion
should take notice of when the client calls
-.PN XmbResetIC
+.PN XmbResetIC ,
+.PN XwcResetIC
or
-.PN XwcResetIC ,
+.PN Xutf8ResetIC ,
which is usually an indication of a context change.
.LP
Context-sensitive conversions just need a copy of the client's text,
@@ -3519,9 +3714,10 @@ while other conversions replace the client's text with new text
to achieve the reconversion or transliteration. Yet in all
cases the result of a conversion, either immediately or via preediting,
is returned by the
-.PN XmbLookupString
-and
+.PN XmbLookupString ,
.PN XwcLookupString
+and
+.PN Xutf8LookupString
functions.
.LP
String conversion support is dependent on the availability of the
@@ -4688,11 +4884,13 @@ events from the input method that are directed to the focus window.
.LP
.sp
To reset the state of an input context to its initial state, use
-.PN XmbResetIC
+.PN XmbResetIC ,
+.PN XwcResetIC
or
-.PN XwcResetIC .
+.PN Xutf8ResetIC .
.IN "XmbResetIC" "" "@DEF@"
.IN "XwcResetIC" "" "@DE@"
+.IN "Xutf8ResetIC" "" "@DE@"
.sM
.FD 0
char * XmbResetIC\^(\^\fIic\fP\^)
@@ -4704,6 +4902,11 @@ wchar_t * XwcResetIC\^(\^\fIic\fP\^)
.br
XIC \fIic\fP\^;
.FN
+.FD 0
+char * Xutf8ResetIC\^(\^\fIic\fP\^)
+.br
+ XIC \fIic\fP\^;
+.FN
.IP \fIic\fP 1i
Specifies the input context.
.LP
@@ -4712,9 +4915,10 @@ When
.PN XNResetState
is set to
.PN XIMInitialState ,
-.PN XmbResetIC
-and
+.PN XmbResetIC ,
.PN XwcResetIC
+and
+.PN Xutf8ResetIC
reset an input context to its initial state;
when
.PN XNResetState
@@ -4725,14 +4929,21 @@ In both cases, any input pending on that context is deleted.
The input method is required to clear the preedit area, if any,
and update the status accordingly.
Calling
-.PN XmbResetIC
-or
+.PN XmbResetIC ,
.PN XwcResetIC
+or
+.PN Xutf8ResetIC
does not change the focus.
.LP
The return value of
.PN XmbResetIC
is its current preedit string as a multibyte string.
+The return value of
+.PN XwcResetIC
+is its current preedit string as a wide character string.
+The return value of
+.PN Xutf8ResetIC
+is its current preedit string as an UTF-8 string.
If there is any preedit text drawn or visible to the user,
then these procedures must return a non-NULL string.
If there is no visible preedit text,
@@ -4742,6 +4953,12 @@ whether these procedures return a non-NULL string or NULL.
The client should free the returned string by calling
.PN XFree .
.LP
+The function
+.PN Xutf8ResetIC
+is an XFree86 extension introduced in XFree86 4.0.2. Its presence is
+indicated by the macro
+.PN X_HAVE_UTF8_STRING .
+.LP
.sp
To get the input method associated with an input context, use
.PN XIMOfIC .
@@ -5276,9 +5493,10 @@ Reset State
The
.PN XNResetState
argument specifies the state the input context will return to after calling
-.PN XmbResetIC
+.PN XmbResetIC ,
+.PN XwcResetIC
or
-.PN XwcResetIC .
+.PN Xutf8ResetIC .
.LP
The XIC state may be set to its initial state, as specified by the
.PN XNPreeditState
@@ -5319,9 +5537,10 @@ T}
If
.PN XIMInitialState
is set, then
-.PN XmbResetIC
-and
+.PN XmbResetIC ,
.PN XwcResetIC
+and
+.PN Xutf8ResetIC
will return to the initial
.PN XNPreeditState
state of the XIC.
@@ -5329,9 +5548,10 @@ state of the XIC.
If
.PN XIMPreserveState
is set, then
-.PN XmbResetIC
-and
+.PN XmbResetIC ,
.PN XwcResetIC
+and
+.PN Xutf8ResetIC
will preserve the current state of the XIC.
.LP
If
@@ -5805,9 +6025,10 @@ is set to
the
.PN XNPreeditState
value specified at the creation time will be reflected as the initial state for
-.PN XmbResetIC
+.PN XmbResetIC ,
+.PN XwcResetIC
and
-.PN XwcResetIC .
+.PN Xutf8ResetIC .
.LP
Because this XIC value is optional, a client should call
.PN XGetIMValues
@@ -7004,11 +7225,13 @@ Getting Keyboard Input
.LP
To get composed input from an input method,
use
-.PN XmbLookupString
+.PN XmbLookupString ,
+.PN XwcLookupString
or
-.PN XwcLookupString .
+.PN Xutf8LookupString .
.IN "XmbLookupString" "" "@DEF@"
.IN "XwcLookupString" "" "@DEF@"
+.IN "Xutf8LookupString" "" "@DEF@"
.sM
.FD 0
int XmbLookupString\^(\^\fIic\fP\^, \fIevent\fP\^, \fIbuffer_return\fP\^, \fIbytes_buffer\fP\^, \fIkeysym_return\fP\^, \fIstatus_return\fP\^)
@@ -7040,6 +7263,21 @@ int XwcLookupString\^(\^\fIic\fP\^, \fIevent\fP\^, \fIbuffer_return\fP\^, \fIbyt
.br
Status *\fIstatus_return\fP\^;
.FN
+.FD 0
+int Xutf8LookupString\^(\^\fIic\fP\^, \fIevent\fP\^, \fIbuffer_return\fP\^, \fIbytes_buffer\fP\^, \fIkeysym_return\fP\^, \fIstatus_return\fP\^)
+.br
+ XIC \fIic\fP\^;
+.br
+ XKeyPressedEvent *\fIevent\fP;
+.br
+ char *\fIbuffer_return\fP\^;
+.br
+ int \fIbytes_buffer\fP\^;
+.br
+ KeySym *\fIkeysym_return\fP\^;
+.br
+ Status *\fIstatus_return\fP\^;
+.FN
.IP \fIic\fP 1i
Specifies the input context.
.ds Ev key event to be used
@@ -7060,9 +7298,10 @@ Returns a value indicating what kind of data is returned.
.LP
.eM
The
-.PN XmbLookupString
-and
+.PN XmbLookupString ,
.PN XwcLookupString
+and
+.PN Xutf8LookupString
functions return the string from the input method specified
in the buffer_return argument.
If no string is returned,
@@ -7075,7 +7314,9 @@ If both a string and a KeySym are returned,
the KeySym value does not necessarily correspond to the string returned.
.LP
.PN XmbLookupString
-returns the length of the string in bytes, and
+and
+.PN Xutf8LookupString
+return the length of the string in bytes, and
.PN XwcLookupString
returns the length of the string in characters.
Both
@@ -7083,7 +7324,9 @@ Both
and
.PN XwcLookupString
return text in the encoding of the locale bound to the input method
-of the specified input context.
+of the specified input context, and
+.PN Xutf8LookupString
+returns text in UTF-8 encoding.
.LP
Each string returned by
.PN XmbLookupString
@@ -7092,13 +7335,14 @@ and
begins in the initial state of the encoding of the locale
(if the encoding of the locale is state-dependent).
.NT
-To insure proper input processing,
+To ensure proper input processing,
it is essential that the client pass only
.PN KeyPress
events to
-.PN XmbLookupString
+.PN XmbLookupString ,
+.PN XwcLookupString
and
-.PN XwcLookupString .
+.PN Xutf8LookupString .
Their behavior when a client passes a
.PN KeyRelease
event is undefined.
@@ -7106,7 +7350,7 @@ event is undefined.
.LP
Clients should check the status_return argument before
using the other returned values.
-These two functions both return a value to status_return
+These three functions each return a value to status_return
that indicates what has been returned in the other arguments.
The possible values returned are:
.TS
@@ -7115,9 +7359,10 @@ T{
.PN XBufferOverflow
T} T{
The input string to be returned is too large for the supplied buffer_return.
-The required size
-.Pn ( XmbLookupString
-in bytes;
+The required size (for
+.PN XmbLookupString ,
+.PN Xutf8LookupString
+in bytes; for
.PN XwcLookupString
in characters) is returned as the value of the function,
and the contents of buffer_return and keysym_return are not modified.
@@ -7135,9 +7380,9 @@ T{
.PN XLookupChars
T} T{
Some input characters have been composed.
-They are placed in the buffer_return argument,
+They are placed in the buffer_return argument, using the encoding
+described above,
and the string length is returned as the value of the function.
-The string is encoded in the locale bound to the input context.
The content of the keysym_return argument is not modified.
T}
T{
@@ -7160,16 +7405,24 @@ T}
.TE
.LP
It does not make any difference if the input context passed as an argument to
-.PN XmbLookupString
-and
+.PN XmbLookupString ,
.PN XwcLookupString
+and
+.PN Xutf8LookupString
is the one currently in possession of the focus or not.
Input may have been composed within an input context before it lost the focus,
and that input may be returned on subsequent calls to
-.PN XmbLookupString
-or
+.PN XmbLookupString ,
.PN XwcLookupString
+or
+.PN Xutf8LookupString
even though it does not have any more keyboard focus.
+.LP
+The function
+.PN Xutf8LookupString
+is an XFree86 extension introduced in XFree86 4.0.2. Its presence is
+indicated by the macro
+.PN X_HAVE_UTF8_STRING .
.NH 3
Input Method Conventions
.XS
@@ -7202,9 +7455,10 @@ A
.PN KeyPress
event with a KeyCode of zero is used exclusively as a
signal that an input method has composed input that can be returned by
-.PN XmbLookupString
+.PN XmbLookupString ,
+.PN XwcLookupString
or
-.PN XwcLookupString .
+.PN Xutf8LookupString .
No other use is made of a
.PN KeyPress
event with KeyCode of zero.
diff --git a/specs/X11/CH14 b/specs/X11/CH14
index 34c09da..16d66e7 100644
--- a/specs/X11/CH14
+++ b/specs/X11/CH14
@@ -1,4 +1,5 @@
.\" Copyright \(co 1985, 1986, 1987, 1988, 1989, 1990, 1991, 1994, 1996 X Consortium
+.\" Copyright \(co 2000 The XFree86 Project, Inc.
.\"
.\" Permission is hereby granted, free of charge, to any person obtaining
.\" a copy of this software and associated documentation files (the
@@ -39,6 +40,8 @@
.\" Digital and Tektronix makes no representations about the suitability
.\" of this documentation for any purpose.
.\" It is provided ``as is'' without express or implied warranty.
+.\"
+.\" $XFree86: xc/doc/specs/X11/CH14,v 1.2 2000/11/28 18:49:19 dawes Exp $
.\"
\&
.sp 1
@@ -499,21 +502,29 @@ typedef enum {
XStringStyle, /* STRING */
XCompoundTextStyle, /* COMPOUND_TEXT */
XTextStyle, /* text in owner's encoding (current locale) */
- XStdICCTextStyle /* STRING, else COMPOUND_TEXT */
+ XStdICCTextStyle, /* STRING, else COMPOUND_TEXT */
+ XUTF8StringStyle /* UTF8_STRING */
} XICCEncodingStyle;
.De
.LP
.eM
-.sp
+The value
+.PN XUTF8StringStyle
+is an XFree86 extension introduced in XFree86 4.0.2. Its presence is
+indicated by the macro
+.PN X_HAVE_UTF8_STRING .
.LP
+.sp
To convert a list of text strings to an
.PN XTextProperty
structure, use
-.PN XmbTextListToTextProperty
+.PN XmbTextListToTextProperty ,
+.PN XwcTextListToTextProperty
or
-.PN XwcTextListToTextProperty .
+.PN Xutf8TextListToTextProperty .
.IN "XmbTextListToTextProperty" "" "@DEF@"
.IN "XwcTextListToTextProperty" "" "@DEF@"
+.IN "Xutf8TextListToTextProperty" "" "@DEF@"
.sM
.FD 0
int XmbTextListToTextProperty\^(\^\fIdisplay\fP\^, \fIlist\fP\^, \fIcount\fP\^, \fIstyle\fP\^, \fItext_prop_return\fP\^)
@@ -541,6 +552,19 @@ int XwcTextListToTextProperty\^(\^\fIdisplay\fP\^, \fIlist\fP\^, \fIcount\fP\^,
.br
XTextProperty *\fItext_prop_return\fP\^;
.FN
+.FD 0
+int Xutf8TextListToTextProperty\^(\^\fIdisplay\fP\^, \fIlist\fP\^, \fIcount\fP\^, \fIstyle\fP\^, \fItext_prop_return\fP\^)
+.br
+ Display *\fIdisplay\fP\^;
+.br
+ char **\fIlist\fP\^;
+.br
+ int \fIcount\fP\^;
+.br
+ XICCEncodingStyle \fIstyle\fP\^;
+.br
+ XTextProperty *\fItext_prop_return\fP\^;
+.FN
.IP \fIdisplay\fP 1i
Specifies the connection to the X server.
.IP \fIlist\fP 1i
@@ -556,15 +580,20 @@ structure.
.LP
.eM
The
-.PN XmbTextListToTextProperty
-and
+.PN XmbTextListToTextProperty ,
.PN XwcTextListToTextProperty
+and
+.PN Xutf8TextListToTextProperty
functions set the specified
.PN XTextProperty
value to a set of null-separated elements representing the concatenation
-of the specified list of null-terminated text strings.
-A final terminating null is stored at the end of the value field
-of text_prop_return but is not included in the nitems member.
+of the specified list of null-terminated text strings. The input text
+strings must be given in the current locale encoding (for
+.PN XmbTextListToTextProperty
+and
+.PN XwcTextListToTextProperty ),
+or in UTF-8 encoding (for
+.PN Xutf8TextListToTextProperty ).
.LP
The functions set the encoding field of text_prop_return to an
.PN Atom
@@ -578,6 +607,12 @@ or
.PN XCompoundTextStyle
is specified,
this encoding is ``STRING'' or ``COMPOUND_TEXT'', respectively.
+If the style
+.PN XUTF8StringStyle
+is specified,
+this encoding is ``UTF8_STRING''. (This is an XFree86 extension introduced in
+XFree86 4.0.2. Its presence is indicated by the macro
+.PN X_HAVE_UTF8_STRING .)
If the style
.PN XTextStyle
is specified,
@@ -587,6 +622,8 @@ If the style
is specified,
this encoding is ``STRING'' if the text is fully convertible to STRING,
else ``COMPOUND_TEXT''.
+A final terminating null byte is stored at the end of the value field
+of text_prop_return but is not included in the nitems member.
.LP
If insufficient memory is available for the new value string,
the functions return
@@ -614,16 +651,24 @@ is guaranteed.
.LP
To free the storage for the value field, use
.PN XFree .
+.LP
+The function
+.PN Xutf8TextListToTextProperty
+is an XFree86 extension introduced in XFree86 4.0.2. Its presence is
+indicated by the macro
+.PN X_HAVE_UTF8_STRING .
.sp
.LP
To obtain a list of text strings from an
.PN XTextProperty
structure, use
-.PN XmbTextPropertyToTextList
+.PN XmbTextPropertyToTextList ,
+.PN XwcTextPropertyToTextList
or
-.PN XwcTextPropertyToTextList .
+.PN Xutf8TextPropertyToTextList .
.IN "XmbTextPropertyToTextList" "" "@DEF@"
.IN "XwcTextPropertyToTextList" "" "@DEF@"
+.IN "Xutf8TextPropertyToTextList" "" "@DEF@"
.sM
.FD 0
int XmbTextPropertyToTextList\^(\^\fIdisplay\fP\^, \fItext_prop\fP\^, \fIlist_return\fP\^, \fIcount_return\fP\^)
@@ -647,6 +692,17 @@ int XwcTextPropertyToTextList\^(\^\fIdisplay\fP\^, \fItext_prop\fP\^, \fIlist_re
.br
int *\fIcount_return\fP\^;
.FN
+.FD 0
+int Xutf8TextPropertyToTextList\^(\^\fIdisplay\fP\^, \fItext_prop\fP\^, \fIlist_return\fP\^, \fIcount_return\fP\^)
+.br
+ Display *\fIdisplay\fP\^;
+.br
+ XTextProperty *\fItext_prop\fP\^;
+.br
+ char ***\fIlist_return\fP\^;
+.br
+ int *\fIcount_return\fP\^;
+.FN
.IP \fIdisplay\fP 1i
Specifies the connection to the X server.
.IP \fItext_prop\fP 1i
@@ -661,13 +717,20 @@ Returns the number of \*(Cn.
.LP
.eM
The
-.PN XmbTextPropertyToTextList
-and
+.PN XmbTextPropertyToTextList ,
.PN XwcTextPropertyToTextList
-functions return a list of text strings in the current locale representing the
+and
+.PN Xutf8TextPropertyToTextList
+functions return a list of text strings representing the
null-separated elements of the specified
.PN XTextProperty
-structure.
+structure. The returned strings are encoded using the current locale encoding
+(for
+.PN XmbTextPropertyToTextList
+and
+.PN XwcTextPropertyToTextList )
+or in UTF-8 (for
+.PN Xutf8TextPropertyToTextList ).
The data in text_prop must be format 8.
.LP
Multiple elements of the property (for example, the strings in a disjoint
@@ -676,9 +739,10 @@ The contents of the property are not required to be null-terminated;
any terminating null should not be included in text_prop.nitems.
.LP
If insufficient memory is available for the list and its elements,
-.PN XmbTextPropertyToTextList
-and
+.PN XmbTextPropertyToTextList ,
.PN XwcTextPropertyToTextList
+and
+.PN Xutf8TextPropertyToTextList
return
.PN XNoMemory .
If the current locale is not supported,
@@ -689,7 +753,7 @@ to the encoding of the current locale,
the functions return
.PN XConverterNotFound .
For supported locales,
-existence of a converter from COMPOUND_TEXT, STRING
+existence of a converter from COMPOUND_TEXT, STRING, UTF8_STRING
or the encoding of the current locale is guaranteed if
.PN XSupportsLocale
returns
@@ -701,14 +765,15 @@ In all of these error cases,
the functions do not set any return values.
.LP
Otherwise,
-.PN XmbTextPropertyToTextList
-and
+.PN XmbTextPropertyToTextList ,
.PN XwcTextPropertyToTextList
+and
+.PN Xutf8TextPropertyToTextList
return the list of null-terminated text strings to list_return
and the number of text strings to count_return.
.LP
-If the value field of text_prop is not fully convertible to the encoding of
-the current locale,
+If the value field of text_prop is not fully convertible to the
+encoding of the current locale,
the functions return the number of unconvertible characters.
Each unconvertible character is converted to a string in the
current locale that is specific to the current locale.
@@ -716,20 +781,29 @@ To obtain the value of this string,
use
.PN XDefaultString .
Otherwise,
-.PN XmbTextPropertyToTextList
-and
+.PN XmbTextPropertyToTextList ,
.PN XwcTextPropertyToTextList
+and
+.PN Xutf8TextPropertyToTextList
return
.PN Success .
.LP
To free the storage for the list and its contents returned by
-.PN XmbTextPropertyToTextList ,
+.PN XmbTextPropertyToTextList
+or
+.PN Xutf8TextPropertyToTextList ,
use
.PN XFreeStringList .
To free the storage for the list and its contents returned by
.PN XwcTextPropertyToTextList ,
use
.PN XwcFreeStringList .
+.LP
+The function
+.PN Xutf8TextPropertyToTextList
+is an XFree86 extension introduced in XFree86 4.0.2. Its presence is
+indicated by the macro
+.PN X_HAVE_UTF8_STRING .
.sp
.LP
To free the in-memory data associated with the specified
@@ -901,7 +975,8 @@ Specifies the list of strings to be freed.
The
.PN XFreeStringList
function releases memory allocated by
-.PN XmbTextPropertyToTextList
+.PN XmbTextPropertyToTextList ,
+.PN Xutf8TextPropertyToTextList
and
.PN XTextPropertyToStringList
and the missing charset list allocated by
@@ -2680,13 +2755,16 @@ Using Window Manager Convenience Functions
.LP
The
.PN XmbSetWMProperties
-function stores the standard set of window manager properties,
+and
+.PN Xutf8SetWMProperties
+functions store the standard set of window manager properties,
with text properties in standard encodings
for internationalized text communication.
The standard window manager properties for a given window are
WM_NAME, WM_ICON_NAME, WM_HINTS, WM_NORMAL_HINTS, WM_CLASS,
WM_COMMAND, WM_CLIENT_MACHINE, and WM_LOCALE_NAME.
.IN "XmbSetWMProperties" "" "@DEF@"
+.IN "Xutf8SetWMProperties" "" "@DEF@"
.sM
.FD 0
void XmbSetWMProperties\^(\^\fIdisplay\fP\^, \fIw\fP\^, \fIwindow_name\fP\^, \fIicon_name\fP\^, \fIargv\fP\^, \fIargc\fP\^,
@@ -2711,6 +2789,29 @@ void XmbSetWMProperties\^(\^\fIdisplay\fP\^, \fIw\fP\^, \fIwindow_name\fP\^, \fI
.br
XClassHint *\fIclass_hints\fP\^;
.FN
+.FD 0
+void Xutf8SetWMProperties\^(\^\fIdisplay\fP\^, \fIw\fP\^, \fIwindow_name\fP\^, \fIicon_name\fP\^, \fIargv\fP\^, \fIargc\fP\^,
+.br
+ \fInormal_hints\fP\^, \fIwm_hints\fP\^, \fIclass_hints\fP\^)
+.br
+ Display *\fIdisplay\fP\^;
+.br
+ Window \fIw\fP\^;
+.br
+ char *\fIwindow_name\fP\^;
+.br
+ char *\fIicon_name\fP\^;
+.br
+ char *\fIargv\fP\^[];
+.br
+ int \fIargc\fP\^;
+.br
+ XSizeHints *\fInormal_hints\fP\^;
+.br
+ XWMHints *\fIwm_hints\fP\^;
+.br
+ XClassHint *\fIclass_hints\fP\^;
+.FN
.IP \fIdisplay\fP 1i
Specifies the connection to the X server.
.IP \fIw\fP 1i
@@ -2739,19 +2840,22 @@ structure to be used.
.eM
The
.PN XmbSetWMProperties
-convenience function provides a simple programming interface
+and
+.PN Xutf8SetWMProperties
+convenience functions provide a simple programming interface
for setting those essential window properties that are used
for communicating with other clients
(particularly window and session managers).
.LP
If the window_name argument is non-NULL,
-.PN XmbSetWMProperties
-sets the WM_NAME property.
+they set the WM_NAME property.
If the icon_name argument is non-NULL,
+they set the WM_ICON_NAME property.
+The window_name and icon_name arguments are null-terminated strings, for
.PN XmbSetWMProperties
-sets the WM_ICON_NAME property.
-The window_name and icon_name arguments are null-terminated strings
-in the encoding of the current locale.
+in the encoding of the current locale, for
+.PN Xutf8SetWMProperties
+in UTF-8 encoding.
If the arguments can be fully converted to the STRING encoding,
the properties are created with type ``STRING'';
otherwise, the arguments are converted to Compound Text,
@@ -2759,18 +2863,24 @@ and the properties are created with type ``COMPOUND_TEXT''.
.LP
If the normal_hints argument is non-NULL,
.PN XmbSetWMProperties
-calls
+and
+.PN Xutf8SetWMProperties
+call
.PN XSetWMNormalHints ,
which sets the WM_NORMAL_HINTS property (see section 14.1.7).
If the wm_hints argument is non-NULL,
.PN XmbSetWMProperties
-calls
+and
+.PN Xutf8SetWMProperties
+call
.PN XSetWMHints ,
which sets the WM_HINTS property (see section 14.1.6).
.LP
If the argv argument is non-NULL,
.PN XmbSetWMProperties
-sets the WM_COMMAND property from argv and argc.
+and
+.PN Xutf8SetWMProperties
+set the WM_COMMAND property from argv and argc.
An argc of zero indicates a zero-length command.
.LP
The hostname of the machine is stored using
@@ -2779,7 +2889,9 @@ The hostname of the machine is stored using
.LP
If the class_hints argument is non-NULL,
.PN XmbSetWMProperties
-sets the WM_CLASS property.
+and
+.PN Xutf8SetWMProperties
+set the WM_CLASS property.
If the res_name member in the
.PN XClassHint
structure is set to the NULL pointer and the RESOURCE_NAME
@@ -2792,24 +2904,34 @@ is substituted for res_name.
.LP
It is assumed that the supplied class_hints.res_name and argv,
the RESOURCE_NAME environment variable, and the hostname of the machine
-are in the encoding of the locale announced for the LC_CTYPE category
-(on POSIX-compliant systems, the LC_CTYPE, else LANG environment variable).
+are in the encoding of the current locale.
The corresponding WM_CLASS, WM_COMMAND, and WM_CLIENT_MACHINE properties
are typed according to the local host locale announcer.
-No encoding conversion is performed prior to storage in the properties.
+No encoding conversion is performed for these strings prior to storage
+in the properties.
.LP
For clients that need to process the property text in a locale,
.PN XmbSetWMProperties
-sets the WM_LOCALE_NAME property to be the name of the current locale.
+and
+.PN Xutf8SetWMProperties
+set the WM_LOCALE_NAME property to be the name of the current locale.
The name is assumed to be in the Host Portable Character Encoding
and is converted to STRING for storage in the property.
.LP
.PN XmbSetWMProperties
+and
+.PN Xutf8SetWMProperties
can generate
.PN BadAlloc
and
.PN BadWindow
errors.
+.LP
+The function
+.PN Xutf8SetWMProperties
+is an XFree86 extension introduced in XFree86 4.0.2. Its presence is
+indicated by the macro
+.PN X_HAVE_UTF8_STRING .
.sp
.LP
To set a window's standard window manager properties
diff --git a/specs/X11/glossary b/specs/X11/glossary
index a130928..7aea056 100644
--- a/specs/X11/glossary
+++ b/specs/X11/glossary
@@ -1,3 +1,6 @@
+.\"
+.\" $XFree86: xc/doc/specs/X11/glossary,v 1.2 2000/11/28 18:49:19 dawes Exp $
+.\"
\&
.sp 1
.ce 1
@@ -402,7 +405,7 @@ characters.
The representations do not have to be of uniform length.
Examples are an ISO2022 graphic set, a state-independent
or state-dependent combination of graphic sets, possibly including control
-sets, and the X Compound Text encoding.
+sets, the X Compound Text encoding, and the UTF-8 ISO10646/Unicode encoding.
.IP
In X, encodings are identified by a string
which appears as: the
diff --git a/specs/XIM/xim.ms b/specs/XIM/xim.ms
index 488e88c..c7f80c2 100644
--- a/specs/XIM/xim.ms
+++ b/specs/XIM/xim.ms
@@ -1,5 +1,6 @@
.\" $Xorg: xim.ms,v 1.3 2000/08/17 19:42:21 cpqbld Exp $
.\" To print this out, type tbl macros.t ThisFile | troff -ms
+.\" $XFree86: xc/doc/specs/XIM/xim.ms,v 1.3 2001/01/17 16:57:42 dawes Exp $
.EH ''''
.OH ''''
.EF ''''
@@ -331,8 +332,8 @@ performance purposes. (Refer to Appendix A for more information.)
.LP
.LP
.bp
-... 0.05 6.513 4.737 10.45
-... 0.000i 3.937i 4.687i 0.000i
+\^... 0.05 6.513 4.737 10.45
+\^... 0.000i 3.937i 4.687i 0.000i
.nr 00 \n(.u
.nf
.PS 3.937i 4.687i
@@ -1962,8 +1963,8 @@ Following chart shows one of the simplest protocol flow which only
deals with keyevents for preediting operation.
.LP
.\"====================== event flow figure start =====================
-... 0.425 6.888 6.3 10.296
-... 0.000i 3.408i 5.875i 0.000i
+\^... 0.425 6.888 6.3 10.296
+\^... 0.000i 3.408i 5.875i 0.000i
.nr 00 \n(.u
.nf
.PS 3.408i 5.875i
@@ -2162,8 +2163,8 @@ and button press event.
.LP
.bp
.\"====================== event2 flow figure start =====================
-... 0.425 5.575 6.3 10.296
-... 0.000i 4.721i 5.875i 0.000i
+\^... 0.425 5.575 6.3 10.296
+\^... 0.000i 4.721i 5.875i 0.000i
.nr 00 \n(.u
.nf
.PS 4.721i 5.875i
@@ -2713,7 +2714,7 @@ XIM_STR_CONVERSION_REPLY (IM library \(-> IM Server)
:2:CARD16:input-context-ID
:4:CARD32:XIMStringConversionFeedback
::XIMSTRCONVTEXT:XIMStringConversionText
-.SP
+.sp
.TE
.RE
.LP
@@ -2883,7 +2884,7 @@ XIM_PREEDITSTATE (IM Server \(-> IM Library)
::#x0000001:XIMPreeditEnable
::#x0000002:XIMPreeditDisable
.TE
-.SP
+.sp
.TE
.RE
.LP
@@ -3319,8 +3320,8 @@ static event flow is as follows:
.LP
.\"===================================================================
.sp
-... 1.675 6.888 6.237 10.296
-... 0.000i 3.408i 4.562i 0.000i
+\^... 1.675 6.888 6.237 10.296
+\^... 0.000i 3.408i 4.562i 0.000i
.nr 00 \n(.u
.nf
.PS 3.408i 4.562i
@@ -3410,8 +3411,8 @@ sample protocol sequence.
.bp
.LP
.\"===================================================================
-... 1.675 6.888 6.237 10.296
-... 0.000i 3.408i 4.562i 0.000i
+\^... 1.675 6.888 6.237 10.296
+\^... 0.000i 3.408i 4.562i 0.000i
.nr 00 \n(.u
.nf
.PS 3.408i 4.562i
@@ -3534,8 +3535,8 @@ The sample protocol sequence are as follows:
.LP
.\"====================================================================
.sp
-... 1.488 7.325 6.487 10.358
-... 0.000i 3.033i 4.999i 0.000i
+\^... 1.488 7.325 6.487 10.358
+\^... 0.000i 3.033i 4.999i 0.000i
.nr 00 \n(.u
.nf
.PS 3.033i 4.999i
@@ -3633,8 +3634,8 @@ The sample protocol sequence are as follows:
<<Using the dynamic event flow>>
.LP
.\"====================================================================
-... 1.488 7.325 6.487 10.358
-... 0.000i 3.033i 4.999i 0.000i
+\^... 1.488 7.325 6.487 10.358
+\^... 0.000i 3.033i 4.999i 0.000i
.nr 00 \n(.u
.nf
.PS 3.033i 4.999i
diff --git a/specs/XPRINT/xp_proto.mif b/specs/XPRINT/xp_proto.mif
index 5396150..3ff4705 100644
--- a/specs/XPRINT/xp_proto.mif
+++ b/specs/XPRINT/xp_proto.mif
@@ -66696,7 +66696,7 @@
<Unique 940>
<PgfTag `Body'>
<ParaLine
- <String `The X Print Service selects attributes in a way that is consistent with the X Windows System, ISO/IEC '>
+ <String `The X Print Service selects attributes in a way that is consistent with the X Window System, ISO/IEC '>
>
<ParaLine
<String `10175 (ISO DPA), and POSIX 1387.4 print standards. The ISO DPA defines a number of abstract objects '>
diff --git a/specs/XProtocol/X11.protocol b/specs/XProtocol/X11.protocol
index 660700b..3a4d15c 100644
--- a/specs/XProtocol/X11.protocol
+++ b/specs/XProtocol/X11.protocol
@@ -1,4 +1,9 @@
.\" $Xorg: X11.protocol,v 1.3 2000/08/17 19:42:23 cpqbld Exp $
+.\"
+.\"
+.\"
+.\"
+.\" $XFree86: xc/doc/specs/XProtocol/X11.protocol,v 1.3 2001/01/17 16:57:42 dawes Exp $
.EH ''''
.OH ''''
.EF ''''
@@ -1440,8 +1445,8 @@ delim %%
.sM
.IN "CreateWindow" "" "@DEF@"
.PN CreateWindow
-.in +.2i
.LP
+.in +.2i
\fIwid\fP, \fIparent\fP\^: WINDOW
.br
\fIclass\fP\^:
@@ -1461,7 +1466,9 @@ delim %%
\fIvalue-mask\fP\^: BITMASK
.br
\fIvalue-list\fP\^: LISTofVALUE
+.in -.2i
.LP
+.in +.2i
Errors:
.PN Alloc ,
.PN Colormap ,
@@ -1945,14 +1952,16 @@ The server might or might not make a copy of the pixmap.
.sM
.IN "ChangeWindowAttributes" "" "@DEF@"
.PN ChangeWindowAttributes
-.in +.2i
.LP
+.in +.2i
\fIwindow\fP\^: WINDOW
.br
\fIvalue-mask\fP\^: BITMASK
.br
\fIvalue-list\fP\^: LISTofVALUE
+.in -.2i
.LP
+.in +.2i
Errors:
.PN Access ,
.PN Colormap ,
@@ -2033,14 +2042,14 @@ a subset of the attributes may have been altered.
.sM
.IN "GetWindowAttributes" "" "@DEF@"
.PN GetWindowAttributes
-.in +.2i
.LP
+.in +.2i
\fIwindow\fP\^: WINDOW
.in -.2i
.LP
\(->
-.in +.2i
.LP
+.in +.2i
visual: VISUALID
.br
class:
@@ -2077,7 +2086,9 @@ all-event-masks, your-event-mask: SETofEVENT
do-not-propagate-mask: SETofDEVICEEVENT
.br
override-redirect: BOOL
+.in -.2i
.LP
+.in +.2i
Errors:
.PN Window
.in -.2i
@@ -2095,10 +2106,12 @@ Your-event-mask is the event mask selected by the querying client.
.sM
.IN "DestroyWindow" "" "@DEF@"
.PN DestroyWindow
-.in +.2i
.LP
+.in +.2i
\fIwindow\fP\^: WINDOW
+.in -.2i
.LP
+.in +.2i
Errors:
.PN Window
.in -.2i
@@ -2129,10 +2142,12 @@ this request has no effect.
.sM
.IN "DestroySubwindows" "" "@DEF@"
.PN DestroySubwindows
-.in +.2i
.LP
+.in +.2i
\fIwindow\fP\^: WINDOW
+.in -.2i
.LP
+.in +.2i
Errors:
.PN Window
.in -.2i
@@ -2146,15 +2161,17 @@ request on all children of the window, in bottom-to-top stacking order.
.sM
.IN "ChangeSaveSet" "" "@DEF@"
.PN ChangeSaveSet
-.in +.2i
.LP
+.in +.2i
\fIwindow\fP\^: WINDOW
.br
\fImode\fP\^:
.Pn { Insert ,
.PN Delete }
+.in -.2i
.LP
Errors:
+.in +.2i
.PN Match ,
.PN Value ,
.PN Window
@@ -2176,12 +2193,14 @@ the server automatically removes them from the save-set.
.sM
.IN "ReparentWindow" "" "@DEF@"
.PN ReparentWindow
-.in +.2i
.LP
+.in +.2i
\fIwindow\fP\^, \fIparent\fP\^: WINDOW
.br
\fIx\fP\^, \fIy\fP\^: INT16
+.in -.2i
.LP
+.in +.2i
Errors:
.PN Match ,
.PN Window
@@ -2234,10 +2253,12 @@ background, and the new parent is not the same depth as the window.
.sM
.IN "MapWindow" "" "@DEF@"
.PN MapWindow
-.in +.2i
.LP
+.in +.2i
\fIwindow\fP\^: WINDOW
+.in -.2i
.LP
+.in +.2i
Errors:
.PN Window
.in -.2i
@@ -2272,10 +2293,12 @@ Similar tiling and exposure take place for any newly viewable inferiors.
.sM
.IN "MapSubwindows" "" "@DEF@"
.PN MapSubwindows
-.in +.2i
.LP
+.in +.2i
\fIwindow\fP\^: WINDOW
+.in -.2i
.LP
+.in +.2i
Errors:
.PN Window
.in -.2i
@@ -2290,10 +2313,12 @@ in top-to-bottom stacking order.
.sM
.IN "UnmapWindow" "" "@DEF@"
.PN UnmapWindow
-.in +.2i
.LP
+.in +.2i
\fIwindow\fP\^: WINDOW
+.in -.2i
.LP
+.in +.2i
Errors:
.PN Window
.in -.2i
@@ -2309,10 +2334,12 @@ Normal exposure processing on formerly obscured windows is performed.
.sM
.IN "UnmapSubwindows" "" "@DEF@"
.PN UnmapSubwindows
-.in +.2i
.LP
+.in +.2i
\fIwindow\fP\^: WINDOW
+.in -.2i
.LP
+.in +.2i
Errors:
.PN Window
.in -.2i
@@ -2327,14 +2354,16 @@ in bottom-to-top stacking order.
.sM
.IN "ConfigureWindow" "" "@DEF@"
.PN ConfigureWindow
-.in +.2i
.LP
+.in +.2i
\fIwindow\fP\^: WINDOW
.br
\fIvalue-mask\fP\^: BITMASK
.br
\fIvalue-list\fP\^: LISTofVALUE
+.in -.2i
.LP
+.in +.2i
Errors:
.PN Match ,
.PN Value ,
@@ -2675,14 +2704,16 @@ Attempts to configure a root window have no effect.
.sM
.IN "CirculateWindow" "" "@DEF@"
.PN CirculateWindow
-.in +.2i
.LP
+.in +.2i
\fIwindow\fP\^: WINDOW
.br
\fIdirection\fP\^:
.Pn { RaiseLowest ,
.PN LowerHighest }
+.in -.2i
.LP
+.in +.2i
Errors:
.PN Value ,
.PN Window
@@ -2714,14 +2745,14 @@ Exposure processing is performed on formerly obscured windows.
.sM
.IN "GetGeometry" "" "@DEF@"
.PN GetGeometry
-.in +.2i
.LP
+.in +.2i
\fIdrawable\fP\^: DRAWABLE
.in -.2i
.LP
\(->
-.in +.2i
.LP
+.in +.2i
root: WINDOW
.br
depth: CARD8
@@ -2729,7 +2760,9 @@ depth: CARD8
x, y: INT16
.br
width, height, border-width: CARD16
+.in -.2i
.LP
+.in +.2i
Errors:
.PN Drawable
.in -.2i
@@ -2751,21 +2784,23 @@ window as a drawable to this request.
.sM
.IN "QueryTree" "" "@DEF@"
.PN QueryTree
-.in +.2i
.LP
+.in +.2i
\fIwindow\fP\^: WINDOW
-.LP
.in -.2i
+.LP
\(->
-.in +.2i
.LP
+.in +.2i
root: WINDOW
.br
parent: WINDOW or
.PN None
.br
children: LISTofWINDOW
+.in -.2i
.LP
+.in +.2i
Errors:
.PN Window
.in -.2i
@@ -2778,19 +2813,21 @@ The children are listed in bottom-to-top stacking order.
.sM
.IN "InternAtom" "" "@DEF@"
.PN InternAtom
-.in +.2i
.LP
+.in +.2i
\fIname\fP\^: STRING8
.br
\fIonly-if-exists\fP\^: BOOL
.in -.2i
.LP
\(->
-.in +.2i
.LP
+.in +.2i
atom: ATOM or
.PN None
+.in -.2i
.LP
+.in +.2i
Errors:
.PN Alloc ,
.PN Value
@@ -2811,16 +2848,18 @@ Atoms remain defined until server reset (see section 10).
.sM
.IN "GetAtomName" "" "@DEF@"
.PN GetAtomName
-.in +.2i
.LP
+.in +.2i
\fIatom\fP\^: ATOM
.in -.2i
.LP
\(->
-.in +.2i
.LP
+.in +.2i
name: STRING8
+.in -.2i
.LP
+.in +.2i
Errors:
.PN Atom
.in -.2i
@@ -2832,8 +2871,8 @@ This request returns the name for the given atom.
.sM
.IN "ChangeProperty" "" "@DEF@"
.PN ChangeProperty
-.in +.2i
.LP
+.in +.2i
\fIwindow\fP\^: WINDOW
.br
\fIproperty\fP, \fItype\fP\^: ATOM
@@ -2846,7 +2885,9 @@ This request returns the name for the given atom.
.PN Append }
.br
\fIdata\fP\^: LISTofINT8 or LISTofINT16 or LISTofINT32
+.in -.2i
.LP
+.in +.2i
Errors:
.PN Alloc ,
.PN Atom ,
@@ -2895,12 +2936,14 @@ The maximum size of a property is server-dependent and may vary dynamically.
.sM
.IN "DeleteProperty" "" "@DEF@"
.PN DeleteProperty
-.in +.2i
.LP
+.in +.2i
\fIwindow\fP\^: WINDOW
.br
\fIproperty\fP\^: ATOM
+.in -.2i
.LP
+.in +.2i
Errors:
.PN Atom ,
.PN Window
@@ -2916,8 +2959,8 @@ event on the window unless the property does not exist.
.sM
.IN "GetProperty" "" "@DEF@"
.PN GetProperty
-.in +.2i
.LP
+.in +.2i
\fIwindow\fP\^: WINDOW
.br
\fIproperty\fP\^: ATOM
@@ -2931,8 +2974,8 @@ event on the window unless the property does not exist.
.in -.2i
.LP
\(->
-.in +.2i
.LP
+.in +.2i
type: ATOM or
.PN None
.br
@@ -2941,7 +2984,9 @@ format: {0, 8, 16, 32}
bytes-after: CARD32
.br
value: LISTofINT8 or LISTofINT16 or LISTofINT32
+.in -.2i
.LP
+.in +.2i
Errors:
.PN Atom ,
.PN Value ,
@@ -2997,14 +3042,16 @@ event is generated on the window.
.sM
.IN "RotateProperties" "" "@DEF@"
.PN RotateProperties
-.in +.2i
.LP
+.in +.2i
\fIwindow\fP\^: WINDOW
.br
\fIdelta\fP\^: INT16
.br
\fIproperties\fP\^: LISTofATOM
+.in -.2i
.LP
+.in +.2i
Errors:
.PN Atom ,
.PN Match ,
@@ -3039,16 +3086,18 @@ error is generated, no properties are changed.
.sM
.IN "ListProperties" "" "@DEF@"
.PN ListProperties
-.in +.2i
.LP
+.in +.2i
\fIwindow\fP\^: WINDOW
.in -.2i
.LP
\(->
-.in +.2i
.LP
+.in +.2i
atoms: LISTofATOM
+.in -.2i
.LP
+.in +.2i
Errors:
.PN Window
.in -.2i
@@ -3060,8 +3109,8 @@ This request returns the atoms of properties currently defined on the window.
.sM
.IN "SetSelectionOwner" "" "@DEF@"
.PN SetSelectionOwner
-.in +.2i
.LP
+.in +.2i
\fIselection\fP\^: ATOM
.br
\fIowner\fP\^: WINDOW or
@@ -3069,7 +3118,9 @@ This request returns the atoms of properties currently defined on the window.
.br
\fItime\fP\^: TIMESTAMP or
.PN CurrentTime
+.in -.2i
.LP
+.in +.2i
Errors:
.PN Atom ,
.PN Window
@@ -3122,17 +3173,19 @@ Selections are global to the server.
.sM
.IN "GetSelectionOwner" "" "@DEF@"
.PN GetSelectionOwner
-.in +.2i
.LP
+.in +.2i
\fIselection\fP\^: ATOM
.in -.2i
.LP
\(->
-.in +.2i
.LP
+.in +.2i
owner: WINDOW or
.PN None
+.in -.2i
.LP
+.in +.2i
Errors:
.PN Atom
.in -.2i
@@ -3148,8 +3201,8 @@ is returned, then there is no owner for the selection.
.sM
.IN "ConvertSelection" "" "@DEF@"
.PN ConvertSelection
-.in +.2i
.LP
+.in +.2i
\fIselection\fP, \fItarget\fP\^: ATOM
.br
\fIproperty\fP\^: ATOM or
@@ -3159,7 +3212,9 @@ is returned, then there is no owner for the selection.
.br
\fItime\fP\^: TIMESTAMP or
.PN CurrentTime
+.in -.2i
.LP
+.in +.2i
Errors:
.PN Atom ,
.PN Window
@@ -3181,8 +3236,8 @@ The arguments are passed on unchanged in either of the events.
.sM
.IN "SendEvent" "" "@DEF@"
.PN SendEvent
-.in +.2i
.LP
+.in +.2i
\fIdestination\fP\^: WINDOW or
.PN PointerWindow
or
@@ -3193,7 +3248,9 @@ or
\fIevent-mask\fP\^: SETofEVENT
.br
\fIevent\fP\^: <normal-event-format>
+.in -.2i
.LP
+.in +.2i
Errors:
.PN Value ,
.PN Window
@@ -3250,8 +3307,8 @@ Active grabs are ignored for this request.
.sM
.IN "GrabPointer" "" "@DEF@"
.PN GrabPointer
-.in +.2i
.LP
+.in +.2i
\fIgrab-window\fP\^: WINDOW
.br
\fIowner-events\fP\^: BOOL
@@ -3273,15 +3330,17 @@ Active grabs are ignored for this request.
.in -.2i
.LP
\(->
-.in +.2i
.LP
+.in +.2i
status:
.Pn { Success ,
.PN AlreadyGrabbed ,
.PN Frozen ,
.PN InvalidTime ,
.PN NotViewable }
+.in -.2i
.LP
+.in +.2i
Errors:
.PN Cursor ,
.PN Value ,
@@ -3380,8 +3439,8 @@ replaced by the current server time.
.sM
.IN "UngrabPointer" "" "@DEF@"
.PN UngrabPointer
-.in +.2i
.LP
+.in +.2i
\fItime\fP\^: TIMESTAMP or
.PN CurrentTime
.in -.2i
@@ -3413,8 +3472,8 @@ completely outside the boundaries of the root window.
.sM
.IN "GrabButton" "" "@DEF@"
.PN GrabButton
-.in +.2i
.LP
+.in +.2i
\fImodifiers\fP\^: SETofKEYMASK or
.PN AnyModifier
.br
@@ -3436,7 +3495,9 @@ completely outside the boundaries of the root window.
.br
\fIcursor\fP\^: CURSOR or
.PN None
+.in -.2i
.LP
+.in +.2i
Errors:
.PN Access ,
.PN Cursor ,
@@ -3507,8 +3568,8 @@ The request has no effect on an active grab.
.sM
.IN "UngrabButton" "" "@DEF@"
.PN UngrabButton
-.in +.2i
.LP
+.in +.2i
\fImodifiers\fP\^: SETofKEYMASK or
.PN AnyModifier
.br
@@ -3516,7 +3577,9 @@ The request has no effect on an active grab.
.PN AnyButton
.br
\fIgrab-window\fP\^: WINDOW
+.in -.2i
.LP
+.in +.2i
Errors:
.PN Value ,
.PN Window
@@ -3538,8 +3601,8 @@ The request has no effect on an active grab.
.sM
.IN "ChangeActivePointerGrab" "" "@DEF@"
.PN ChangeActivePointerGrab
-.in +.2i
.LP
+.in +.2i
\fIevent-mask\fP\^: SETofPOINTEREVENT
.br
\fIcursor\fP\^: CURSOR or
@@ -3547,7 +3610,9 @@ The request has no effect on an active grab.
.br
\fItime\fP\^: TIMESTAMP or
.PN CurrentTime
+.in -.2i
.LP
+.in +.2i
Errors:
.PN Cursor ,
.PN Value
@@ -3567,8 +3632,8 @@ with
.sM
.IN "GrabKeyboard" "" "@DEF@"
.PN GrabKeyboard
-.in +.2i
.LP
+.in +.2i
\fIgrab-window\fP\^: WINDOW
.br
\fIowner-events\fP\^: BOOL
@@ -3582,15 +3647,17 @@ with
.in -.2i
.LP
\(->
-.in +.2i
.LP
+.in +.2i
status:
.Pn { Success ,
.PN AlreadyGrabbed ,
.PN Frozen ,
.PN InvalidTime ,
.PN NotViewable }
+.in -.2i
.LP
+.in +.2i
Errors:
.PN Value ,
.PN Window
@@ -3671,8 +3738,8 @@ replaced by the current server time.
.sM
.IN "UngrabKeyboard" "" "@DEF@"
.PN UngrabKeyboard
-.in +.2i
.LP
+.in +.2i
\fItime\fP\^: TIMESTAMP or
.PN CurrentTime
.in -.2i
@@ -3702,8 +3769,8 @@ becomes not viewable.
.sM
.IN "GrabKey" "" "@DEF@"
.PN GrabKey
-.in +.2i
.LP
+.in +.2i
\fIkey\fP\^: KEYCODE or
.PN AnyKey
.br
@@ -3717,7 +3784,9 @@ becomes not viewable.
\fIpointer-mode\fP, \fIkeyboard-mode\fP\^:
.Pn { Synchronous ,
.PN Asynchronous }
+.in -.2i
.LP
+.in +.2i
Errors:
.PN Access ,
.PN Value ,
@@ -3789,8 +3858,8 @@ error is generated if there is a conflicting grab for any combination.
.sM
.IN "UngrabKey" "" "@DEF@"
.PN UngrabKey
-.in +.2i
.LP
+.in +.2i
\fIkey\fP\^: KEYCODE or
.PN AnyKey
.br
@@ -3798,7 +3867,9 @@ error is generated if there is a conflicting grab for any combination.
.PN AnyModifier
.br
\fIgrab-window\fP\^: WINDOW
+.in -.2i
.LP
+.in +.2i
Errors:
.PN Value ,
.PN Window
@@ -3820,8 +3891,8 @@ This request has no effect on an active grab.
.sM
.IN "AllowEvents" "" "@DEF@"
.PN AllowEvents
-.in +.2i
.LP
+.in +.2i
\fImode\fP:
.Pn { AsyncPointer ,
.PN SyncPointer ,
@@ -3836,7 +3907,9 @@ This request has no effect on an active grab.
.br
\fItime\fP\^: TIMESTAMP or
.PN CurrentTime
+.in -.2i
.LP
+.in +.2i
Errors:
.PN Value
.in -.2i
@@ -4015,14 +4088,14 @@ on other connections.
.sM
.IN "QueryPointer" "" "@DEF@"
.PN QueryPointer
-.in +.2i
.LP
+.in +.2i
\fIwindow\fP\^: WINDOW
.in -.2i
.LP
\(->
-.in +.2i
.LP
+.in +.2i
root: WINDOW
.br
child: WINDOW or
@@ -4033,7 +4106,9 @@ same-screen: BOOL
root-x, root-y, win-x, win-y: INT16
.br
mask: SETofKEYBUTMASK
+.in -.2i
.LP
+.in +.2i
Errors:
.PN Window
.in -.2i
@@ -4061,8 +4136,8 @@ may lag the physical state if device event processing is frozen.
.sM
.IN "GetMotionEvents" "" "@DEF@"
.PN GetMotionEvents
-.in +.2i
.LP
+.in +.2i
\fIstart\fP, \fIstop\fP\^: TIMESTAMP or
.PN CurrentTime
.br
@@ -4070,10 +4145,12 @@ may lag the physical state if device event processing is frozen.
.in -.2i
.LP
\(->
-.in +.2i
.LP
+.in +.2i
events: LISTofTIMECOORD
+.in -.2i
.LP
+.in +.2i
where:
.TS
l l.
@@ -4081,7 +4158,9 @@ TIMECOORD: [x, y: INT16
.br
\ time: TIMESTAMP]
.TE
+.in -.2i
.LP
+.in +.2i
Errors:
.PN Window
.in -.2i
@@ -4102,23 +4181,25 @@ If the stop time is in the future, it is equivalent to specifying
.sM
.IN "TranslateCoordinates" "" "@DEF@"
.PN TranslateCoordinates
-.in +.2i
.LP
+.in +.2i
\fIsrc-window\fP, \fIdst-window\fP: WINDOW
.br
\fIsrc-x\fP, \fIsrc-y\fP\^: INT16
.in -.2i
.LP
\(->
-.in +.2i
.LP
+.in +.2i
same-screen: BOOL
.br
child: WINDOW or
.PN None
.br
dst-x, dst-y: INT16
+.in -.2i
.LP
+.in +.2i
Errors:
.PN Window
.in -.2i
@@ -4138,8 +4219,8 @@ then that child is returned.
.sM
.IN "WarpPointer" "" "@DEF@"
.PN WarpPointer
-.in +.2i
.LP
+.in +.2i
\fIsrc-window\fP\^: WINDOW or
.PN None
.br
@@ -4151,7 +4232,9 @@ then that child is returned.
\fIsrc-width\fP, \fIsrc-height\fP\^: CARD16
.br
\fIdst-x\fP, \fIdst-y\fP\^: INT16
+.in -.2i
.LP
+.in +.2i
Errors:
.PN Window
.in -.2i
@@ -4187,8 +4270,8 @@ moved the pointer.
.sM
.IN "SetInputFocus" "" "@DEF@"
.PN SetInputFocus
-.in +.2i
.LP
+.in +.2i
\fIfocus\fP\^: WINDOW or
.PN PointerRoot
or
@@ -4201,7 +4284,9 @@ or
.br
\fItime\fP\^: TIMESTAMP or
.PN CurrentTime
+.in -.2i
.LP
+.in +.2i
Errors:
.PN Match ,
.PN Value ,
@@ -4271,8 +4356,8 @@ but the last-focus-change time is not affected.
.PN GetInputFocus
.LP
\(->
-.in +.2i
.LP
+.in +.2i
focus: WINDOW or
.PN PointerRoot
or
@@ -4293,8 +4378,8 @@ This request returns the current focus state.
.PN QueryKeymap
.LP
\(->
-.in +.2i
.LP
+.in +.2i
keys: LISTofCARD8
.in -.2i
.eM
@@ -4311,12 +4396,14 @@ may lag the physical state if device event processing is frozen.
.sM
.IN "OpenFont" "" "@DEF@"
.PN OpenFont
-.in +.2i
.LP
+.in +.2i
\fIfid\fP\^: FONT
.br
\fIname\fP\^: STRING8
+.in -.2i
.LP
+.in +.2i
Errors:
.PN Alloc ,
.PN IDChoice ,
@@ -4344,10 +4431,12 @@ and can be stored as a component of any graphics context.
.sM
.IN "CloseFont" "" "@DEF@"
.PN CloseFont
-.in +.2i
.LP
+.in +.2i
\fIfont\fP\^: FONT
+.in -.2i
.LP
+.in +.2i
Errors:
.PN Font
.in -.2i
@@ -4360,18 +4449,20 @@ The font itself will be freed when no other resource references it.
.sM
.IN "QueryFont" "" "@DEF@"
.PN QueryFont
-.in +.2i
.LP
+.in +.2i
\fIfont\fP\^: FONTABLE
.in -.2i
.LP
\(->
-.in +.2i
.LP
+.in +.2i
font-info: FONTINFO
.br
char-infos: LISTofCHARINFO
+.in -.2i
.LP
+.in +.2i
where:
.IP
.TS
@@ -4401,7 +4492,9 @@ CHARINFO: [left-side-bearing: INT16
\ descent: INT16
\ attributes: CARD16]
.TE
+.in -.2i
.LP
+.in +.2i
Errors:
.PN Font
.in -.2i
@@ -4539,16 +4632,16 @@ server-dependent.
.sM
.IN "QueryTextExtents" "" "@DEF@"
.PN QueryTextExtents
-.in +.2i
.LP
+.in +.2i
\fIfont\fP\^: FONTABLE
.br
\fIstring\fP\^: STRING16
.in -.2i
.LP
\(->
-.in +.2i
.LP
+.in +.2i
draw-direction:
.Pn { LeftToRight ,
.PN RightToLeft }
@@ -4566,7 +4659,9 @@ overall-width: INT32
overall-left: INT32
.br
overall-right: INT32
+.in -.2i
.LP
+.in +.2i
Errors:
.PN Font
.in -.2i
@@ -4604,16 +4699,16 @@ then undefined characters in the string are also ignored.
.sM
.IN "ListFonts" "" "@DEF@"
.PN ListFonts
-.in +.2i
.LP
+.in +.2i
\fIpattern\fP\^: STRING8
.br
\fImax-names\fP\^: CARD16
.in -.2i
.LP
\(->
-.in +.2i
.LP
+.in +.2i
names: LISTofSTRING8
.in -.2i
.eM
@@ -4636,27 +4731,30 @@ The returned names are in lowercase.
.sM
.IN "ListFontsWithInfo" "" "@DEF@"
.PN ListFontsWithInfo
-.in +.2i
.LP
+.in +.2i
\fIpattern\fP\^: STRING8
.br
\fImax-names\fP\^: CARD16
.in -.2i
.LP
- \(->+
-.in +.2i
+ \(->
.LP
+.in +.2i
name: STRING8
.br
-info: FONTINFO
+info FONTINFO
.br
replies-hint: CARD32
+.in -.2i
.LP
+.in +.2i
where:
+.in -.2i
.LP
-FONTINFO: <same type definition as in
+.in +.2i
+FONTINFO: <same type definition as in
.PN QueryFont >
-.in -.2i
.eM
.LP
This request is similar to
@@ -4679,10 +4777,12 @@ sequence.
.sM
.IN "SetFontPath" "" "@DEF@"
.PN SetFontPath
-.in +.2i
.LP
+.in +.2i
\fIpath\fP\^: LISTofSTRING8
+.in -.2i
.LP
+.in +.2i
Errors:
.PN Value
.in -.2i
@@ -4709,8 +4809,8 @@ The meaning of an error from this request is system specific.
.PN GetFontPath
.LP
\(->
-.in +.2i
.LP
+.in +.2i
path: LISTofSTRING8
.in -.2i
.eM
@@ -4721,8 +4821,8 @@ This request returns the current search path for fonts.
.sM
.IN "CreatePixmap" "" "@DEF@"
.PN CreatePixmap
-.in +.2i
.LP
+.in +.2i
\fIpid\fP\^: PIXMAP
.br
\fIdrawable\fP\^: DRAWABLE
@@ -4730,7 +4830,9 @@ This request returns the current search path for fonts.
\fIdepth\fP\^: CARD8
.br
\fIwidth\fP, \fIheight\fP\^: CARD16
+.in -.2i
.LP
+.in +.2i
Errors:
.PN Alloc ,
.PN Drawable ,
@@ -4757,10 +4859,12 @@ window as a drawable to this request.
.sM
.IN "FreePixmap" "" "@DEF@"
.PN FreePixmap
-.in +.2i
.LP
+.in +.2i
\fIpixmap\fP\^: PIXMAP
+.in -.2i
.LP
+.in +.2i
Errors:
.PN Pixmap
.in -.2i
@@ -4773,8 +4877,8 @@ The pixmap storage will be freed when no other resource references it.
.sM
.IN "CreateGC" "" "@DEF@"
.PN CreateGC
-.in +.2i
.LP
+.in +.2i
\fIcid\fP\^: GCONTEXT
.br
\fIdrawable\fP\^: DRAWABLE
@@ -4782,7 +4886,9 @@ The pixmap storage will be freed when no other resource references it.
\fIvalue-mask\fP\^: BITMASK
.br
\fIvalue-list\fP\^: LISTofVALUE
+.in -.2i
.LP
+.in +.2i
Errors:
.PN Alloc ,
.PN Drawable ,
@@ -5655,14 +5761,16 @@ changes to a single gcontext.
.sM
.IN "ChangeGC" "" "@DEF@"
.PN ChangeGC
-.in +.2i
.LP
+.in +.2i
\fIgc\fP\^: GCONTEXT
.br
\fIvalue-mask\fP\^: BITMASK
.br
\fIvalue-list\fP\^: LISTofVALUE
+.in -.2i
.LP
+.in +.2i
Errors:
.PN Alloc ,
.PN Font ,
@@ -5694,12 +5802,14 @@ a subset of the components may have been altered.
.sM
.IN "CopyGC" "" "@DEF@"
.PN CopyGC
-.in +.2i
.LP
+.in +.2i
\fIsrc-gc\fP, \fIdst-gc\fP\^: GCONTEXT
.br
\fIvalue-mask\fP\^: BITMASK
+.in -.2i
.LP
+.in +.2i
Errors:
.PN Alloc ,
.PN GContext ,
@@ -5719,14 +5829,16 @@ error results).
.sM
.IN "SetDashes" "" "@DEF@"
.PN SetDashes
-.in +.2i
.LP
+.in +.2i
\fIgc\fP\^: GCONTEXT
.br
\fIdash-offset\fP\^: CARD16
.br
\fIdashes\fP\^: LISTofCARD8
+.in -.2i
.LP
+.in +.2i
Errors:
.PN Alloc ,
.PN GContext ,
@@ -5791,8 +5903,8 @@ would be included in the dash when drawn unclipped.
.sM
.IN "SetClipRectangles" "" "@DEF@"
.PN SetClipRectangles
-.in +.2i
.LP
+.in +.2i
\fIgc\fP\^: GCONTEXT
.br
\fIclip-x-origin\fP, \fIclip-y-origin\fP\^: INT16
@@ -5804,7 +5916,9 @@ would be included in the dash when drawn unclipped.
.PN YSorted ,
.PN YXSorted ,
.PN YXBanded }
+.in -.2i
.LP
+.in +.2i
Errors:
.PN Alloc ,
.PN GContext ,
@@ -5860,10 +5974,12 @@ extents.
.sM
.IN "FreeGC" "" "@DEF@"
.PN FreeGC
-.in +.2i
.LP
+.in +.2i
\fIgc\fP\^: GCONTEXT
+.in -.2i
.LP
+.in +.2i
Errors:
.PN GContext
.in -.2i
@@ -5876,8 +5992,8 @@ and destroys the gcontext.
.sM
.IN "ClearArea" "" "@DEF@"
.PN ClearArea
-.in +.2i
.LP
+.in +.2i
\fIwindow\fP\^: WINDOW
.br
\fIx\fP, \fIy\fP\^: INT16
@@ -5885,7 +6001,9 @@ and destroys the gcontext.
\fIwidth\fP, \fIheight\fP: CARD16
.br
\fIexposures\fP\^: BOOL
+.in -.2i
.LP
+.in +.2i
Errors:
.PN Match ,
.PN Value ,
@@ -5923,8 +6041,8 @@ window in this request.
.sM
.IN "CopyArea" "" "@DEF@"
.PN CopyArea
-.in +.2i
.LP
+.in +.2i
\fIsrc-drawable\fP, \fIdst-drawable\fP\^: DRAWABLE
.br
\fIgc\fP\^: GCONTEXT
@@ -5934,7 +6052,9 @@ window in this request.
\fIwidth\fP, \fIheight\fP\^: CARD16
.br
\fIdst-x\fP, \fIdst-y\fP\^: INT16
+.in -.2i
.LP
+.in +.2i
Errors:
.PN Drawable ,
.PN GContext ,
@@ -5987,8 +6107,8 @@ graphics-exposures, clip-x-origin, clip-y-origin, clip-mask
.sM
.IN "CopyPlane" "" "@DEF@"
.PN CopyPlane
-.in +.2i
.LP
+.in +.2i
\fIsrc-drawable\fP, \fIdst-drawable\fP\^: DRAWABLE
.br
\fIgc\fP\^: GCONTEXT
@@ -6000,7 +6120,9 @@ graphics-exposures, clip-x-origin, clip-y-origin, clip-mask
\fIdst-x\fP, \fIdst-y\fP\^: INT16
.br
\fIbit-plane\fP\^: CARD32
+.in -.2i
.LP
+.in +.2i
Errors:
.PN Drawable ,
.PN GContext ,
@@ -6036,8 +6158,8 @@ clip-mask
.sM
.IN "PolyPoint" "" "@DEF@"
.PN PolyPoint
-.in +.2i
.LP
+.in +.2i
\fIdrawable\fP\^: DRAWABLE
.br
\fIgc\fP\^: GCONTEXT
@@ -6047,7 +6169,9 @@ clip-mask
.PN Previous }
.br
\fIpoints\fP\^: LISTofPOINT
+.in -.2i
.LP
+.in +.2i
Errors:
.PN Drawable ,
.PN GContext ,
@@ -6071,8 +6195,8 @@ clip-x-origin, clip-y-origin, clip-mask
.sM
.IN "PolyLine" "" "@DEF@"
.PN PolyLine
-.in +.2i
.LP
+.in +.2i
\fIdrawable\fP\^: DRAWABLE
.br
\fIgc\fP\^: GCONTEXT
@@ -6082,7 +6206,9 @@ clip-x-origin, clip-y-origin, clip-mask
.PN Previous }
.br
\fIpoints\fP\^: LISTofPOINT
+.in -.2i
.LP
+.in +.2i
Errors:
.PN Drawable ,
.PN GContext ,
@@ -6129,18 +6255,24 @@ tile-stipple-x-origin, tile-stipple-y-origin, dash-offset, dashes
.sM
.IN "PolySegment" "" "@DEF@"
.PN PolySegment
-.in +.2i
.LP
+.in +.2i
\fIdrawable\fP\^: DRAWABLE
.br
\fIgc\fP\^: GCONTEXT
.br
\fIsegments\fP\^: LISTofSEGMENT
+.in -.2i
.LP
+.in +.2i
where:
+.in -.2i
.LP
+.in +.2i
SEGMENT: [x1, y1, x2, y2: INT16]
+.in -.2i
.LP
+.in +.2i
Errors:
.PN Drawable ,
.PN GContext ,
@@ -6168,14 +6300,16 @@ tile-stipple-x-origin, tile-stipple-y-origin, dash-offset, dashes
.sM
.IN "PolyRectangle" "" "@DEF@"
.PN PolyRectangle
-.in +.2i
.LP
+.in +.2i
\fIdrawable\fP\^: DRAWABLE
.br
\fIgc\fP\^: GCONTEXT
.br
\fIrectangles\fP\^: LISTofRECTANGLE
+.in -.2i
.LP
+.in +.2i
Errors:
.PN Drawable ,
.PN GContext ,
@@ -6211,14 +6345,16 @@ tile-stipple-x-origin, tile-stipple-y-origin, dash-offset, dashes
.sM
.IN "PolyArc" "" "@DEF@"
.PN PolyArc
-.in +.2i
.LP
+.in +.2i
\fIdrawable\fP\^: DRAWABLE
.br
\fIgc\fP\^: GCONTEXT
.br
\fIarcs\fP\^: LISTofARC
+.in -.2i
.LP
+.in +.2i
Errors:
.PN Drawable ,
.PN GContext ,
@@ -6340,8 +6476,8 @@ tile-stipple-x-origin, tile-stipple-y-origin, dash-offset, dashes
.sM
.IN "FillPoly" "" "@DEF@"
.PN FillPoly
-.in +.2i
.LP
+.in +.2in
\fIdrawable\fP\^: DRAWABLE
.br
\fIgc\fP\^: GCONTEXT
@@ -6356,7 +6492,9 @@ tile-stipple-x-origin, tile-stipple-y-origin, dash-offset, dashes
.PN Previous }
.br
\fIpoints\fP\^: LISTofPOINT
+.in -.2i
.LP
+.in +.2i
Errors:
.PN Drawable ,
.PN GContext ,
@@ -6416,14 +6554,16 @@ tile-stipple-x-origin, tile-stipple-y-origin
.sM
.IN "PolyFillRectangle" "" "@DEF@"
.PN PolyFillRectangle
-.in +.2i
.LP
+.in +.2i
\fIdrawable\fP\^: DRAWABLE
.br
\fIgc\fP\^: GCONTEXT
.br
\fIrectangles\fP\^: LISTofRECTANGLE
+.in -.2i
.LP
+.in +.2i
Errors:
.PN Drawable ,
.PN GContext ,
@@ -6457,14 +6597,16 @@ tile-stipple-x-origin, tile-stipple-y-origin
.sM
.IN "PolyFillArc" "" "@DEF@"
.PN PolyFillArc
-.in +.2i
.LP
+.in +.2i
\fIdrawable\fP\^: DRAWABLE
.br
\fIgc\fP\^: GCONTEXT
.br
\fIarcs\fP\^: LISTofARC
+.in -.2i
.LP
+.in +.2i
Errors:
.PN Drawable ,
.PN GContext ,
@@ -6521,8 +6663,8 @@ tile-stipple-x-origin, tile-stipple-y-origin
.sM
.IN "PutImage" "" "@DEF@"
.PN PutImage
-.in +.2i
.LP
+.in +.2i
\fIdrawable\fP\^: DRAWABLE
.br
\fIgc\fP\^: GCONTEXT
@@ -6541,7 +6683,9 @@ tile-stipple-x-origin, tile-stipple-y-origin
.PN ZPixmap }
.br
\fIdata\fP\^: LISTofBYTE
+.in -.2i
.LP
+.in +.2i
Errors:
.PN Drawable ,
.PN GContext ,
@@ -6604,8 +6748,8 @@ GC mode-dependent components: foreground, background
.sM
.IN "GetImage" "" "@DEF@"
.PN GetImage
-.in +.2i
.LP
+.in +.2i
\fIdrawable\fP\^: DRAWABLE
.br
\fIx\fP, \fIy\fP\^: INT16
@@ -6620,15 +6764,17 @@ GC mode-dependent components: foreground, background
.in -.2i
.LP
\(->
-.in +.2i
.LP
+.in +.2i
depth: CARD8
.br
visual: VISUALID or
.PN None
.br
data: LISTofBYTE
+.in -.2i
.LP
+.in +.2i
Errors:
.PN Drawable ,
.PN Match ,
@@ -6690,8 +6836,8 @@ It is intended specifically for rudimentary hardcopy support.
.sM
.IN "PolyText8" "" "@DEF@"
.PN PolyText8
-.in +.2i
.LP
+.in +.2i
\fIdrawable\fP\^: DRAWABLE
.br
\fIgc\fP\^: GCONTEXT
@@ -6699,7 +6845,9 @@ It is intended specifically for rudimentary hardcopy support.
\fIx\fP, \fIy\fP\^: INT16
.br
\fIitems\fP\^: LISTofTEXTITEM8
+.in -.2i
.LP
+.in +.2i
where:
.TS
r l.
@@ -6709,7 +6857,9 @@ TEXTELT8: [delta: INT8
.br
\ string: STRING8]
.TE
+.in -.2i
.LP
+.in +.2i
Errors:
.PN Drawable ,
.PN Font ,
@@ -6751,8 +6901,8 @@ tile-stipple-x-origin, tile-stipple-y-origin
.sM
.IN "PolyText16" "" "@DEF@"
.PN PolyText16
-.in +.2i
.LP
+.in +.2i
\fIdrawable\fP\^: DRAWABLE
.br
\fIgc\fP\^: GCONTEXT
@@ -6760,7 +6910,9 @@ tile-stipple-x-origin, tile-stipple-y-origin
\fIx\fP, \fIy\fP\^: INT16
.br
\fIitems\fP\^: LISTofTEXTITEM16
+.in -.2i
.LP
+.in +.2i
where:
.TS
r l.
@@ -6770,7 +6922,9 @@ TEXTELT16: [delta: INT8
.br
\ string: STRING16]
.TE
+.in -.2i
.LP
+.in +.2i
Errors:
.PN Drawable ,
.PN Font ,
@@ -6791,8 +6945,8 @@ CHAR2B is taken as the most significant byte).
.sM
.IN "ImageText8" "" "@DEF@"
.PN ImageText8
-.in +.2i
.LP
+.in +.2i
\fIdrawable\fP\^: DRAWABLE
.br
\fIgc\fP\^: GCONTEXT
@@ -6800,7 +6954,9 @@ CHAR2B is taken as the most significant byte).
\fIx\fP, \fIy\fP\^: INT16
.br
\fIstring\fP\^: STRING8
+.in -.2i
.LP
+.in +.2i
Errors:
.PN Drawable ,
.PN GContext ,
@@ -6849,8 +7005,8 @@ subwindow-mode, clip-x-origin, clip-y-origin, clip-mask
.sM
.IN "ImageText16" "" "@DEF@"
.PN ImageText16
-.in +.2i
.LP
+.in +.2i
\fIdrawable\fP\^: DRAWABLE
.br
\fIgc\fP\^: GCONTEXT
@@ -6858,7 +7014,9 @@ subwindow-mode, clip-x-origin, clip-y-origin, clip-mask
\fIx\fP, \fIy\fP\^: INT16
.br
\fIstring\fP\^: STRING16
+.in -.2i
.LP
+.in +.2i
Errors:
.PN Drawable ,
.PN GContext ,
@@ -6878,8 +7036,8 @@ CHAR2B is taken as the most significant byte).
.sM
.IN "CreateColormap" "" "@DEF@"
.PN CreateColormap
-.in +.2i
.LP
+.in +.2i
\fImid\fP\^: COLORMAP
.br
\fIvisual\fP\^: VISUALID
@@ -6889,7 +7047,9 @@ CHAR2B is taken as the most significant byte).
\fIalloc\fP\^:
.Pn { None ,
.PN All }
+.in -.2i
.LP
+.in +.2i
Errors:
.PN Alloc ,
.PN IDChoice ,
@@ -6959,10 +7119,12 @@ in all cases, none of these entries can be freed with
.sM
.IN "FreeColormap" "" "@DEF@"
.PN FreeColormap
-.in +.2i
.LP
+.in +.2i
\fIcmap\fP\^: COLORMAP
+.in -.2i
.LP
+.in +.2i
Errors:
.PN Colormap
.in -.2i
@@ -6992,10 +7154,12 @@ This request has no effect on a default colormap for a screen.
.sM
.IN "CopyColormapAndFree" "" "@DEF@"
.PN CopyColormapAndFree
-.in +.2i
.LP
+.in +.2i
\fImid\fP, \fIsrc-cmap\fP\^: COLORMAP
+.in -.2i
.LP
+.in +.2i
Errors:
.PN Alloc ,
.PN Colormap ,
@@ -7035,10 +7199,12 @@ and that have not been freed since they were allocated.
.sM
.IN "InstallColormap" "" "@DEF@"
.PN InstallColormap
-.in +.2i
.LP
+.in +.2i
\fIcmap\fP\^: COLORMAP
+.in -.2i
.LP
+.in +.2i
Errors:
.PN Colormap
.in -.2i
@@ -7085,10 +7251,12 @@ the required list).
.sM
.IN "UninstallColormap" "" "@DEF@"
.PN UninstallColormap
-.in +.2i
.LP
+.in +.2i
\fIcmap\fP\^: COLORMAP
+.in -.2i
.LP
+.in +.2i
Errors:
.PN Colormap
.in -.2i
@@ -7117,16 +7285,18 @@ event is generated on every window having that colormap as an attribute.
.sM
.IN "ListInstalledColormaps" "" "@DEF@"
.PN ListInstalledColormaps
-.in +.2i
.LP
+.in +.2i
\fIwindow\fP\^: WINDOW
.in -.2i
.LP
\(->
-.in +.2i
.LP
+.in +.2i
cmaps: LISTofCOLORMAP
+.in -.2i
.LP
+.in +.2i
Errors:
.PN Window
.in -.2i
@@ -7143,20 +7313,22 @@ request).
.sM
.IN "AllocColor" "" "@DEF@"
.PN AllocColor
-.in +.2i
.LP
+.in +.2i
\fIcmap\fP\^: COLORMAP
.br
\fIred\fP, \fIgreen\fP, \fIblue\fP\^: CARD16
.in -.2i
.LP
\(->
-.in +.2i
.LP
+.in +.2i
pixel: CARD32
.br
red, green, blue: CARD16
+.in -.2i
.LP
+.in +.2i
Errors:
.PN Alloc ,
.PN Colormap
@@ -7173,22 +7345,24 @@ the same read-only entry, allowing entries to be shared.
.sM
.IN "AllocNamedColor" "" "@DEF@"
.PN AllocNamedColor
-.in +.2i
.LP
+.in +.2i
\fIcmap\fP\^: COLORMAP
.br
\fIname\fP\^: STRING8
.in -.2i
.LP
\(->
-.in +.2i
.LP
+.in +.2i
pixel: CARD32
.br
exact-red, exact-green, exact-blue: CARD16
.br
visual-red, visual-green, visual-blue: CARD16
+.in -.2i
.LP
+.in +.2i
Errors:
.PN Alloc ,
.PN Colormap ,
@@ -7210,8 +7384,8 @@ and the visual values specify the values actually used in the colormap.
.sM
.IN "AllocColorCells" "" "@DEF@"
.PN AllocColorCells
-.in +.2i
.LP
+.in +.2i
\fIcmap\fP\^: COLORMAP
.br
\fIcolors\fP, \fIplanes\fP\^: CARD16
@@ -7220,10 +7394,12 @@ and the visual values specify the values actually used in the colormap.
.in -.2i
.LP
\(->
-.in +.2i
.LP
+.in +.2i
pixels, masks: LISTofCARD32
+.in -.2i
.LP
+.in +.2i
Errors:
.PN Alloc ,
.PN Colormap ,
@@ -7264,8 +7440,8 @@ The RGB values of the allocated entries are undefined.
.sM
.IN "AllocColorPlanes" "" "@DEF@"
.PN AllocColorPlanes
-.in +.2i
.LP
+.in +.2i
\fIcmap\fP\^: COLORMAP
.br
\fIcolors\fP, \fIreds\fP, \fIgreens\fP, \fIblues\fP\^: CARD16
@@ -7274,12 +7450,14 @@ The RGB values of the allocated entries are undefined.
.in -.2i
.LP
\(->
-.in +.2i
.LP
+.in +.2i
pixels: LISTofCARD32
.br
red-mask, green-mask, blue-mask: CARD32
+.in -.2i
.LP
+.in +.2i
Errors:
.PN Alloc ,
.PN Colormap ,
@@ -7323,14 +7501,16 @@ corresponding independent entries are updated.
.sM
.IN "FreeColors" "" "@DEF@"
.PN FreeColors
-.in +.2i
.LP
+.in +.2i
\fIcmap\fP\^: COLORMAP
.br
\fIpixels\fP\^: LISTofCARD32
.br
\fIplane-mask\fP\^: CARD32
+.in -.2i
.LP
+.in +.2i
Errors:
.PN Access ,
.PN Colormap ,
@@ -7380,12 +7560,14 @@ it is arbitrary as to which pixel is reported.
.sM
.IN "StoreColors" "" "@DEF@"
.PN StoreColors
-.in +.2i
.LP
+.in +.2i
\fIcmap\fP\^: COLORMAP
.br
\fIitems\fP\^: LISTofCOLORITEM
+.in -.2i
.LP
+.in +.2i
where:
.TS
l l.
@@ -7395,7 +7577,9 @@ COLORITEM: [pixel: CARD32
.br
\ red, green, blue: CARD16]
.TE
+.in -.2i
.LP
+.in +.2i
Errors:
.PN Access ,
.PN Colormap ,
@@ -7424,8 +7608,8 @@ it is arbitrary as to which pixel is reported.
.sM
.IN "StoreNamedColor" "" "@DEF@"
.PN StoreNamedColor
-.in +.2i
.LP
+.in +.2i
\fIcmap\fP\^: COLORMAP
.br
\fIpixel\fP\^: CARD32
@@ -7433,7 +7617,9 @@ it is arbitrary as to which pixel is reported.
\fIname\fP\^: STRING8
.br
\fIdo-red\fP, \fIdo-green\fP\^, \fIdo-blue\fP\^: BOOL
+.in -.2i
.LP
+.in +.2i
Errors:
.PN Access ,
.PN Colormap ,
@@ -7459,23 +7645,28 @@ errors are the same as in
.sM
.IN "QueryColors" "" "@DEF@"
.PN QueryColors
-.in +.2i
.LP
+.in +.2i
\fIcmap\fP\^: COLORMAP
.br
\fIpixels\fP\^: LISTofCARD32
.in -.2i
.LP
\(->
-.in +.2i
.LP
+.in +.2i
colors: LISTofRGB
+.in -.2i
.LP
+.in +.2i
where:
+.in -.2i
.LP
-.DS 0
+.in +.2i
RGB: [red, green, blue: CARD16]
-.DE
+.in -.2i
+.LP
+.in +.2i
Errors:
.PN Colormap ,
.PN Value
@@ -7495,20 +7686,22 @@ it is arbitrary as to which pixel is reported.
.sM
.IN "LookupColor" "" "@DEF@"
.PN LookupColor
-.in +.2i
.LP
+.in +.2i
\fIcmap\fP\^: COLORMAP
.br
\fIname\fP\^: STRING8
.in -.2i
.LP
\(->
-.in +.2i
.LP
+.in +.2i
exact-red, exact-green, exact-blue: CARD16
.br
visual-red, visual-green, visual-blue: CARD16
+.in -.2i
.LP
+.in +.2i
Errors:
.PN Colormap ,
.PN Name
@@ -7526,8 +7719,8 @@ and uppercase and lowercase do not matter.
.sM
.IN "CreateCursor" "" "@DEF@"
.PN CreateCursor
-.in +.2i
.LP
+.in +.2i
\fIcid\fP\^: CURSOR
.br
\fIsource\fP\^: PIXMAP
@@ -7540,7 +7733,9 @@ and uppercase and lowercase do not matter.
\fIback-red\fP, \fIback-green\fP, \fIback-blue\fP\^: CARD16
.br
\fIx\fP, \fIy\fP\^: CARD16
+.in -.2i
.LP
+.in +.2i
Errors:
.PN Alloc ,
.PN IDChoice ,
@@ -7590,8 +7785,8 @@ The server might or might not make a copy of the pixmap.
.sM
.IN "CreateGlyphCursor" "" "@DEF@"
.PN CreateGlyphCursor
-.in +.2i
.LP
+.in +.2i
\fIcid\fP\^: CURSOR
.br
\fIsource-font\fP\^: FONT
@@ -7604,7 +7799,9 @@ The server might or might not make a copy of the pixmap.
\fIfore-red\fP, \fIfore-green\fP, \fIfore-blue\fP\^: CARD16
.br
\fIback-red\fP, \fIback-green\fP, \fIback-blue\fP\^: CARD16
+.in -.2i
.LP
+.in +.2i
Errors:
.PN Alloc ,
.PN Font ,
@@ -7644,10 +7841,12 @@ them are to be made.
.sM
.IN "FreeCursor" "" "@DEF@"
.PN FreeCursor
-.in +.2i
.LP
+.in +.2i
\fIcursor\fP\^: CURSOR
+.in -.2i
.LP
+.in +.2i
Errors:
.PN Cursor
.in -.2i
@@ -7660,14 +7859,16 @@ The cursor storage will be freed when no other resource references it.
.sM
.IN "RecolorCursor" "" "@DEF@"
.PN RecolorCursor
-.in +.2i
.LP
+.in +.2i
\fIcursor\fP\^: CURSOR
.br
\fIfore-red\fP, \fIfore-green\fP, \fIfore-blue\fP\^: CARD16
.br
\fIback-red\fP, \fIback-green\fP, \fIback-blue\fP\^: CARD16
+.in -.2i
.LP
+.in +.2i
Errors:
.PN Cursor
.in -.2i
@@ -7681,8 +7882,8 @@ the change is visible immediately.
.sM
.IN "QueryBestSize" "" "@DEF@"
.PN QueryBestSize
-.in +.2i
.LP
+.in +.2i
\fIclass\fP:
.Pn { Cursor ,
.PN Tile ,
@@ -7694,10 +7895,12 @@ the change is visible immediately.
.in -.2i
.LP
\(->
-.in +.2i
.LP
+.in +.2i
width, height: CARD16
+.in -.2i
.LP
+.in +.2i
Errors:
.PN Drawable ,
.PN Match ,
@@ -7738,14 +7941,14 @@ error results).
.sM
.IN "QueryExtension" "" "@DEF@"
.PN QueryExtension
-.in +.2i
.LP
+.in +.2i
\fIname\fP\^: STRING8
.in -.2i
.LP
\(->
-.in +.2i
.LP
+.in +.2i
present: BOOL
.br
major-opcode: CARD8
@@ -7779,8 +7982,8 @@ and uppercase and lowercase matter.
.PN ListExtensions
.LP
\(->
-.in +.2i
.LP
+.in +.2i
names: LISTofSTRING8
.in -.2i
.eM
@@ -7790,21 +7993,23 @@ This request returns a list of all extensions supported by the server.
.sM
.IN "SetModifierMapping" "" "@DEF@"
.PN SetModifierMapping
-.in +.2i
.LP
+.in +.2i
\fIkeycodes-per-modifier\fP\^: CARD8
.br
\fIkeycodes\fP\^: LISTofKEYCODE
.in -.2i
.LP
\(->
-.in +.2i
.LP
+.in +.2i
status:
.Pn { Success ,
.PN Busy ,
.PN Failed }
+.in -.2i
.LP
+.in +.2i
Errors:
.PN Alloc ,
.PN Value
@@ -7870,8 +8075,8 @@ status.
.PN GetModifierMapping
.LP
\(->
-.in +.2i
.LP
+.in +.2i
keycodes-per-modifier: CARD8
.br
keycodes: LISTofKEYCODE
@@ -7903,14 +8108,16 @@ The order of keycodes within each set is chosen arbitrarily by the server.
.sM
.IN "ChangeKeyboardMapping" "" "@DEF@"
.PN ChangeKeyboardMapping
-.in +.2i
.LP
+.in +.2i
\fIfirst-keycode\fP\^: KEYCODE
.br
\fIkeysyms-per-keycode\fP\^: CARD8
.br
\fIkeysyms\fP\^: LISTofKEYSYM
+.in -.2i
.LP
+.in +.2i
Errors:
.PN Alloc ,
.PN Value
@@ -7963,20 +8170,22 @@ it is merely stored for reading and writing by clients (see section 5).
.sM
.IN "GetKeyboardMapping" "" "@DEF@"
.PN GetKeyboardMapping
-.in +.2i
.LP
+.in +.2i
\fIfirst-keycode\fP\^: KEYCODE
.br
\fIcount\fP\^: CARD8
.in -.2i
.LP
\(->
-.in +.2i
.LP
+.in +.2i
keysyms-per-keycode: CARD8
.br
keysyms: LISTofKEYSYM
+.in -.2i
.LP
+.in +.2i
Errors:
.PN Value
.in -.2i
@@ -8018,12 +8227,14 @@ is used to fill in unused elements for individual keycodes.
.sM
.IN "ChangeKeyboardControl" "" "@DEF@"
.PN ChangeKeyboardControl
-.in +.2i
.LP
+.in +.2i
\fIvalue-mask\fP\^: BITMASK
.br
\fIvalue-list\fP\^: LISTofVALUE
+.in -.2i
.LP
+.in +.2i
Errors:
.PN Match ,
.PN Value
@@ -8168,8 +8379,8 @@ a subset of the controls may have been altered.
.PN GetKeyboardControl
.LP
\(->
-.in +.2i
.LP
+.in +.2i
key-click-percent: CARD8
.br
bell-percent: CARD8
@@ -8202,10 +8413,12 @@ with the least significant bit in the byte representing key 8N.
.sM
.IN "Bell" "" "@DEF@"
.PN Bell
-.in +.2i
.LP
+.in +.2i
\fIpercent\fP\^: INT8
+.in -.2i
.LP
+.in +.2i
Errors:
.PN Value
.in -.2i
@@ -8230,18 +8443,20 @@ base + [(base * percent) / 100]
.sM
.IN "SetPointerMapping" "" "@DEF@"
.PN SetPointerMapping
-.in +.2i
.LP
+.in +.2i
\fImap\fP\^: LISTofCARD8
.in -.2i
.LP
\(->
-.in +.2i
.LP
+.in +.2i
status:
.Pn { Success ,
.PN Busy }
+.in -.2i
.LP
+.in +.2i
Errors:
.PN Value
.in -.2i
@@ -8280,8 +8495,8 @@ status.
.PN GetPointerMapping
.LP
\(->
-.in +.2i
.LP
+.in +.2i
map: LISTofCARD8
.in -.2i
.eM
@@ -8296,14 +8511,16 @@ The nominal mapping for a pointer is the identity mapping: map[i]=i.
.sM
.IN "ChangePointerControl" "" "@DEF@"
.PN ChangePointerControl
-.in +.2i
.LP
+.in +.2i
\fIdo-acceleration\fP, \fIdo-threshold\fP\^: BOOL
.br
\fIacceleration-numerator\fP, \fIacceleration-denominator\fP\^: INT16
.br
\fIthreshold\fP\^: INT16
+.in -.2i
.LP
+.in +.2i
Errors:
.PN Value
.in -.2i
@@ -8327,8 +8544,8 @@ error, as does a zero value for acceleration-denominator.
.PN GetPointerControl
.LP
\(->
-.in +.2i
.LP
+.in +.2i
acceleration-numerator, acceleration-denominator: CARD16
.br
threshold: CARD16
@@ -8341,8 +8558,8 @@ This request returns the current acceleration and threshold for the pointer.
.sM
.IN "SetScreenSaver" "" "@DEF@"
.PN SetScreenSaver
-.in +.2i
.LP
+.in +.2i
\fItimeout\fP, \fIinterval\fP\^: INT16
.br
\fIprefer-blanking\fP\^:
@@ -8354,7 +8571,9 @@ This request returns the current acceleration and threshold for the pointer.
.Pn { Yes ,
.PN No ,
.PN Default }
+.in -.2i
.LP
+.in +.2i
Errors:
.PN Value
.in -.2i
@@ -8401,8 +8620,8 @@ randomly reorigined periodically.
.PN GetScreenSaver
.LP
\(->
-.in +.2i
.LP
+.in +.2i
timeout, interval: CARD16
.br
prefer-blanking:
@@ -8421,12 +8640,14 @@ This request returns the current screen-saver control values.
.sM
.IN "ForceScreenSaver" "" "@DEF@"
.PN ForceScreenSaver
-.in +.2i
.LP
+.in +.2i
\fImode\fP\^:
.Pn { Activate ,
.PN Reset }
+.in -.2i
.LP
+.in +.2i
Errors:
.PN Value
.in -.2i
@@ -8448,14 +8669,16 @@ as if device input had just been received.
.sM
.IN "ChangeHosts" "" "@DEF@"
.PN ChangeHosts
-.in +.2i
.LP
+.in +.2i
\fImode\fP\^:
.Pn { Insert ,
.PN Delete }
.br
\fIhost\fP: HOST
+.in -.2i
.LP
+.in +.2i
Errors:
.PN Access ,
.PN Value
@@ -8519,8 +8742,8 @@ The server performs no automatic swapping on the address bytes.
.PN ListHosts
.LP
\(->
-.in +.2i
.LP
+.in +.2i
mode:
.Pn { Enabled ,
.PN Disabled }
@@ -8539,12 +8762,14 @@ Each HOST is padded to a multiple of four bytes.
.sM
.IN "SetAccessControl" "" "@DEF@"
.PN SetAccessControl
-.in +.2i
.LP
+.in +.2i
\fImode\fP\^:
.Pn { Enable ,
.PN Disable }
+.in -.2i
.LP
+.in +.2i
Errors:
.PN Access ,
.PN Value
@@ -8564,13 +8789,15 @@ error results).
.sM
.IN "SetCloseDownMode" "" "@DEF@"
.PN SetCloseDownMode
-.in +.2i
.LP
+.in +.2i
\fImode\fP:
.Pn { Destroy ,
.PN RetainPermanent ,
.PN RetainTemporary }
+.in -.2i
.LP
+.in +.2i
Errors:
.PN Value
.in -.2i
@@ -8587,11 +8814,13 @@ The meaning of the close-down mode is described in section 10.
.sM
.IN "KillClient" "" "@DEF@"
.PN KillClient
-.in +.2i
.LP
+.in +.2i
\fIresource\fP\^: CARD32 or
.PN AllTemporary
+.in -.2i
.LP
+.in +.2i
Errors:
.PN Value
.in -.2i
@@ -8795,8 +9024,8 @@ can both be used to modify the active grab.
.br
.IN "MotionNotify" "" "@DEF@"
.PN MotionNotify
-.in +.2i
.LP
+.in +.2i
\fIroot\fP, \fIevent\fP\^: WINDOW
.br
\fIchild\fP\^: WINDOW or
@@ -8925,8 +9154,8 @@ request.
.br
.IN "LeaveNotify" "" "@DEF@"
.PN LeaveNotify
-.in +.2i
.LP
+.in +.2i
\fIroot\fP, \fIevent\fP\^: WINDOW
.br
\fIchild\fP\^: WINDOW or
@@ -9160,8 +9389,8 @@ and final positions for the events.
.br
.IN "FocusOut" "" "@DEF@"
.PN FocusOut
-.in +.2i
.LP
+.in +.2i
\fIevent\fP\^: WINDOW
.br
\fImode\fP\^:
@@ -9484,8 +9713,8 @@ above) as if the focus were to change from G to F.
.sM
.IN "KeymapNotify" "" "@DEF@"
.PN KeymapNotify
-.in +.2i
.LP
+.in +.2i
\fIkeys\fP\^: LISTofCARD8
.in -.2i
.eM
@@ -9503,8 +9732,8 @@ and
.sM
.IN "Expose" "" "@DEF@"
.PN Expose
-.in +.2i
.LP
+.in +.2i
\fIwindow\fP\^: WINDOW
.br
\fIx\fP, \fIy\fP, \fIwidth\fP, \fIheight\fP\^: CARD16
@@ -9581,8 +9810,8 @@ events is not constrained.
.sM
.IN "GraphicsExposure" "" "@DEF@"
.PN GraphicsExposure
-.in +.2i
.LP
+.in +.2i
\fIdrawable\fP\^: DRAWABLE
.br
\fIx\fP, \fIy\fP, \fIwidth\fP, \fIheight\fP\^: CARD16
@@ -9625,8 +9854,8 @@ and minor-opcode is always zero.
.sM
.IN "NoExposure" "" "@DEF@"
.PN NoExposure
-.in +.2i
.LP
+.in +.2i
\fIdrawable\fP\^: DRAWABLE
.br
\fImajor-opcode\fP\^: CARD8
@@ -9655,8 +9884,8 @@ and the minor-opcode is always zero.
.sM
.IN "VisibilityNotify" "" "@DEF@"
.PN VisibilityNotify
-.in +.2i
.LP
+.in +.2i
\fIwindow\fP\^: WINDOW
.br
\fIstate\fP\^:
@@ -9726,8 +9955,8 @@ events is not constrained.
.sM
.IN "CreateNotify" "" "@DEF@"
.PN CreateNotify
-.in +.2i
.LP
+.in +.2i
\fIparent\fP, \fIwindow\fP\^: WINDOW
.br
\fIx\fP, \fIy\fP\^: INT16
@@ -9750,8 +9979,8 @@ request.
.sM
.IN "DestroyNotify" "" "@DEF@"
.PN DestroyNotify
-.in +.2i
.LP
+.in +.2i
\fIevent\fP, \fIwindow\fP\^: WINDOW
.in -.2i
.eM
@@ -9778,8 +10007,8 @@ otherwise constrained.
.sM
.IN "UnmapNotify" "" "@DEF@"
.PN UnmapNotify
-.in +.2i
.LP
+.in +.2i
\fIevent\fP, \fIwindow\fP\^: WINDOW
.br
\fIfrom-configure\fP\^: BOOL
@@ -9804,8 +10033,8 @@ when the window itself had a win-gravity of
.sM
.IN "MapNotify" "" "@DEF@"
.PN MapNotify
-.in +.2i
.LP
+.in +.2i
\fIevent\fP, \fIwindow\fP\^: WINDOW
.br
\fIoverride-redirect\fP\^: BOOL
@@ -9826,8 +10055,8 @@ The override-redirect flag is from the window's attribute.
.sM
.IN "MapRequest" "" "@DEF@"
.PN MapRequest
-.in +.2i
.LP
+.in +.2i
\fIparent\fP, \fIwindow\fP\^: WINDOW
.in -.2i
.eM
@@ -9843,8 +10072,8 @@ request is issued on an unmapped window with an override-redirect attribute of
.sM
.IN "ReparentNotify" "" "@DEF@"
.PN ReparentNotify
-.in +.2i
.LP
+.in +.2i
\fIevent\fP, \fIwindow\fP, \fIparent\fP\^: WINDOW
.br
\fIx\fP, \fIy\fP\^: INT16
@@ -9870,8 +10099,8 @@ The override-redirect flag is from the window's attribute.
.sM
.IN "ConfigureNotify" "" "@DEF@"
.PN ConfigureNotify
-.in +.2i
.LP
+.in +.2i
\fIevent\fP, \fIwindow\fP\^: WINDOW
.br
\fIx\fP, \fIy\fP\^: INT16
@@ -9908,8 +10137,8 @@ The override-redirect flag is from the window's attribute.
.sM
.IN "GravityNotify" "" "@DEF@"
.PN GravityNotify
-.in +.2i
.LP
+.in +.2i
\fIevent\fP, \fIwindow\fP\^: WINDOW
.br
\fIx\fP, \fIy\fP\^: INT16
@@ -9932,8 +10161,8 @@ and specify the position of the upper-left outer corner of the window.
.sM
.IN "ResizeRequest" "" "@DEF@"
.PN ResizeRequest
-.in +.2i
.LP
+.in +.2i
\fIwindow\fP\^: WINDOW
.br
\fIwidth\fP, \fIheight\fP\^: CARD16
@@ -9952,8 +10181,8 @@ The width and height are the requested inside size, not including the border.
.sM
.IN "ConfigureRequest" "" "@DEF@"
.PN ConfigureRequest
-.in +.2i
.LP
+.in +.2i
\fIparent\fP, \fIwindow\fP\^: WINDOW
.br
\fIx\fP, \fIy\fP\^: INT16
@@ -9994,8 +10223,8 @@ and
.sM
.IN "CirculateNotify" "" "@DEF@"
.PN CirculateNotify
-.in +.2i
.LP
+.in +.2i
\fIevent\fP, \fIwindow\fP\^: WINDOW
.br
\fIplace\fP\^:
@@ -10023,8 +10252,8 @@ Otherwise, it is below all siblings.
.sM
.IN "CirculateRequest" "" "@DEF@"
.PN CirculateRequest
-.in +.2i
.LP
+.in +.2i
\fIparent\fP, \fIwindow\fP\^: WINDOW
.br
\fIplace\fP:
@@ -10045,8 +10274,8 @@ and the place specifies what the new position in the stacking order should be.
.sM
.IN "PropertyNotify" "" "@DEF@"
.PN PropertyNotify
-.in +.2i
.LP
+.in +.2i
\fIwindow\fP\^: WINDOW
.br
\fIatom\fP\^: ATOM
@@ -10086,8 +10315,8 @@ The timestamp indicates the server time when the property was changed.
.sM
.IN "SelectionClear" "" "@DEF@"
.PN SelectionClear
-.in +.2i
.LP
+.in +.2i
\fIowner\fP\^: WINDOW
.br
\fIselection\fP\^: ATOM
@@ -10108,8 +10337,8 @@ request.
.sM
.IN "SelectionRequest" "" "@DEF@"
.PN SelectionRequest
-.in +.2i
.LP
+.in +.2i
\fIowner\fP\^: WINDOW
.br
\fIselection\fP\^: ATOM
@@ -10148,8 +10377,8 @@ standard \fIInter-Client Communication Conventions Manual\fP.
.sM
.IN "SelectionNotify" "" "@DEF@"
.PN SelectionNotify
-.in +.2i
.LP
+.in +.2i
\fIrequestor\fP\^: WINDOW
.br
\fIselection\fP, \fItarget\fP\^: ATOM
@@ -10177,8 +10406,8 @@ or when a selection conversion could not be performed (indicated with property
.sM
.IN "ColormapNotify" "" "@DEF@"
.PN ColormapNotify
-.in +.2i
.LP
+.in +.2i
\fIwindow\fP\^: WINDOW
.br
\fIcolormap\fP\^: COLORMAP or
@@ -10208,8 +10437,8 @@ the state indicates whether the colormap is currently installed.
.sM
.IN "MappingNotify" "" "@DEF@"
.PN MappingNotify
-.in +.2i
.LP
+.in +.2i
\fIrequest\fP:
.Pn { Modifier ,
.PN Keyboard ,
@@ -10240,8 +10469,8 @@ then first-keycode and count indicate the range of altered keycodes.
.sM
.IN "ClientMessage" "" "@DEF@"
.PN ClientMessage
-.in +.2i
.LP
+.in +.2i
\fIwindow\fP\^: WINDOW
.br
\fItype\fP\^: ATOM
diff --git a/specs/Xaw/AsciiSource b/specs/Xaw/AsciiSource
index 38b45ec..3dfe7ac 100644
--- a/specs/Xaw/AsciiSource
+++ b/specs/Xaw/AsciiSource
@@ -69,7 +69,7 @@ is not affected by subsequent updates to the text buffer, i.e.,
it is not updated as the user types input into the text buffer.
This copy is freed upon the next call to XtGetValues to
retrieve the string resource; however, to conserve memory,
-there is a convenience routine, \fBXawAsciiSrcFreeString\fP, allowing the
+there is a convenience routine, \fBXawAsciiSourceFreeString\fP, allowing the
application programmer to direct the widget to free the copy.
.LP
When the resource \fBuseStringInPlace\fP is true and the AsciiSrc object
@@ -135,7 +135,7 @@ space must be allocated whenever the file is saved, or the string is
requested with a call to \fBXtGetValues\fP. This memory is allocated on the
fly, and remains valid until the next time a string needs to be allocated.
You may save memory by freeing this string as soon as you are done
-with it by calling \fBXawAsciiSrcFreeString\fP.
+with it by calling \fBXawAsciiSourceFreeString\fP.
.FD 0
void XawAsciiSourceFreeString(\fIw\fP)
.IN "XawAsciiSourceFreeString" "" @DEF@
diff --git a/specs/Xaw/AsciiText b/specs/Xaw/AsciiText
index 94d4060..430751d 100644
--- a/specs/Xaw/AsciiText
+++ b/specs/Xaw/AsciiText
@@ -25,7 +25,7 @@ Source Name textSource
.sp 1
.LP
For the ease of internationalization, the AsciiText widget class name has not
-been changed, although it is actually able support non-ASCII locales.
+been changed, although it is actually able to support non-ASCII locales.
The AsciiText widget is really a collection of smaller parts. It
includes the Text widget itself, a ``Source'' (which supports memory management),
and a ``Sink'' (which handles the display). There are currently two supported
diff --git a/specs/Xaw/CH4.intro b/specs/Xaw/CH4.intro
index feeebff..c11e425 100644
--- a/specs/Xaw/CH4.intro
+++ b/specs/Xaw/CH4.intro
@@ -35,7 +35,7 @@ The Athena widget set provides three classes of Sme objects that may be
used to build menus.
.sp
.IP \fBSme\fP 1i
-.IN "Sme object" "
+.IN "Sme object" ""
The base class of all menu entries. It may be used as a menu entry
itself to provide blank space in a menu. ``Sme'' means ``Simple Menu
Entry.''
diff --git a/specs/Xaw/Form b/specs/Xaw/Form
index 1a89d80..9ada171 100644
--- a/specs/Xaw/Form
+++ b/specs/Xaw/Form
@@ -40,7 +40,7 @@ be clipped by the right and bottom edges of the Form.
.NH 3
Resources
.LP
-When creating an Form widget instance, the following resources are
+When creating a Form widget instance, the following resources are
retrieved from the argument list or from the resource database:
.LP
.IN "Form widget" "resources"
diff --git a/specs/Xaw/Text b/specs/Xaw/Text
index b2b0671..bb8cae1 100644
--- a/specs/Xaw/Text
+++ b/specs/Xaw/Text
@@ -31,7 +31,7 @@ Text widget, and explains the functionality provided by each.
.NH 3
Resources
.LP
-When creating an Text widget instance, the following resources are
+When creating a Text widget instance, the following resources are
retrieved from the argument list or from the resource database:
.LP
.IN "Text widget" "resources"
diff --git a/specs/Xaw/TextSource b/specs/Xaw/TextSource
index 8c50b5f..41e4395 100644
--- a/specs/Xaw/TextSource
+++ b/specs/Xaw/TextSource
@@ -122,8 +122,9 @@ Returns the text read from the source.
Specifies the maximum number of characters the TextSrc should
return to the application in \fItext_return\fP.
.LP
-This function returns the actual number of characters read from the
-text buffer. The function is not required to return \fIlength\fP
+This function returns the text position immediately after the
+characters read from the
+text buffer. The function is not required to read \fIlength\fP
characters if that many characters are in the file, it may break at
any point that is convenient to the internal structure of the
source. It may take several calls to \fBRead\fP before the desired
diff --git a/specs/Xaw/Toggle b/specs/Xaw/Toggle
index d5ffe7c..7849e61 100644
--- a/specs/Xaw/Toggle
+++ b/specs/Xaw/Toggle
@@ -46,7 +46,7 @@ Toggle widgets may also be part of a ``radio group.'' A radio group is a
.IN "Radio groups" ""
.IN "Radio button" ""
.IN "Toggle widget" "used in radio groups"
-list of at least two Toggle widget in which no more than one Toggle may
+list of at least two Toggle widgets in which no more than one Toggle may
be set at
any time. A radio group is identified by the widget ID of any one of
its members. The convenience routine \fBXawToggleGetCurrent\fP will
diff --git a/specs/Xaw/strings.xaw b/specs/Xaw/strings.xaw
index 802bf7c..b98e84d 100644
--- a/specs/Xaw/strings.xaw
+++ b/specs/Xaw/strings.xaw
@@ -227,7 +227,7 @@ one.
.el .IP label 1.5i
Specifies the text string to be displayed in the widget's window
if no bitmap is specified. The default is the name of this widget.
-Irregardless of the value of \fBencoding\fP or \fBinternational\fP,
+Regardless of the value of \fBencoding\fP or \fBinternational\fP,
a single newline character (1 byte) will cause a line break.
..
.de Ll \" Label leftBitmap
@@ -670,7 +670,7 @@ internal memory, but may be used in place by setting the
When the \fBstring\fP resource is queried, using \fBXtGetValues\fP, and
\fBuseStringInPlace\fP is false, the value returned is valid until
the next time the \fBstring\fP resource is queried, or until the application
-writer calls \fBXawAsciiSrcFreeString\fP. If \fBuseStringInPlace\fP is
+writer calls \fBXawAsciiSourceFreeString\fP. If \fBuseStringInPlace\fP is
true, a pointer to the actual string is returned. See also section 5.6.
..
.de Ot \" AsciiSrc type
diff --git a/specs/Xext/DPMS.ms b/specs/Xext/DPMS.ms
index f32246d..5c87093 100644
--- a/specs/Xext/DPMS.ms
+++ b/specs/Xext/DPMS.ms
@@ -1,4 +1,5 @@
.\" Use -ms and macros.t
+.\" $XFree86: xc/doc/specs/Xext/DPMS.ms,v 1.2 1998/12/20 11:56:39 dawes Exp $
.EH ''''
.OH ''''
.EF ''''
@@ -382,6 +383,7 @@ The name of this extension is "DPMS".
.ta .2i .5i 1.5i 2.5i
.R
=>
+.De
.LP
.Ds 0
.TA .2i .5i 1.5i 2.5i
@@ -397,6 +399,7 @@ The name of this extension is "DPMS".
.ta .2i .5i 1.5i 2.5i
.R
=>
+.De
.LP
.Ds 0
.TA .2i .5i 1.5i 2.5i
@@ -412,6 +415,7 @@ The name of this extension is "DPMS".
.ta .2i .5i 1.5i 2.5i
.R
=>
+.De
.LP
.Ds 0
.TA .2i .5i 1.5i 2.5i
diff --git a/specs/Xext/buffer.ms b/specs/Xext/buffer.ms
index bc75132..06a6013 100644
--- a/specs/Xext/buffer.ms
+++ b/specs/Xext/buffer.ms
@@ -1,4 +1,9 @@
.\" $Xorg: buffer.ms,v 1.3 2000/08/17 19:42:31 cpqbld Exp $
+.\"
+.\"
+.\"
+.\"
+.\" $XFree86: xc/doc/specs/Xext/buffer.ms,v 1.4 2001/01/17 16:57:43 dawes Exp $
.TL
Extending X for Double-Buffering, Multi-Buffering, and Stereo
.AU
@@ -99,7 +104,7 @@ Image Buffers
.LP
Normal windows are created using the standard \fBCreateWindow\fP request:
.DS
-.ft 8
+.\" .ft 8
CreateWindow
parent : WINDOW
w_id : WINDOW
@@ -110,7 +115,7 @@ CreateWindow
border_width : INT16
value_mask : BITMASK
value_list : LISTofVALUE
-.ft
+.\" .ft
.DE
.LP
This request allocates a set of window attributes and
@@ -198,7 +203,7 @@ New Requests
The new request, \fBCreateImageBuffers\fP, creates a group of
image buffers and associates them with a normal X window:
.DS
-.ft 8
+.\" .ft 8
CreateImageBuffers
w_id : WINDOW
buffers : LISTofBUFFER
@@ -208,7 +213,7 @@ CreateImageBuffers
number_buffers : CARD16
(Errors: Window, IDChoice, Value)
-.ft
+.\" .ft
.DE
One image buffer will be associated with each ID passed in \fIbuffers\fP.
The first buffer of the list is referred to as buffer[0], the next
@@ -309,14 +314,14 @@ whenever there is a pause in the animation.
.LP
To display an image buffer the following request can be used:
.DS
-.ft 8
+.\" .ft 8
DisplayImageBuffers
buffers : LISTofBUFFER
min_delay : CARD16
max_delay : CARD16
(Errors: Buffer, Match)
-.ft
+.\" .ft
.DE
The image buffers listed will become displayed as simultaneously
as possible and the update action, bound at \fBCreateImageBuffers\fP
@@ -389,7 +394,7 @@ as those defined for the core protocol.
To explicitly clear a rectangular area of an image buffer to
the window background, the following request can be used:
.DS
-.ft 8
+.\" .ft 8
ClearImageBufferArea
buffer : BUFFER
x, y : INT16
@@ -397,7 +402,7 @@ ClearImageBufferArea
exposures : BOOL
(Errors: Buffer, Value)
-.ft P
+.\" .ft P
.DE
.LP
Like the X \fBClearArea\fP request, \fIx\fP and \fIy\fP are relative to
@@ -415,12 +420,12 @@ either visible or are being retained in backing store.
The group of image buffers allocated by a \fBCreateImageBuffers\fP
request can be destroyed with the following request:
.DS
-.ft 8
+.\" .ft 8
DestroyImageBuffers
w_id : WINDOW
(Error: Window)
-.ft
+.\" .ft
.DE
.LP
The association between the buffer ID's and their corresponding
@@ -433,13 +438,13 @@ Attributes
The following attributes will be associated with each window that
is multi-buffered:
.DS
-.ft 8
+.\" .ft 8
displayed_buffer : CARD16
update_action : {Undefined,Background,Untouched,Copied}
update_hint : {Frequent,Intermittent,Static}
window_mode : {Mono,Stereo}
buffers : LISTofBUFFER
-.ft
+.\" .ft
.DE
.LP
\fIdisplayed_buffer\fP is set to the \fIindex\fP of the currently
@@ -451,7 +456,7 @@ The ID for each buffer associated with the window is recorded
in the \fIbuffers\fP list.
The above attributes can be queried with the following request:
.DS
-.ft 8
+.\" .ft 8
GetMultiBufferAttributes
w_id : WINDOW
=>
@@ -462,7 +467,7 @@ GetMultiBufferAttributes
buffers : LISTofBUFFER
(Errors: Window, Access, Value)
-.ft
+.\" .ft
.DE
.LP
If the window is not multi-buffered, a \fBAccess\fP error will be generated.
@@ -471,26 +476,26 @@ is \fIupdate_hint\fP. Rather than have a specific request
to set this attribute, a generic set request is provided to
allow for future expansion:
.DS
-.ft 8
+.\" .ft 8
SetMultiBufferAttributes
w_id : WINDOW
value_mask : BITMASK
value_list : LISTofVALUE
(Errors: Window, Match, Value)
-.ft
+.\" .ft
.DE
.LP
If the window is not multi-buffered, a \fBMatch\fP error will be generated.
The following attributes are maintained for each buffer of a
multi-buffered window:
.DS
-.ft 8
+.\" .ft 8
window : WINDOW
event_mask : SETofEVENT
index : CARD16
side : {Mono,Left,Right}
-.ft
+.\" .ft
.DE
.LP
\fIwindow\fP indicates the window this buffer is associated with.
@@ -503,7 +508,7 @@ the left side or right side of a stereo window.
For non-stereo windows, this attribute will be set to \fIMono\fP.
These attributes can be queried with the following request:
.DS
-.ft 8
+.\" .ft 8
GetBufferAttributes
buffer : BUFFER
=>
@@ -513,7 +518,7 @@ GetBufferAttributes
side : {Mono,Left,Right}
(Errors: Buffer, Value)
-.ft
+.\" .ft
.DE
.LP
The only buffer attribute that can be explicitly set
@@ -527,14 +532,14 @@ Rather than have a specific request
to set this attribute, a generic set request is provided to
allow for future expansion:
.DS
-.ft 8
+.\" .ft 8
SetBufferAttributes
buffer : BUFFER
value_mask : BITMASK
value_list : LISTofVALUE
(Errors: Buffer, Value)
-.ft
+.\" .ft
.DE
.LP
Clients may want to query the server about basic multi-buffer
@@ -543,17 +548,17 @@ returns a large list of information
that would most likely be read once by Xlib for each screen, and used as a data base for
other Xlib queries:
.DS
-.ft 8
+.\" .ft 8
GetBufferInfo
root : WINDOW
=>
info : LISTofSCREEN_INFO
-.ft
+.\" .ft
.DE
.LP
Where \fBSCREEN_INFO\fP and \fBBUFFER_INFO\fP are defined as:
.DS
-.ft 8
+.\" .ft 8
SCREEN_INFO : [ normal_info : LISTofBUFFER_INFO,
stereo_info : LISTofBUFFER_INFO ]
@@ -561,7 +566,7 @@ Where \fBSCREEN_INFO\fP and \fBBUFFER_INFO\fP are defined as:
BUFFER_INFO : [ visual : VISUALID,
max_buffers : CARD16,
depth : CARD8 ]
-.ft
+.\" .ft
.DE
.LP
Information regarding multi-buffering of normal (mono) windows
@@ -576,12 +581,12 @@ memory limitations.
The following request returns the major and minor version numbers
of this extension:
.DS
-.ft 8
+.\" .ft 8
GetBufferVersion
=>
major_number : CARD8
minor_number : CARD8
-.ft
+.\" .ft
.DE
.LP
The version numbers are an escape hatch in case future revisions of
@@ -620,11 +625,11 @@ client drawing into one of these buffers the opportunity
to stop drawing until some portion of the buffer is
writable, the following event is added:
.DS
-.ft 8
+.\" .ft 8
ClobberNotify
buffer : BUFFER
state : {Unclobbered,PartiallyClobbered,FullyClobbered}
-.ft
+.\" .ft
.DE
.LP
The \fBClobberNotify\fP event is reported to clients selecting
@@ -653,10 +658,10 @@ request. This allows the FIFO manager to load up a future frame as
soon as a buffer becomes available. To support this,
the following event is added:
.DS
-.ft 8
+.\" .ft 8
UpdateNotify
buffer : BUFFER
-.ft
+.\" .ft
.DE
.LP
The \fBUpdateNotify\fP event is reported to clients selecting
@@ -678,7 +683,7 @@ Double-Buffering Normal Windows
The following pseudo-code fragment illustrates how to create and display
a double-buffered image:
.DS
-.ft 8
+.\" .ft 8
/*
* Create a normal window
*/
@@ -716,7 +721,7 @@ while animating
* contents of last displayed image buffer.
*/
DestroyImageBuffers( W )
-.ft
+.\" .ft
.DE
.bp
.SH
@@ -727,7 +732,7 @@ The following pseudo-code fragment illustrates how to create a
a multi-buffered image and cycle through the images to
simulate a movie loop:
.DS
-.ft 8
+.\" .ft 8
/*
* Create a normal window
*/
@@ -760,7 +765,7 @@ while animating
foreach frame
DisplayImageBuffers( [B(i)], 100, 0 )
}
-.ft
+.\" .ft
.DE
.bp
.SH
@@ -782,7 +787,7 @@ except the displayed image is made up of a left image
buffer and a right image buffer. To create a stereo window,
a client makes the following request:
.DS
-.ft 8
+.\" .ft 8
CreateStereoWindow
parent : WINDOW
w_id : WINDOW
@@ -797,7 +802,7 @@ CreateStereoWindow
(Errors: Alloc, Color, Cursor, Match,
Pixmap, Value, Window)
-.ft
+.\" .ft
.DE
.LP
This request, modeled after the \fBCreateWindow\fP request,
@@ -853,7 +858,7 @@ Single-Buffered Stereo Windows
The following shows how to create and display a single-buffered
stereo image:
.DS
-.ft 8
+.\" .ft 8
/*
* Create the stereo window, map it the screen,
* and draw the left and right images
@@ -863,7 +868,7 @@ CreateStereoWindow( W, L, R, ... )
MapWindow( W )
<draw picture using L,R>
-.ft
+.\" .ft
.DE
.KE
.bp
@@ -896,7 +901,7 @@ either the left buffer ID or right buffer ID may be specified in a
.LP
To double-buffer a stereo window:
.DS
-.ft 8
+.\" .ft 8
/*
* Create stereo window and map it to the screen
*/
@@ -927,7 +932,7 @@ while animating
<draw picture using L0,R0>
DisplayImageBuffers( [L0], 100, 0 )
}
-.ft
+.\" .ft
.DE
.bp
.SH
@@ -935,7 +940,7 @@ Multi-Buffering Stereo Windows
.LP
To cycle through \fIN\fP stereo images:
.DS
-.ft 8
+.\" .ft 8
/*
* Create stereo window
*/
@@ -968,7 +973,7 @@ while animating
foreach stereo image
DisplayImageBuffers( [L(i)], 100, 0 )
}
-.ft
+.\" .ft
.DE
.bp
.SH
diff --git a/specs/Xext/evi.ms b/specs/Xext/evi.ms
index 7192864..52fe25f 100644
--- a/specs/Xext/evi.ms
+++ b/specs/Xext/evi.ms
@@ -1,5 +1,10 @@
.\" Use -ms and macros.t
.\" $Xorg: evi.ms,v 1.3 2000/08/17 19:42:31 cpqbld Exp $
+.\"
+.\"
+.\"
+.\"
+.\" $XFree86: xc/doc/specs/Xext/evi.ms,v 1.4 2001/01/17 16:57:44 dawes Exp $
.EH ''''
.OH ''''
.EF ''''
@@ -267,7 +272,7 @@ The include file for this extension is:
.Pn < X11/extensions/XEVI.h >.
.LP
.sM
-.FD0
+.FD 0
.PN Bool XeviQueryVersion(
.br
Display *\fIdisplay\fP\^,
diff --git a/specs/Xext/mit-shm.ms b/specs/Xext/mit-shm.ms
index fec9b10..2e905a9 100644
--- a/specs/Xext/mit-shm.ms
+++ b/specs/Xext/mit-shm.ms
@@ -213,6 +213,13 @@ Note that the shared memory ID returned by the system is stored in the
shminfo structure. The server will need that ID to attach itself to the
segment.
.LP
+Also note that, on many systems for security reasons, the X server
+will only accept to attach to the shared memory segment if it's
+readable and writeable by ``other''. On systems where the X server is
+able to determine the uid of the X client over a local transport, the
+shared memory segment can be readable and writeable only by the uid of
+the client.
+.LP
Next, attach this shared memory segment to your process:
.Cs
shminfo.shmaddr = image->data = shmat (shminfo.shmid, 0, 0);
diff --git a/specs/Xext/sync.tex b/specs/Xext/sync.tex
index 842f9cb..22a2884 100644
--- a/specs/Xext/sync.tex
+++ b/specs/Xext/sync.tex
@@ -19,6 +19,8 @@
% ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER
% IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT
% OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
+%
+% $XFree86: xc/doc/specs/Xext/sync.tex,v 1.3 2001/04/27 12:58:27 dawes Exp $
%\documentstyle[a4]{article}
\documentstyle{article}
@@ -1004,3 +1006,4 @@ $\Rightarrow$\\
\> 1 \> ALARMSTATE \> state \\
\> 3 \> \> unused\\
\end{tabbing}
+\end{document}
diff --git a/specs/Xi/porting.ms b/specs/Xi/porting.ms
index 274a0d4..0298957 100644
--- a/specs/Xi/porting.ms
+++ b/specs/Xi/porting.ms
@@ -1,3 +1,4 @@
+.\" $XFree86: xc/doc/specs/Xi/porting.ms,v 1.2 2000/12/04 23:25:59 dawes Exp $
.\" Input Extension Porting Document
.EH ''''
.OH ''''
@@ -987,4 +988,4 @@ the stylus or finger leaves the proximity of the input devices surface.
The event type is \fBProximityIn\fP or \fBProximityOut\fP, and there is no
detail information.
.bp
-.TC
+.\" .TC
diff --git a/specs/Xmu/Xmu.ms b/specs/Xmu/Xmu.ms
index 44fff5d..dadbfb8 100644
--- a/specs/Xmu/Xmu.ms
+++ b/specs/Xmu/Xmu.ms
@@ -1,3 +1,6 @@
+.\"
+.\" $XFree86: xc/doc/specs/Xmu/Xmu.ms,v 1.2 2000/11/28 18:49:20 dawes Exp $
+.\"
.sp 8
.ce 2
\s+2\fBXmu Library\fP\s-2
@@ -70,6 +73,7 @@ XA_TARGETS(\fId\fP)
XA_TEXT(\fId\fP)
XA_TIMESTAMP(\fId\fP)
XA_USER(\fId\fP)
+XA_UTF8_STRING(\fId\fP)
.FN
.LP
These macros take a display as argument and return an
@@ -1198,6 +1202,11 @@ Character Set Functions
To use the functions defined in this section, you should include the header
file
.Pn < X11/Xmu/CharSet.h >.
+.LP
+The functions in this section are \fBdeprecated\fP because they don't work
+in most locales now supported by X11; the function
+.PN XmbLookupString
+provides a better alternative.
.sp
.FD 0
void XmuCopyISOLatin1Lowered(\fIdst\fP, \fIsrc\fP)
@@ -1567,9 +1576,16 @@ except that it maps a key event to an APL string.
Compound Text Functions
.LP
The functions defined in this section are for parsing Compound Text strings,
-decomposing them into individual segments. Definitions needed to use these
+decomposing them into individual segments. Definitions needed to use these
routines are in the include file
.Pn < X11/Xmu/Xct.h >.
+.LP
+The functions in this section are \fBdeprecated\fP because they shift the
+burden for recently introduced locale encodings to the application. The
+use of the
+.PN UTF8_STRING
+text encoding provides a better alternative.
+.LP
A Compound Text string is represented as the following type:
.LP
typedef unsigned char *XctString;
diff --git a/specs/Xserver/analysis.tex b/specs/Xserver/analysis.tex
index 07a4391..87edc71 100644
--- a/specs/Xserver/analysis.tex
+++ b/specs/Xserver/analysis.tex
@@ -1,7 +1,9 @@
-\documentstyle[computer]{article}
+\documentstyle{article}
\setlength{\parindent}{0 pt}
\setlength{\parskip}{6pt}
+% $XFree86: xc/doc/specs/Xserver/analysis.tex,v 1.2 2001/04/19 23:36:35 dawes Exp $
+
\begin{document}
\title{Analysis of the X Protocol for Security Concerns\\Draft Version 2}
@@ -216,9 +218,9 @@ The problems run deeper. The logical thing for the allocator to do if
the client is over its limit is to return NULL, indicating allocation
failure. Unfortunately, there are many places in the server that will
react badly if this happens. Most of these places, but not all, are
-``protected'' by setting the global variable Must_have_memory to True
+``protected'' by setting the global variable Must\_have\_memory to True
around the delicate code. We could help the problem by skipping the
-limit check if Must_have_memory is True. The best solution would be
+limit check if Must\_have\_memory is True. The best solution would be
to bullet-proof the server against allocation failures, but that is
beyond the scope of Broadway. Another consideration is that the
additional checking may have a measurable performance impact, since
@@ -615,9 +617,9 @@ answer: yes, some configurable list. Do those properties need to be
polyinstantiated?
ISSUE: Motif drag and drop needs to be able to read the following
-properties: WM_STATE to identify top-level windows, _MOTIF_DRAG_WINDOW
-on the root window, _MOTIF_DRAG_TARGETS on the window given in the
-_MOTIF_DRAG_WINDOW property, and _MOTIF_DRAG_RECEIVER_INFO on windows
+properties: WM\_STATE to identify top-level windows, \_MOTIF\_DRAG\_WINDOW
+on the root window, \_MOTIF\_DRAG\_TARGETS on the window given in the
+\_MOTIF\_DRAG\_WINDOW property, and \_MOTIF\_DRAG\_RECEIVER\_INFO on windows
with drop sites. Additionally, some properties are needed that do not
have fixed names.
@@ -1514,10 +1516,10 @@ Rosenthal, David S. H., ``LINX - a Less INsecure X server,'' Sun Microsystems,
Rosenthal, David and Marks, Stuart W., ``Inter-Client Communication
Conventions Manual Version 2.0,''
-\file{ftp://ftp.x.org/pub/R6.1/xc/doc/hardcopy/ICCCM/icccm.PS.Z}
+{\tt ftp://ftp.x.org/pub/R6.1/xc/doc/hardcopy/ICCCM/icccm.PS.Z}
Scheifler, Robert W., ``X Window System Protocol,''
-\file{ftp://ftp.x.org/pub/R6.1/xc/doc/hardcopy/XProtocol/proto.PS.Z}
+{\tt ftp://ftp.x.org/pub/R6.1/xc/doc/hardcopy/XProtocol/proto.PS.Z}
Treese, G. Winfield and Wolman, Alec, ``X Through the Firewall, and
Other Application Relays,'' Digital Equipment Corporation Cambridge
diff --git a/specs/Xserver/secint.tex b/specs/Xserver/secint.tex
index 0aba115..3e17dba 100644
--- a/specs/Xserver/secint.tex
+++ b/specs/Xserver/secint.tex
@@ -1,7 +1,9 @@
-\documentstyle[computer]{article}
+\documentstyle{article}
\setlength{\parindent}{0 pt}
\setlength{\parskip}{6pt}
+% $XFree86: xc/doc/specs/Xserver/secint.tex,v 1.2 2001/04/19 23:36:35 dawes Exp $
+
\begin{document}
\title{Security Extension Server Design\\Draft Version 3.0}
diff --git a/specs/Xt/CH01 b/specs/Xt/CH01
index 7cc1db0..3d09eef 100644
--- a/specs/Xt/CH01
+++ b/specs/Xt/CH01
@@ -1895,8 +1895,8 @@ Superclass Chaining
.LP
.IN "Chaining" "superclass"
.IN "Chaining" "Subclass"
-.IN "Superclass Chaining" "" "@DEF@
-.IN "Subclass Chaining" "" "@DEF@
+.IN "Superclass Chaining" "" "@DEF@"
+.IN "Subclass Chaining" "" "@DEF@"
.IN "Inheritance"
While most fields in a widget class structure are self-contained,
some fields are linked to their corresponding fields in their superclass
diff --git a/specs/Xt/CH02 b/specs/Xt/CH02
index 41cdf67..cbb4bb8 100644
--- a/specs/Xt/CH02
+++ b/specs/Xt/CH02
@@ -538,7 +538,7 @@ use
.PN XtSetLanguageProc .
.LP
.IN XtSetLanguageProc "" "@DEF@"
-.IN "language procedure" "" "@DEF@
+.IN "language procedure" "" "@DEF@"
.sM
.FD 0
XtLanguageProc XtSetLanguageProc(\fIapp_context\fP, \fIproc\fP, \fIclient_data\fP)
diff --git a/specs/i18n/Framework.ms b/specs/i18n/Framework.ms
index 6210cba..9366185 100644
--- a/specs/i18n/Framework.ms
+++ b/specs/i18n/Framework.ms
@@ -1,5 +1,6 @@
.\" $Xorg: Framework.ms,v 1.3 2000/08/17 19:42:49 cpqbld Exp $
.\" To print this out, type tbl macros.t ThisFile | troff -ms
+.\" $XFree86: xc/doc/specs/i18n/Framework.ms,v 1.5 2001/02/09 00:02:52 dawes Exp $
.EH ''''
.OH ''''
.EF ''''
@@ -296,9 +297,9 @@ the components within the sample implementation.
\h'3.063i'\v'0.782i'\h'-0.0m'\v'0.2m'\s12\fR>>\fP
.sp -1
.sp 1+4.344i
+.in -1c
.PE
.if \n(00 .fi
-.in -1c
.\" figure end
.LP
.ce
@@ -649,7 +650,7 @@ JISX0212.1990-0:GR@JIS X0212-1990, Japanese Graphic Character Set
@defined as GR
.\" CNS11643.1986-0:GL
.\" CNS11643.1986-1:GL
-.\" TIS620.2533-1:GR
+.\" TIS620-0:GR
.sp 6p
_
.TE
@@ -1000,7 +1001,7 @@ int _XlcNCompareISOLatin1(\fIstr1\fP, \fIstr2\fP, \fIlen\fP)
.LP
The
.PN _XlcCompareIsoLatin1
-function to compares two ISO-8859-1 strings. Bytes representing lower
+function to compares two ISO-8859-1 strings. Bytes representing ASCII lower
case letters are converted to upper case before making the comparison.
The value returned is an integer less than, equal to, or greater than
zero, depending on whether ``\fIstr1\fP'' is lexicographicly less than,
diff --git a/specs/rstart/rstart.ms b/specs/rstart/rstart.ms
index 317f797..2800442 100644
--- a/specs/rstart/rstart.ms
+++ b/specs/rstart/rstart.ms
@@ -1,10 +1,11 @@
+.\" $XFree86: xc/doc/specs/rstart/rstart.ms,v 1.2 2001/05/29 18:14:12 dawes Exp $
.ds iL Brown
.ds iI J.
.ds iO Quarterdeck Office Systems
.ds iG X Consortium
.ds iN DRAFT
.ds iD August 1993
-.so tmac.rfc
+.so tmac.build
.LG
.LG
.ce