specs/libX11: Mass substitution of <function> tags with more specific tags

Matched names from X headers & "nm libX11.so" output to names in spec to
map to more specific tags.   Tags used:

                    <code>   code fragments
                <constant>   enum values
               <errorname>   X protocol errors
                <filename>   filenames
                <function>   functions
                <function>   function-like macros (#define foo(a,b)...)
             <returnvalue>   function return codes
             <structfield>   struct members
              <structname>   struct names (even when typedefed)
                  <symbol>   simple value #defines (#define NAME value)
              <systemitem>   X protocol requests
<systemitem class="event">   X protocol events
                    <type>   non-struct typedefs
                 <varname>   global variables

(Also fixed a couple typos detected by failures of this matching, such as
 XESSetPrintErrorValues -> XESetPrintErrorValues.)

Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
This commit is contained in:
Alan Coopersmith 2010-07-10 00:06:13 -07:00
parent 26f4f0d508
commit 7548044094
19 changed files with 3585 additions and 3585 deletions

View file

@ -98,9 +98,9 @@ function determines if the named extension is present.
If the extension is not present,
<function>XQueryExtension</function>
returns
<function>False</function>;
<symbol>False</symbol>;
otherwise, it returns
<function>True</function>.
<symbol>True</symbol>.
If the extension is present,
<function>XQueryExtension</function>
returns the major opcode for the extension to major_opcode_return;
@ -229,7 +229,7 @@ called when these events occur.
<para>
<!-- .LP -->
The
<function>XExtCodes</function>
<structname>XExtCodes</structname>
structure returns the information from
<function>XInitExtension</function>
and is defined in
@ -312,7 +312,7 @@ are all considered different names.
<para>
<!-- .LP -->
The extension number in the
<function>XExtCodes</function>
<structname>XExtCodes</structname>
structure is
needed in the other calls that follow.
This extension number is unique only to a single connection.
@ -347,7 +347,7 @@ Specifies the connection to the X server.
For local Xlib extensions, the
<function>XAddExtension</function>
function allocates the
<function>XExtCodes</function>
<structname>XExtCodes</structname>
structure, bumps the extension number count,
and chains the extension onto the extension list.
(This permits extensions to Xlib without requiring server extensions.)
@ -799,19 +799,19 @@ and
<function>XESetEventToWire</function>
functions allow you to define new events to the library.
An
<function>XEvent</function>
<structname>XEvent</structname>
structure always has a type code (type
<function>int</function>)
<type>int</type>)
as the first component.
This uniquely identifies what kind of event it is.
The second component is always the serial number (type
<function>unsigned</function>
<function>long</function>)
<type>unsigned</type>
<type>long</type>)
of the last request processed by the server.
The third component is always a Boolean (type
<function>Bool</function>)
<type>Bool</type>)
indicating whether the event came from a
<function>SendEvent</function>
<systemitem>SendEvent</systemitem>
protocol request.
The fourth component is always a pointer to the display
the event was read from.
@ -824,7 +824,7 @@ from the protocol to put in this component, initialize it to zero.
<!-- .NT -->
There is an implementation limit such that your host event
structure size cannot be bigger than the size of the
<function>XEvent</function>
<structname>XEvent</structname>
union of structures.
There also is no way to guarantee that more than 24 elements or 96 characters
in the structure will be fully portable between machines.
@ -880,9 +880,9 @@ The
<function>XESetWireToEvent</function>
function defines a procedure to be called when an event
needs to be converted from wire format
(<function>xEvent</function>)
(<structname>xEvent</structname>)
to host format
(<function>XEvent</function>).
(<structname>XEvent</structname>).
The event number defines which protocol event number to install a
conversion procedure for.
<function>XESetWireToEvent</function>
@ -916,21 +916,21 @@ Your procedure must return status to indicate if the conversion succeeded.
The re argument is a pointer to where the host format event should be stored,
and the event argument is the 32-byte wire event structure.
In the
<function>XEvent</function>
<structname>XEvent</structname>
structure you are creating,
you must fill in the five required members of the event structure.
You should fill in the type member with the type specified for the
<function>xEvent</function>
<structname>xEvent</structname>
structure.
You should copy all other members from the
<function>xEvent</function>
<structname>xEvent</structname>
structure (wire format) to the
<function>XEvent</function>
<structname>XEvent</structname>
structure (host format).
Your conversion procedure should return
<function>True</function>
<symbol>True</symbol>
if the event should be placed in the queue or
<function>False</function>
<symbol>False</symbol>
if it should not be placed in the queue.
</para>
<para>
@ -1036,9 +1036,9 @@ The
<function>XESetEventToWire</function>
function defines a procedure to be called when an event
needs to be converted from host format
(<function>XEvent</function>)
(<structname>XEvent</structname>)
to wire format
(<function>xEvent</function>)
(<structname>xEvent</structname>)
form.
The event number defines which protocol event number to install a
conversion procedure for.
@ -1074,10 +1074,10 @@ The re argument is a pointer to the host format event,
and the event argument is a pointer to where the 32-byte wire event
structure should be stored.
You should fill in the type with the type from the
<function>XEvent</function>
<structname>XEvent</structname>
structure.
All other members then should be copied from the host format to the
<function>xEvent</function>
<structname>xEvent</structname>
structure.
<indexterm significance="preferred"><primary>XESetWireToError</primary></indexterm>
<!-- .sM -->
@ -1165,17 +1165,17 @@ Bool (*<emphasis remap='I'>proc</emphasis>)(<emphasis remap='I'>display</emphasi
<!-- .eM -->
The he argument is a pointer to where the host format error should be stored.
The structure pointed at by he is guaranteed to be as large as an
<function>XEvent</function>
<structname>XEvent</structname>
structure and so can be cast to a type larger than an
<function>XErrorEvent</function>
<structname>XErrorEvent</structname>
to store additional values.
If the error is to be completely ignored by Xlib
(for example, several protocol error structures will be combined into
one Xlib error),
then the function should return
<function>False</function>;
<symbol>False</symbol>;
otherwise, it should return
<function>True</function>.
<symbol>True</symbol>.
<indexterm significance="preferred"><primary>XESetError</primary></indexterm>
<!-- .sM -->
<funcsynopsis>
@ -1348,7 +1348,7 @@ error message into buffer.
<!-- .sM -->
<funcsynopsis>
<funcprototype>
<funcdef>void *<function>XESSetPrintErrorValues</function></funcdef>
<funcdef>void *<function>XESetPrintErrorValues</function></funcdef>
<paramdef>Display<parameter> *display</parameter></paramdef>
<paramdef>int<parameter> extension</parameter></paramdef>
<paramdef>void<parameter> (*proc)()</parameter></paramdef>
@ -1421,9 +1421,9 @@ void (*<emphasis remap='I'>proc</emphasis>)(<emphasis remap='I'>display</emphasi
<!-- .LP -->
<!-- .eM -->
The structure pointed at by ev is guaranteed to be as large as an
<function>XEvent</function>
<structname>XEvent</structname>
structure and so can be cast to a type larger than an
<function>XErrorEvent</function>
<structname>XErrorEvent</structname>
to obtain additional values set by using
<function>XESetWireToError</function>.
The underlying type of the fp argument is system dependent;
@ -1562,13 +1562,13 @@ Hooks onto Xlib Data Structures
Various Xlib data structures have provisions for extension procedures
to chain extension supplied data onto a list.
These structures are
<function>GC</function>,
<function>Visual</function>,
<function>Screen</function>,
<function>ScreenFormat</function>,
<function>Display</function>,
<structname>GC</structname>,
<structname>Visual</structname>,
<type>Screen</type>,
<structname>ScreenFormat</structname>,
<type>Display</type>,
and
<function>XFontStruct</function>.
<structname>XFontStruct</structname>.
Because the list pointer is always the first member in the structure,
a single set of procedures can be used to manipulate the data
on these lists.
@ -1654,7 +1654,7 @@ In concert with
<function>XEHeadOfExtensionList</function>
allows an extension to attach arbitrary data to any of the structures
of types contained in
<function>XEDataObject</function>.
<structname>XEDataObject</structname>.
</para>
<para>
<!-- .LP -->
@ -1775,7 +1775,7 @@ Specifies the connection to the X server.
<!-- .LP -->
<!-- .eM -->
This macro is a call through the
<function>Display</function>
<type>Display</type>
structure to an internal resource ID allocator.
It returns a resource ID that you can use when creating new resources.
</para>
@ -1832,7 +1832,7 @@ Specifies the number of resource IDs requested.
<!-- .LP -->
<!-- .eM -->
This macro is a call through the
<function>Display</function>
<type>Display</type>
structure to an internal resource ID allocator.
It returns resource IDs to the array supplied by the caller.
To correctly handle automatic reuse of resource IDs, you must call
@ -1958,7 +1958,7 @@ single calls to be transformed into poly requests.
This may dramatically improve performance of programs that are not
written using poly requests.
A pointer to an
<function>xReq</function>,
<structname>xReq</structname>,
called last_req in the display structure, is the last request being processed.
By checking that the last request
type, drawable, gc, and other options are the same as the new one
@ -2110,7 +2110,7 @@ The length field in a request must equal the minimum length required to contain
the request.
If the specified length is smaller or larger than the required length,
the server should generate a
<function>BadLength</function>
<errorname>BadLength</errorname>
error.
Unused bytes in a request are not required to be zero.
Extensions should be designed in such a way that long protocol requests
@ -2133,9 +2133,9 @@ used in replies, errors, and events.
<para>
<!-- .LP -->
To help but not cure portability problems to certain machines, the
<function>B16</function>
<symbol>B16</symbol>
and
<function>B32</function>
<symbol>B32</symbol>
macros have been defined so that they can become bitfield specifications
on some machines.
For example, on a Cray,
@ -2170,20 +2170,20 @@ typedef struct _DoSomethingReq {
If a core protocol request has a single 32-bit argument,
you need not declare a request structure in your extension header file.
Instead, such requests use the
<function>xResourceReq</function>
<structname>xResourceReq</structname>
structure in
&lt;X11/Xproto.h&gt;.
This structure is used for any request whose single argument is a
<function>Window</function>,
<function>Pixmap</function>,
<function>Drawable</function>,
<function>GContext</function>,
<function>Font</function>,
<function>Cursor</function>,
<function>Colormap</function>,
<function>Atom</function>,
<type>Window</type>,
<type>Pixmap</type>,
<type>Drawable</type>,
<type>GContext</type>,
<type>Font</type>,
<type>Cursor</type>,
<type>Colormap</type>,
<type>Atom</type>,
or
<function>VisualID</function>.
<type>VisualID</type>.
</para>
<para>
<!-- .LP -->
@ -2223,7 +2223,7 @@ but all requests are padded to be multiples of four bytes long.
<!-- .LP -->
A few protocol requests take no arguments at all.
Instead, they use the
<function>xReq</function>
<structname>xReq</structname>
structure in
&lt;X11/Xproto.h&gt;,
which contains only a reqType and a length (and a pad byte).
@ -2280,11 +2280,11 @@ The reply structure is longer than 32 bytes.
<para>
<!-- .LP -->
Only
<function>GetWindowAttributes</function>,
<function>QueryFont</function>,
<function>QueryKeymap</function>,
<systemitem>GetWindowAttributesl</systemitem>,
<systemitem>QueryFont</systemitem>,
<systemitem>QueryKeymap</systemitem>,
and
<function>GetKeyboardControl</function>
<systemitem>GetKeyboardControl</systemitem>
have reply structures longer than 32 bytes in the core protocol.
</para>
<para>
@ -2293,7 +2293,7 @@ A few protocol requests return replies that contain no data.
&lt;X11/Xproto.h&gt;
does not define reply structures for these.
Instead, they use the
<function>xGenericReply</function>
<structname>xGenericReply</structname>
structure, which contains only a type, length,
and sequence number (and sufficient padding to make it 32 bytes long).
<!-- .SH -->
@ -2393,7 +2393,7 @@ the name of the protocol request as declared in
&lt;X11/Xproto.h&gt;
except with X_ removed.
Each one declares a
<function>Display</function>
<type>Display</type>
structure pointer,
called dpy, and a pointer to a request structure, called req,
which is of the appropriate type.
@ -2413,15 +2413,15 @@ then use
GetEmptyReq (DoSomething, req);
</literallayout>
If the protocol request has a single 32-bit argument (such as a
<function>Pixmap</function>,
<function>Window</function>,
<function>Drawable</function>,
<function>Atom</function>,
<type>Pixmap</type>,
<type>Window</type>,
<type>Drawable</type>,
<type>Atom</type>,
and so on),
then use
<function>GetResReq</function>.
The second argument to the macro is the 32-bit object.
<function>X_MapWindow</function>
<symbol>X_MapWindow</symbol>
is a good example.
</para>
<para>
@ -2431,8 +2431,8 @@ is a good example.
GetResReq (DoSomething, rid, req);
</literallayout>
The rid argument is the
<function>Pixmap</function>,
<function>Window</function>,
<type>Pixmap</type>,
<type>Window</type>,
or other resource ID.
</para>
<para>
@ -2498,7 +2498,7 @@ Variable Length Arguments
<!-- .LP -->
Some protocol requests take additional variable-length data that
follow the
<function>xDoSomethingReq</function>
<type>xDoSomethingReq</type>
structure.
The format of this data varies from request to request.
Some requests require a sequence of 8-bit bytes,
@ -2585,7 +2585,7 @@ after you have finished dealing with
all the fixed-length and variable-length arguments.
<function>_XReply</function>
flushes the output buffer and waits for an
<function>xReply</function>
<structname>xReply</structname>
packet to arrive.
If any events arrive in the meantime,
<function>_XReply</function>
@ -2662,14 +2662,14 @@ takes four arguments:
<listitem>
<para>
A
<function>Display</function>
<type>Display</type>
* structure
</para>
</listitem>
<listitem>
<para>
A pointer to a reply structure (which must be cast to an
<function>xReply</function>
<structname>xReply</structname>
*)
</para>
</listitem>
@ -2695,38 +2695,38 @@ beyond those it was told to read
Because most reply structures are 32 bytes long,
the third argument is usually 0.
The only core protocol exceptions are the replies to
<function>GetWindowAttributes</function>,
<function>QueryFont</function>,
<function>QueryKeymap</function>,
<systemitem>GetWindowAttributesl</systemitem>,
<systemitem>QueryFont</systemitem>,
<systemitem>QueryKeymap</systemitem>,
and
<function>GetKeyboardControl</function>,
<systemitem>GetKeyboardControl</systemitem>,
which have longer replies.
</para>
<para>
<!-- .LP -->
The last argument should be
<function>False</function>
<symbol>False</symbol>
if the reply structure is followed
by additional variable-length data (such as a list or string).
It should be
<function>True</function>
<symbol>True</symbol>
if there is not any variable-length data.
<!-- .NT -->
This last argument is provided for upward-compatibility reasons
to allow a client to communicate properly with a hypothetical later
version of the server that sends more data than the client expected.
For example, some later version of
<function>GetWindowAttributes</function>
<systemitem>GetWindowAttributesl</systemitem>
might use a
larger, but compatible,
<function>xGetWindowAttributesReply</function>
<structname>xGetWindowAttributesReply</structname>
that contains additional attribute data at the end.
<!-- .NE -->
<function>_XReply</function>
returns
<function>True</function>
<symbol>True</symbol>
if it received a reply successfully or
<function>False</function>
<symbol>False</symbol>
if it received any sort of error.
</para>
<para>
@ -2750,9 +2750,9 @@ return (rep.ret4);
</literallayout>
If there is variable-length data after the reply,
change the
<function>True</function>
<symbol>True</symbol>
to
<function>False</function>,
<symbol>False</symbol>,
and use the appropriate
<function>_XRead</function>
function to read the variable-length data.
@ -3041,7 +3041,7 @@ Synchronous Calling
<!-- .LP -->
Each procedure should have a call, just before returning to the user,
to a macro called
<function>SyncHandle</function>.
<systemitem>SyncHandle</systemitem>.
If synchronous mode is enabled (see
<function>XSynchronize</function>),
the request is sent immediately.
@ -3250,42 +3250,42 @@ avoided completely if at all possible.
This code may run on machines with 16-bit ints.
So, if any integer argument, variable, or return value either can take
only nonnegative values or is declared as a
<function>CARD16</function>
<type>CARD16</type>
in the protocol, be sure to declare it as
<function>unsigned</function>
<function>int</function>
<type>unsigned</type>
<type>int</type>
and not as
<function>int</function>.
<type>int</type>.
(This, of course, does not apply to Booleans or enumerations.)
</para>
<para>
<!-- .LP -->
Similarly,
if any integer argument or return value is declared
<function>CARD32</function>
<type>CARD32</type>
in the protocol,
declare it as an
<function>unsigned</function>
<function>long</function>
<type>unsigned</type>
<type>long</type>
and not as
<function>int</function>
<type>int</type>
or
<function>long</function>.
<type>long</type>.
This also goes for any internal variables that may
take on values larger than the maximum 16-bit
<function>unsigned</function>
<function>int</function>.
<type>unsigned</type>
<type>int</type>.
</para>
<para>
<!-- .LP -->
The library currently assumes that a
<function>char</function>
<type>char</type>
is 8 bits, a
<function>short</function>
<type>short</type>
is 16 bits, an
<function>int</function>
<type>int</type>
is 16 or 32 bits, and a
<function>long</function>
<type>long</type>
is 32 bits.
The
<function>PackData</function>
@ -3310,7 +3310,7 @@ in
&lt;stdio.h&gt;
and is the number of file descriptors supported on the system)
of type
<function>XExtCodes</function>.
<structname>XExtCodes</structname>.
Make sure these are all initialized to NULL.
</para>
</listitem>
@ -3333,7 +3333,7 @@ Make sure to establish a close display handler to allow you to zero the entry.
Do whatever other initialization your extension requires.
(For example, install event handlers and so on.)
Your initialization procedure would normally return a pointer to the
<function>XExtCodes</function>
<structname>XExtCodes</structname>
structure for this extension, which is what would normally
be found in your array of pointers.
</para>
@ -3343,7 +3343,7 @@ be found in your array of pointers.
After returning from your initialization procedure,
the stub can now continue normally, because it has its major opcode safely
in its hand in the
<function>XExtCodes</function>
<structname>XExtCodes</structname>
structure.
<!-- .bp -->
</para>

View file

@ -26,7 +26,7 @@ Set and get window sizing hints
<listitem>
<para>
Set and get an
<function>XStandardColormap</function>
<structname>XStandardColormap</structname>
structure
</para>
</listitem>
@ -119,7 +119,7 @@ which should be a null-terminated string.
<listitem>
<para>
Specifies the bitmap that is to be used for the icon or
<function>None</function>.
<symbol>None</symbol>.
</para>
</listitem>
</varlistentry>
@ -176,9 +176,9 @@ the result is implementation-dependent.
<!-- .LP -->
<function>XSetStandardProperties</function>
can generate
<function>BadAlloc</function>
<errorname>BadAlloc</errorname>
and
<function>BadWindow</function>
<errorname>BadWindow</errorname>
errors.
<!-- .SH -->
</para>
@ -189,7 +189,7 @@ Setting and Getting Window Sizing Hints
<!-- .LP -->
Xlib provides functions that you can use to set or get window sizing hints.
The functions discussed in this section use the flags and the
<function>XSizeHints</function>
<structname>XSizeHints</structname>
structure, as defined in the
<!-- .hN X11/Xutil.h -->
header file and use the WM_NORMAL_HINTS property.
@ -278,9 +278,9 @@ the structure have been assigned values.
<!-- .LP -->
<function>XSetNormalHints</function>
can generate
<function>BadAlloc</function>
<errorname>BadAlloc</errorname>
and
<function>BadWindow</function>
<errorname>BadWindow</errorname>
errors.
</para>
<para>
@ -347,7 +347,7 @@ the application specified no normal size hints for this window.
<!-- .LP -->
<function>XGetNormalHints</function>
can generate a
<function>BadWindow</function>
<errorname>BadWindow</errorname>
error.
</para>
<para>
@ -419,9 +419,9 @@ zoomed state.
<!-- .LP -->
<function>XSetZoomHints</function>
can generate
<function>BadAlloc</function>
<errorname>BadAlloc</errorname>
and
<function>BadWindow</function>
<errorname>BadWindow</errorname>
errors.
</para>
<para>
@ -488,7 +488,7 @@ the application specified no zoom size hints for this window.
<!-- .LP -->
<function>XGetZoomHints</function>
can generate a
<function>BadWindow</function>
<errorname>BadWindow</errorname>
error.
</para>
<para>
@ -559,7 +559,7 @@ Specifies the property name.
The
<function>XSetSizeHints</function>
function sets the
<function>XSizeHints</function>
<structname>XSizeHints</structname>
structure for the named property and the specified window.
This is used by
<function>XSetNormalHints</function>
@ -572,10 +572,10 @@ Thus, it may be useful if other properties of that type get defined.
<!-- .LP -->
<function>XSetSizeHints</function>
can generate
<function>BadAlloc</function>,
<function>BadAtom</function>,
<errorname>BadAlloc</errorname>,
<errorname>BadAtom</errorname>,
and
<function>BadWindow</function>
<errorname>BadWindow</errorname>
errors.
</para>
<para>
@ -646,7 +646,7 @@ Specifies the property name.
The
<function>XGetSizeHints</function>
function returns the
<function>XSizeHints</function>
<structname>XSizeHints</structname>
structure for the named property and the specified window.
This is used by
<function>XGetNormalHints</function>
@ -663,9 +663,9 @@ or zero otherwise.
<!-- .LP -->
<function>XGetSizeHints</function>
can generate
<function>BadAtom</function>
<errorname>BadAtom</errorname>
and
<function>BadWindow</function>
<errorname>BadWindow</errorname>
errors.
<!-- .SH -->
Getting and Setting an XStandardColormap Structure
@ -673,11 +673,11 @@ Getting and Setting an XStandardColormap Structure
<para>
<!-- .LP -->
To get the
<function>XStandardColormap</function>
<structname>XStandardColormap</structname>
structure associated with one of the described atoms, use
<function>XGetStandardColormap</function>.
This function has been superseded by
<function>XGetRGBColormap</function>.
<function>XGetRGBColormaps</function>.
<indexterm significance="preferred"><primary>XGetStandardColormap</primary></indexterm>
<!-- .sM -->
<funcsynopsis>
@ -744,7 +744,7 @@ as the property argument.
returns a nonzero status if successful and zero otherwise.
For example,
to fetch the standard
<function>GrayScale</function>
<symbol>GrayScale</symbol>
colormap for a display,
you use
<function>XGetStandardColormap</function>
@ -768,9 +768,9 @@ See section 14.3 for the semantics of standard colormaps.
<!-- .LP -->
<function>XGetStandardColormap</function>
can generate
<function>BadAtom</function>
<errorname>BadAtom</errorname>
and
<function>BadWindow</function>
<errorname>BadWindow</errorname>
errors.
</para>
<para>
@ -779,7 +779,7 @@ errors.
To set a standard colormap, use
<function>XSetStandardColormap</function>.
This function has been superseded by
<function>XSetRGBColormap</function>.
<function>XSetRGBColormaps</function>.
<indexterm significance="preferred"><primary>XSetStandardColormap</primary></indexterm>
<!-- .sM -->
<funcsynopsis>
@ -846,11 +846,11 @@ function usually is only used by window or session managers.
<!-- .LP -->
<function>XSetStandardColormap</function>
can generate
<function>BadAlloc</function>,
<function>BadAtom</function>,
<function>BadDrawable</function>,
<errorname>BadAlloc</errorname>,
<errorname>BadAtom</errorname>,
<errorname>BadDrawable</errorname>,
and
<function>BadWindow</function>
<errorname>BadWindow</errorname>
errors.
<!-- .SH -->
Parsing Window Geometry
@ -1148,7 +1148,7 @@ a resource file in the user's home directory is used.
On a <acronym>POSIX</acronym>-conformant system,
this file is
<function>"$HOME/.Xdefaults"</function>.
<indexterm><primary>Files</primary><secondary>$HOME/.Xdefaults</secondary></indexterm>
<indexterm><primary>Files</primary><secondary><filename>$HOME/.Xdefaults</filename></secondary></indexterm>
After loading these defaults,
<function>XGetDefault</function>
merges additional defaults specified by the XENVIRONMENT
@ -1158,8 +1158,8 @@ it contains a full path name for the additional resource file.
If XENVIRONMENT is not defined,
<function>XGetDefault</function>
looks for
"$HOME/.Xdefaults-<emphasis remap='I'>name</emphasis>" ,
where <emphasis remap='I'>name</emphasis> specifies the name of the machine on which the application
"<filename>$HOME/.Xdefaults-<replaceable>name</replaceable></filename>" ,
where <replaceable>name</replaceable> specifies the name of the machine on which the application
is running.
<!-- .SH -->
X Version 10 Compatibility Functions
@ -1233,15 +1233,15 @@ the closing of a closed figure (see
<function>XDrawLines</function>).
The functions discussed here fail (return zero) only if they run out of memory
or are passed a
<function>Vertex</function>
<structname>Vertex</structname>
list that has a
<function>Vertex</function>
<structname>Vertex</structname>
with
<function>VertexStartClosed</function>
<symbol>VertexStartClosed</symbol>
set that is not followed by a
<function>Vertex</function>
<structname>Vertex</structname>
with
<function>VertexEndClosed</function>
<symbol>VertexEndClosed</symbol>
set.
</para>
<para>
@ -1361,9 +1361,9 @@ typedef struct _Vertex {
The x and y members are the coordinates of the vertex
that are relative to either the upper left inside corner of the drawable
(if
<function>VertexRelative</function>
<symbol>VertexRelative</symbol>
is zero) or the previous vertex (if
<function>VertexRelative</function>
<symbol>VertexRelative</symbol>
is one).
</para>
<para>
@ -1391,7 +1391,7 @@ VertexEndClosed 0x0010 /* else not */
<listitem>
<para>
If
<function>VertexRelative</function>
<symbol>VertexRelative</symbol>
is not set,
the coordinates are absolute (that is, relative to the drawable's origin).
The first vertex must be an absolute vertex.
@ -1400,7 +1400,7 @@ The first vertex must be an absolute vertex.
<listitem>
<para>
If
<function>VertexDontDraw</function>
<symbol>VertexDontDraw</symbol>
is one,
no line or curve is drawn from the previous vertex to this one.
This is analogous to picking up the pen and moving to another place
@ -1410,13 +1410,13 @@ before drawing another line.
<listitem>
<para>
If
<function>VertexCurved</function>
<symbol>VertexCurved</symbol>
is one,
a spline algorithm is used to draw a smooth curve from the previous vertex
through this one to the next vertex.
Otherwise, a straight line is drawn from the previous vertex to this one.
It makes sense to set
<function>VertexCurved</function>
<symbol>VertexCurved</symbol>
to one only if a previous and next vertex are both defined
(either explicitly in the array or through the definition of a closed
curve).
@ -1425,9 +1425,9 @@ curve).
<listitem>
<para>
It is permissible for
<function>VertexDontDraw</function>
<symbol>VertexDontDraw</symbol>
bits and
<function>VertexCurved</function>
<symbol>VertexCurved</symbol>
bits both to be one.
This is useful if you want to define the previous point for the smooth curve
but do not want an actual curve drawing to start until this point.
@ -1436,13 +1436,13 @@ but do not want an actual curve drawing to start until this point.
<listitem>
<para>
If
<function>VertexStartClosed</function>
<symbol>VertexStartClosed</symbol>
is one,
then this point marks the beginning of a closed curve.
This vertex must be followed later in the array by another vertex
whose effective coordinates are identical
and that has a
<function>VertexEndClosed</function>
<symbol>VertexEndClosed</symbol>
bit of one.
The points in between form a cycle to determine predecessor
and successor vertices for the spline algorithm.
@ -1575,9 +1575,9 @@ The
<function>XAssocTable</function>
system provides users of the X library with a method
for associating their own data structures with X resources
(<function>Pixmaps</function>,
<function>Fonts</function>,
<function>Windows</function>,
(<type>Pixmap</type>s,
<type>Font</type>s,
<type>Window</type>s,
and so on).
</para>
<para>
@ -1597,7 +1597,7 @@ It is called an XID.
<para>
<!-- .LP -->
There are a few guidelines that should be observed when using an
<function>XAssocTable :</function>
<function>XAssocTable</function> :
</para>
<itemizedlist>
<listitem>

View file

@ -121,7 +121,7 @@ X does not guarantee to preserve the contents of windows.
When part or all of a window is hidden and then brought back onto the screen,
its contents may be lost.
The server then sends the client program an
<function>Expose</function>
<symbol>Expose</symbol>
event to notify it that part or all of the window needs to be repainted.
Programs must be prepared to regenerate the contents of windows on demand.
</para>
@ -171,13 +171,13 @@ that returns a value from the server or waits for input.
Many Xlib functions will return an integer resource ID,
which allows you to refer to objects stored on the X server.
These can be of type
<function>Window</function>,
<function>Font</function>,
<function>Pixmap</function>,
<function>Colormap</function>,
<function>Cursor</function>,
<type>Window</type>,
<type>Font</type>,
<type>Pixmap</type>,
<type>Colormap</type>,
<type>Cursor</type>,
and
<function>GContext</function>,
<type>GContext</type>,
as defined in the file
<!-- .hN X11/X.h . -->
These resources are created by requests and are destroyed
@ -196,7 +196,7 @@ Xlib provides no support for sharing graphics contexts between applications.
Client programs are informed of events.
Events may either be side effects of a request (for example, restacking windows
generates
<function>Expose</function>
<symbol>Expose</symbol>
events) or completely asynchronous (for example, from the keyboard).
A client program asks to be informed of events.
Because other applications can send events to your application,
@ -214,9 +214,9 @@ In addition, some library
functions (for example,
<function>XRaiseWindow</function>)
generate
<function>Expose</function>
<symbol>Expose</symbol>
and
<function>ConfigureRequest</function>
<symbol>ConfigureRequest</symbol>
events.
These events also arrive asynchronously, but the client may
<indexterm><primary>XSync</primary></indexterm>
@ -233,7 +233,7 @@ after calling a function that can cause the server to generate events.
<para>
<!-- .LP -->
Some functions return
<function>Status</function>,
<type>Status</type>,
an integer error indication.
If the function fails, it returns a zero.
If the function returns a status of zero,
@ -294,7 +294,7 @@ The following include files are part of the Xlib standard:
This is the main header file for Xlib.
The majority of all Xlib symbols are declared by including this file.
This file also contains the preprocessor symbol
<function>XlibSpecificationRelease</function>.
<symbol>XlibSpecificationRelease</symbol>.
<indexterm significance="preferred"><primary>XlibSpecificationRelease</primary></indexterm>
This symbol is defined to have the 6 in this release of the standard.
(Release 5 of Xlib was the first release to have this symbol.)
@ -459,17 +459,17 @@ The following symbols are defined by Xlib and used throughout the manual:
<listitem>
<para>
Xlib defines the type
<function>Bool</function>
<type>Bool</type>
and the Boolean values
<function>True</function>
<symbol>True</symbol>
and
<function>False</function>.
<symbol>False</symbol>.
<indexterm significance="preferred"><primary>None</primary></indexterm>
</para>
</listitem>
<listitem>
<para>
<function>None</function>
<symbol>None</symbol>
is the universal null resource ID or atom.
<indexterm significance="preferred"><primary>XID</primary></indexterm>
</para>
@ -477,7 +477,7 @@ is the universal null resource ID or atom.
<listitem>
<para>
The type
<function>XID</function>
<type>XID</type>
is used for generic resource IDs.
<indexterm significance="preferred"><primary>XPointer</primary></indexterm>
</para>
@ -485,7 +485,7 @@ is used for generic resource IDs.
<listitem>
<para>
The type
<function>XPointer</function>
<type>XPointer</type>
is defined to be char\^* and is used as a generic opaque pointer to data.
</para>
</listitem>
@ -611,7 +611,7 @@ Coordinates and sizes in X are actually 16-bit quantities.
This decision was made to minimize the bandwidth required for a
given level of performance.
Coordinates usually are declared as an
<function>int</function>
<type>int</type>
in the interface.
Values larger than 16 bits are truncated silently.
Sizes (width and height) are declared as unsigned quantities.

View file

@ -22,7 +22,7 @@ Obtain information about the display, image formats, or screens
<listitem>
<para>
Generate a
<function>NoOperation</function>
<systemitem>NoOperation</systemitem>
protocol request
</para>
</listitem>
@ -182,7 +182,7 @@ dual-headed:0.1
The
<function>XOpenDisplay</function>
function returns a
<function>Display</function>
<type>Display</type>
structure that serves as the
connection to the X server and that contains all the information
about that X server.
@ -216,7 +216,7 @@ mechanisms.
If successful,
<function>XOpenDisplay</function>
returns a pointer to a
<function>Display</function>
<type>Display</type>
structure,
which is defined in
<!-- .hN X11/Xlib.h . -->
@ -233,13 +233,13 @@ macro (or the
<function>XDefaultScreen</function>
function).
You can access elements of the
<function>Display</function>
<type>Display</type>
and
<function>Screen</function>
<type>Screen</type>
structures only by using the information macros or functions.
For information about using macros and functions to obtain information from
the
<function>Display</function>
<type>Display</type>
structure,
see section 2.2.1.
</para>
@ -258,7 +258,7 @@ X servers may implement various types of access control mechanisms
<!-- .LP -->
The Xlib library provides a number of useful macros
and corresponding functions that return data from the
<function>Display</function>
<type>Display</type>
structure.
The macros are used for C programming,
and their corresponding function equivalents are for other language bindings.
@ -285,11 +285,11 @@ Screen information macros
<!-- .LP -->
<indexterm ><primary>Display</primary><secondary>data structure</secondary></indexterm>
All other members of the
<function>Display</function>
<type>Display</type>
structure (that is, those for which no macros are defined) are private to Xlib
and must not be used.
Applications must never directly modify or inspect these private members of the
<function>Display</function>
<type>Display</type>
structure.
<!-- .NT Note -->
The
@ -314,9 +314,9 @@ Our apologies for the resulting confusion.
<para>
<!-- .LP -->
Applications should not directly modify any part of the
<function>Display</function>
<type>Display</type>
and
<function>Screen</function>
<type>Screen</type>
structures.
The members should be considered read-only,
although they may change as the result of other operations on the display.
@ -1480,7 +1480,7 @@ most of the work required to convert the data is provided by Xlib
<para>
<!-- .LP -->
The
<function>XPixmapFormatValues</function>
<structname>XPixmapFormatValues</structname>
structure provides an interface to the pixmap format information
that is returned at the time of a connection setup.
It contains:
@ -1547,14 +1547,14 @@ Returns the number of (Cn.
The
<function>XListPixmapFormats</function>
function returns an array of
<function>XPixmapFormatValues</function>
<structname>XPixmapFormatValues</structname>
structures that describe the types of Z format images supported
by the specified display.
If insufficient memory is available,
<function>XListPixmapFormats</function>
returns NULL.
To free the allocated storage for the
<function>XPixmapFormatValues</function>
<structname>XPixmapFormatValues</structname>
structures, use
<function>XFree</function>.
</para>
@ -1601,9 +1601,9 @@ Both specify the required byte order for images for each scanline unit in
XY format (bitmap) or for each pixel value in
Z format.
The macro or function can return either
<function>LSBFirst</function>
<symbol>LSBFirst</symbol>
or
<function>MSBFirst</function>.
<symbol>MSBFirst</symbol>.
</para>
<para>
<!-- .LP -->
@ -1676,9 +1676,9 @@ Within each bitmap unit, the left-most bit in the bitmap as displayed
on the screen is either the least significant or most significant bit in the
unit.
This macro or function can return
<function>LSBFirst</function>
<symbol>LSBFirst</symbol>
or
<function>MSBFirst</function>.
<symbol>MSBFirst</symbol>.
</para>
<para>
<!-- .LP -->
@ -1933,7 +1933,7 @@ BlackPixelOfScreen(<emphasis remap='I'>screen</emphasis>)
<listitem>
<para>
Specifies the appropriate
<function>Screen</function>
<type>Screen</type>
structure.
</para>
</listitem>
@ -1969,7 +1969,7 @@ WhitePixelOfScreen(<emphasis remap='I'>screen</emphasis>)
<listitem>
<para>
Specifies the appropriate
<function>Screen</function>
<type>Screen</type>
structure.
</para>
</listitem>
@ -2005,7 +2005,7 @@ CellsOfScreen(<emphasis remap='I'>screen</emphasis>)
<listitem>
<para>
Specifies the appropriate
<function>Screen</function>
<type>Screen</type>
structure.
</para>
</listitem>
@ -2042,7 +2042,7 @@ DefaultColormapOfScreen(<emphasis remap='I'>screen</emphasis>)
<listitem>
<para>
Specifies the appropriate
<function>Screen</function>
<type>Screen</type>
structure.
</para>
</listitem>
@ -2078,7 +2078,7 @@ DefaultDepthOfScreen(<emphasis remap='I'>screen</emphasis>)
<listitem>
<para>
Specifies the appropriate
<function>Screen</function>
<type>Screen</type>
structure.
</para>
</listitem>
@ -2114,7 +2114,7 @@ DefaultGCOfScreen(<emphasis remap='I'>screen</emphasis>)
<listitem>
<para>
Specifies the appropriate
<function>Screen</function>
<type>Screen</type>
structure.
</para>
</listitem>
@ -2152,7 +2152,7 @@ DefaultVisualOfScreen(<emphasis remap='I'>screen</emphasis>)
<listitem>
<para>
Specifies the appropriate
<function>Screen</function>
<type>Screen</type>
structure.
</para>
</listitem>
@ -2190,7 +2190,7 @@ DoesBackingStore(<emphasis remap='I'>screen</emphasis>)
<listitem>
<para>
Specifies the appropriate
<function>Screen</function>
<type>Screen</type>
structure.
</para>
</listitem>
@ -2204,10 +2204,10 @@ structure.
Both return a value indicating whether the screen supports backing
stores.
The value returned can be one of
<function>WhenMapped</function>,
<function>NotUseful</function>,
<symbol>WhenMapped</symbol>,
<symbol>NotUseful</symbol>,
or
<function>Always</function>
<symbol>Always</symbol>
(see section 3.2.4).
</para>
<para>
@ -2233,7 +2233,7 @@ DoesSaveUnders(<emphasis remap='I'>screen</emphasis>)
<listitem>
<para>
Specifies the appropriate
<function>Screen</function>
<type>Screen</type>
structure.
</para>
</listitem>
@ -2247,10 +2247,10 @@ structure.
Both return a Boolean value indicating whether the
screen supports save unders.
If
<function>True</function>,
<symbol>True</symbol>,
the screen supports save unders.
If
<function>False</function>,
<symbol>False</symbol>,
the screen does not support save unders (see section 3.2.5).
</para>
<para>
@ -2276,7 +2276,7 @@ DisplayOfScreen(<emphasis remap='I'>screen</emphasis>)
<listitem>
<para>
Specifies the appropriate
<function>Screen</function>
<type>Screen</type>
structure.
</para>
</listitem>
@ -2313,7 +2313,7 @@ EventMaskOfScreen(<emphasis remap='I'>screen</emphasis>)
<listitem>
<para>
Specifies the appropriate
<function>Screen</function>
<type>Screen</type>
structure.
</para>
</listitem>
@ -2349,7 +2349,7 @@ EventMaskOfScreen(<emphasis remap='I'>screen</emphasis>)
<listitem>
<para>
Specifies the appropriate
<function>Screen</function>
<type>Screen</type>
structure.
</para>
</listitem>
@ -2386,7 +2386,7 @@ WidthOfScreen(<emphasis remap='I'>screen</emphasis>)
<listitem>
<para>
Specifies the appropriate
<function>Screen</function>
<type>Screen</type>
structure.
</para>
</listitem>
@ -2422,7 +2422,7 @@ HeightOfScreen(<emphasis remap='I'>screen</emphasis>)
<listitem>
<para>
Specifies the appropriate
<function>Screen</function>
<type>Screen</type>
structure.
</para>
</listitem>
@ -2458,7 +2458,7 @@ WidthMMOfScreen(<emphasis remap='I'>screen</emphasis>)
<listitem>
<para>
Specifies the appropriate
<function>Screen</function>
<type>Screen</type>
structure.
</para>
</listitem>
@ -2494,7 +2494,7 @@ HeightMMOfScreen(<emphasis remap='I'>screen</emphasis>)
<listitem>
<para>
Specifies the appropriate
<function>Screen</function>
<type>Screen</type>
structure.
</para>
</listitem>
@ -2530,7 +2530,7 @@ MaxCmapsOfScreen(<emphasis remap='I'>screen</emphasis>)
<listitem>
<para>
Specifies the appropriate
<function>Screen</function>
<type>Screen</type>
structure.
</para>
</listitem>
@ -2567,7 +2567,7 @@ MinCmapsOfScreen(<emphasis remap='I'>screen</emphasis>)
<listitem>
<para>
Specifies the appropriate
<function>Screen</function>
<type>Screen</type>
structure.
</para>
</listitem>
@ -2604,7 +2604,7 @@ PlanesOfScreen(<emphasis remap='I'>screen</emphasis>)
<listitem>
<para>
Specifies the appropriate
<function>Screen</function>
<type>Screen</type>
structure.
</para>
</listitem>
@ -2640,7 +2640,7 @@ RootWindowOfScreen(<emphasis remap='I'>screen</emphasis>)
<listitem>
<para>
Specifies the appropriate
<function>Screen</function>
<type>Screen</type>
structure.
</para>
</listitem>
@ -2663,7 +2663,7 @@ Both return the root window of the specified screen.
<para>
<!-- .LP -->
To execute a
<function>NoOperation</function>
<systemitem>NoOperation</systemitem>
protocol request, use
<function>XNoOp</function>.
<indexterm significance="preferred"><primary>XNoOp</primary></indexterm>
@ -2690,7 +2690,7 @@ protocol request, use
The
<function>XNoOp</function>
function sends a
<function>NoOperation</function>
<systemitem>NoOperation</systemitem>
protocol request to the X server,
thereby exercising the connection.
</para>
@ -2779,15 +2779,15 @@ Specifies the connection to the X server.
The
<function>XCloseDisplay</function>
function closes the connection to the X server for the display specified in the
<function>Display</function>
<type>Display</type>
structure and destroys all windows, resource IDs
(<function>Window</function>,
<function>Font</function>,
<function>Pixmap</function>,
<function>Colormap</function>,
<function>Cursor</function>,
(<type>Window</type>,
<type>Font</type>,
<type>Pixmap</type>,
<type>Colormap</type>,
<type>Cursor</type>,
and
<function>GContext</function>),
<type>GContext</type>),
or other resources that the client has created
on this display, unless the close-down mode of the resource has been changed
(see
@ -2808,7 +2808,7 @@ operation.
<!-- .LP -->
<function>XCloseDisplay</function>
can generate a
<function>BadGC</function>
<errorname>BadGC</errorname>
error.
<!-- .sp -->
</para>
@ -2848,10 +2848,10 @@ Specifies the connection to the X server.
<para>
Specifies the client close-down mode.
You can pass
<function>DestroyAll</function>,
<function>RetainPermanent</function>,
<symbol>DestroyAll</symbol>,
<symbol>RetainPermanent</symbol>,
or
<function>RetainTemporary</function>.
<symbol>RetainTemporary</symbol>.
</para>
</listitem>
</varlistentry>
@ -2863,20 +2863,20 @@ The
<function>XSetCloseDownMode</function>
defines what will happen to the client's resources at connection close.
A connection starts in
<function>DestroyAll</function>
<symbol>DestroyAll</symbol>
mode.
For information on what happens to the client's resources when the
close_mode argument is
<function>RetainPermanent</function>
<symbol>RetainPermanent</symbol>
or
<function>RetainTemporary</function>,
<symbol>RetainTemporary</symbol>,
see section 2.6.
</para>
<para>
<!-- .LP -->
<function>XSetCloseDownMode</function>
can generate a
<function>BadValue</function>
<errorname>BadValue</errorname>
error.
</para>
</sect1>
@ -2928,9 +2928,9 @@ It releases all passive grabs made by the client.
It marks all resources (including colormap entries) allocated
by the client either as permanent or temporary,
depending on whether the close-down mode is
<function>RetainPermanent</function>
<symbol>RetainPermanent</symbol>
or
<function>RetainTemporary</function>.
<symbol>RetainTemporary</symbol>.
However, this does not prevent other client applications from explicitly
destroying the resources (see
<function>XSetCloseDownMode</function>).
@ -2940,7 +2940,7 @@ destroying the resources (see
<para>
<!-- .LP -->
When the close-down mode is
<function>DestroyAll</function>,
<symbol>DestroyAll</symbol>,
the X server destroys all of a client's resources as follows:
</para>
<itemizedlist>
@ -2960,7 +2960,7 @@ window.
<listitem>
<para>
It performs a
<function>MapWindow</function>
<systemitem>MapWindow</systemitem>
request on the save-set window if the save-set window is unmapped.
The X server does this even if the save-set window was not an inferior of
a window created by the client.
@ -2975,12 +2975,12 @@ It destroys all windows created by the client.
<para>
It performs the appropriate free request on each nonwindow resource created by
the client in the server (for example,
<function>Font</function>,
<function>Pixmap</function>,
<function>Cursor</function>,
<function>Colormap</function>,
<type>Font</type>,
<type>Pixmap</type>,
<type>Cursor</type>,
<type>Colormap</type>,
and
<function>GContext</function>).
<type>GContext</type>).
</para>
</listitem>
<listitem>
@ -2996,7 +2996,7 @@ An X server goes through a cycle of having no connections and having some
connections.
When the last connection to the X server closes as a result of a connection
closing with the close_mode of
<function>DestroyAll</function>,
<symbol>DestroyAll</symbol>,
the X server does the following:
</para>
<itemizedlist>
@ -3006,9 +3006,9 @@ It resets its state as if it had just been
started.
The X server begins by destroying all lingering resources from
clients that have terminated in
<function>RetainPermanent</function>
<symbol>RetainPermanent</symbol>
or
<function>RetainTemporary</function>
<symbol>RetainTemporary</symbol>
mode.
</para>
</listitem>
@ -3042,7 +3042,7 @@ It restores the default font path.
<listitem>
<para>
It restores the input focus to state
<function>PointerRoot</function>.
<symbol>PointerRoot</symbol>.
</para>
</listitem>
</itemizedlist>
@ -3050,9 +3050,9 @@ It restores the input focus to state
<!-- .LP -->
However, the X server does not reset if you close a connection with a close-down
mode set to
<function>RetainPermanent</function>
<symbol>RetainPermanent</symbol>
or
<function>RetainTemporary</function>.
<symbol>RetainTemporary</symbol>.
</para>
</sect1>
<sect1 id="Using_Xlib_with_Threads">
@ -3272,11 +3272,11 @@ internal connection for the specified display. The procedure is passed the
display, the specified client_data, the file descriptor for the connection,
a Boolean indicating whether the connection is being opened or closed, and a
pointer to a location for private watch data. If opening is
<function>True</function>,
<symbol>True</symbol>,
the procedure can store a pointer to private data in the location pointed
to by watch_data;
when the procedure is later called for this same connection and opening is
<function>False</function>,
<symbol>False</symbol>,
the location pointed to by watch_data will hold this same private data pointer.
</para>
<para>

File diff suppressed because it is too large Load diff

View file

@ -134,7 +134,7 @@ To free a non-NULL children list when it is no longer needed, use
<!-- .LP -->
<function>XQueryTree</function>
can generate a
<function>BadWindow</function>
<errorname>BadWindow</errorname>
error.
</para>
<para>
@ -182,7 +182,7 @@ Specifies the window (Wi.
<listitem>
<para>
Returns the specified window's attributes in the
<function>XWindowAttributes</function>
<structname>XWindowAttributes</structname>
structure.
</para>
</listitem>
@ -195,7 +195,7 @@ structure.
The
<function>XGetWindowAttributes</function>
function returns the current attributes for the specified window to an
<function>XWindowAttributes</function>
<structname>XWindowAttributes</structname>
structure.
</para>
<para>
@ -241,13 +241,13 @@ The border_width member is set to the window's border width in pixels.
The depth member is set to the depth of the window
(that is, bits per pixel for the object).
The visual member is a pointer to the screen's associated
<function>Visual</function>
<structname>Visual</structname>
structure.
The root member is set to the root window of the screen containing the window.
The class member is set to the window's class and can be either
<function>InputOutput</function>
<symbol>InputOutput</symbol>
or
<function>InputOnly</function>.
<symbol>InputOnly</symbol>.
</para>
<para>
<!-- .LP -->
@ -260,24 +260,24 @@ and can be one of the following:
<colspec colname='c2'/>
<tbody>
<row>
<entry><function>ForgetGravity</function></entry>
<entry><function>EastGravity</function></entry>
<entry><symbol>ForgetGravity</symbol></entry>
<entry><symbol>EastGravity</symbol></entry>
</row>
<row>
<entry><function>NorthWestGravity</function></entry>
<entry><function>SouthWestGravity</function></entry>
<entry><symbol>NorthWestGravity</symbol></entry>
<entry><symbol>SouthWestGravity</symbol></entry>
</row>
<row>
<entry><function>NorthGravity</function></entry>
<entry><function>SouthGravity</function></entry>
<entry><symbol>NorthGravity</symbol></entry>
<entry><symbol>SouthGravity</symbol></entry>
</row>
<row>
<entry><function>NorthEastGravity</function></entry>
<entry><function>SouthEastGravity</function></entry>
<entry><symbol>NorthEastGravity</symbol></entry>
<entry><symbol>SouthEastGravity</symbol></entry>
</row>
<row>
<entry><function>WestGravity</function></entry>
<entry><function>StaticGravity</function></entry>
<entry><symbol>WestGravity</symbol></entry>
<entry><symbol>StaticGravity</symbol></entry>
</row>
</tbody>
</tgroup>
@ -294,27 +294,27 @@ and can be one of the following:
<colspec colname='c2'/>
<tbody>
<row>
<entry><function>UnmapGravity</function></entry>
<entry><function>EastGravity</function></entry>
<entry><symbol>UnmapGravity</symbol></entry>
<entry><symbol>EastGravity</symbol></entry>
</row>
<row>
<entry><function>NorthWestGravity</function></entry>
<entry><function>SouthWestGravity</function></entry>
<entry><symbol>NorthWestGravity</symbol></entry>
<entry><symbol>SouthWestGravity</symbol></entry>
</row>
<row>
<entry><function>NorthGravity</function></entry>
<entry><function>SouthGravity</function></entry>
<entry><symbol>NorthGravity</symbol></entry>
<entry><symbol>SouthGravity</symbol></entry>
</row>
<row>
<entry><function>NorthEastGravity</function></entry>
<entry><function>SouthEastGravity</function></entry>
<entry><symbol>NorthEastGravity</symbol></entry>
<entry><symbol>SouthEastGravity</symbol></entry>
</row>
<row>
<entry><function>WestGravity</function></entry>
<entry><function>StaticGravity</function></entry>
<entry><symbol>WestGravity</symbol></entry>
<entry><symbol>StaticGravity</symbol></entry>
</row>
<row>
<entry><function>CenterGravity</function></entry>
<entry><symbol>CenterGravity</symbol></entry>
<entry></entry>
</row>
</tbody>
@ -330,10 +330,10 @@ see section 3.2.3. <!-- xref -->
The backing_store member is set to indicate how the X server should maintain
the contents of a window
and can be
<function>WhenMapped</function>,
<function>Always</function>,
<symbol>WhenMapped</symbol>,
<symbol>Always</symbol>,
or
<function>NotUseful</function>.
<symbol>NotUseful</symbol>.
The backing_planes member is set to indicate (with bits set to 1) which bit
planes of the window hold dynamic data that must be preserved in backing_stores
and during save_unders.
@ -343,23 +343,23 @@ for planes not set in backing_planes.
<para>
<!-- .LP -->
The save_under member is set to
<function>True</function>
<symbol>True</symbol>
or
<function>False</function>.
<symbol>False</symbol>.
The colormap member is set to the colormap for the specified window and can be
a colormap ID or
<function>None</function>.
<symbol>None</symbol>.
The map_installed member is set to indicate whether the colormap is
currently installed and can be
<function>True</function>
<symbol>True</symbol>
or
<function>False</function>.
<symbol>False</symbol>.
The map_state member is set to indicate the state of the window and can be
<function>IsUnmapped</function>,
<function>IsUnviewable</function>,
<symbol>IsUnmapped</symbol>,
<symbol>IsUnviewable</symbol>,
or
<function>IsViewable</function>.
<function>IsUnviewable</function>
<symbol>IsViewable</symbol>.
<symbol>IsUnviewable</symbol>
is used if the window is mapped but some ancestor is unmapped.
</para>
<para>
@ -375,11 +375,11 @@ set of events that should not propagate.
<!-- .LP -->
The override_redirect member is set to indicate whether this window overrides
structure control facilities and can be
<function>True</function>
<symbol>True</symbol>
or
<function>False</function>.
<symbol>False</symbol>.
Window manager clients should ignore the window if this member is
<function>True</function>.
<symbol>True</symbol>.
</para>
<para>
<!-- .LP -->
@ -392,9 +392,9 @@ having to loop over the root window fields to see which field matches.
<!-- .LP -->
<function>XGetWindowAttributes</function>
can generate
<function>BadDrawable</function>
<errorname>BadDrawable</errorname>
and
<function>BadWindow</function>
<errorname>BadWindow</errorname>
errors.
</para>
<para>
@ -530,13 +530,13 @@ The geometry of the drawable includes the x and y coordinates, width and height,
border width, and depth.
These are described in the argument list.
It is legal to pass to this function a window whose class is
<function>InputOnly</function>.
<symbol>InputOnly</symbol>.
</para>
<para>
<!-- .LP -->
<function>XGetGeometry</function>
can generate a
<function>BadDrawable</function>
<errorname>BadDrawable</errorname>
error.
</para>
</sect1>
@ -668,7 +668,7 @@ destination window.
If
<function>XTranslateCoordinates</function>
returns
<function>True</function>,
<symbol>True</symbol>,
it takes the src_x and src_y coordinates relative
to the source window's origin and returns these coordinates to
dest_x_return and dest_y_return
@ -676,19 +676,19 @@ relative to the destination window's origin.
If
<function>XTranslateCoordinates</function>
returns
<function>False</function>,
<symbol>False</symbol>,
src_w and dest_w are on different screens,
and dest_x_return and dest_y_return are zero.
If the coordinates are contained in a mapped child of dest_w,
that child is returned to child_return.
Otherwise, child_return is set to
<function>None</function>.
<symbol>None</symbol>.
</para>
<para>
<!-- .LP -->
<function>XTranslateCoordinates</function>
can generate a
<function>BadWindow</function>
<errorname>BadWindow</errorname>
error.
</para>
<para>
@ -817,23 +817,23 @@ coordinates relative to the root window's origin.
If
<function>XQueryPointer</function>
returns
<function>False</function>,
<symbol>False</symbol>,
the pointer is not on the same screen as the specified window, and
<function>XQueryPointer</function>
returns
<function>None</function>
<symbol>None</symbol>
to child_return and zero to win_x_return and win_y_return.
If
<function>XQueryPointer</function>
returns
<function>True</function>,
<symbol>True</symbol>,
the pointer coordinates returned to win_x_return and win_y_return
are relative to the origin of the specified window.
In this case,
<function>XQueryPointer</function>
returns the child that contains the pointer, if any,
or else
<function>None</function>
<symbol>None</symbol>
to child_return.
</para>
<para>
@ -855,7 +855,7 @@ may lag the physical state if device event processing is frozen
<!-- .LP -->
<function>XQueryPointer</function>
can generate a
<function>BadWindow</function>
<errorname>BadWindow</errorname>
error.
</para>
</sect1>
@ -912,7 +912,7 @@ predefined in the server for commonly used functions.
The atoms for these properties are defined in
<!-- .hN X11/Xatom.h . -->
To avoid name clashes with user symbols, the
<function>#define</function>
<code>#define</code>
name for each atom has the XA_ prefix.
For an explanation of the functions that let you get and set
much of the information stored in these predefined properties,
@ -962,7 +962,7 @@ Font properties
<listitem>
<para>
Type of a
<function>ClientMessage</function>
<symbol>ClientMessage</symbol>
event (none are built into the X server)
</para>
</listitem>
@ -1237,12 +1237,12 @@ The
function returns the atom identifier associated with the specified atom_name
string.
If only_if_exists is
<function>False</function>,
<symbol>False</symbol>,
the atom is created if it does not exist.
Therefore,
<function>XInternAtom</function>
can return
<function>None</function>.
<symbol>None</symbol>.
If the atom name is not in the Host Portable Character Encoding,
the result is implementation-dependent.
Uppercase and lowercase matter;
@ -1256,9 +1256,9 @@ the X server closes.
<!-- .LP -->
<function>XInternAtom</function>
can generate
<function>BadAlloc</function>
<errorname>BadAlloc</errorname>
and
<function>BadValue</function>
<errorname>BadValue</errorname>
errors.
</para>
<para>
@ -1357,9 +1357,9 @@ otherwise, it returns zero.
<!-- .LP -->
<function>XInternAtoms</function>
can generate
<function>BadAlloc</function>
<errorname>BadAlloc</errorname>
and
<function>BadValue</function>
<errorname>BadValue</errorname>
errors.
</para>
<para>
@ -1418,7 +1418,7 @@ call
<!-- .LP -->
<function>XGetAtomName</function>
can generate a
<function>BadAtom</function>
<errorname>BadAtom</errorname>
error.
</para>
<para>
@ -1506,7 +1506,7 @@ otherwise, it returns zero.
<!-- .LP -->
<function>XGetAtomNames</function>
can generate a
<function>BadAtom</function>
<errorname>BadAtom</errorname>
error.
</para>
</sect1>
@ -1521,11 +1521,11 @@ You can attach a property list to every window.
Each property has a name, a type, and a value (see section 4.3). <!-- xref -->
The value is an array of 8-bit, 16-bit, or 32-bit quantities,
whose interpretation is left to the clients. The type
<function>char</function>
<type>char</type>
is used to represent 8-bit quantities, the type
<function>short</function>
<type>short</type>
is used to represent 16-bit quantities, and the type
<function>long</function>
<type>long</type>
is used to represent 32-bit quantities.
</para>
<para>
@ -1634,7 +1634,7 @@ Specifies a Boolean value that determines whether the property is deleted.
<listitem>
<para>
Specifies the atom identifier associated with the property type or
<function>AnyPropertyType</function>.
<symbol>AnyPropertyType</symbol>.
</para>
</listitem>
</varlistentry>
@ -1709,7 +1709,7 @@ sets the return arguments as follows:
If the specified property does not exist for the specified window,
<function>XGetWindowProperty</function>
returns
<function>None</function>
<symbol>None</symbol>
to actual_type_return and the value zero to
actual_format_return and bytes_after_return.
The nitems_return argument is empty.
@ -1733,7 +1733,7 @@ The nitems_return argument is empty.
<listitem>
<para>
If the specified property exists and either you assign
<function>AnyPropertyType</function>
<symbol>AnyPropertyType</symbol>
to the req_type argument or the specified type matches the actual property type,
<function>XGetWindowProperty</function>
returns the actual property type to actual_type_return and the actual
@ -1761,7 +1761,7 @@ The returned value starts at byte index I in the property (indexing
from zero), and its length in bytes is L.
If the value for long_offset causes L to be negative,
a
<function>BadValue</function>
<errorname>BadValue</errorname>
error results.
The value of bytes_after_return is A,
giving the number of trailing unread bytes in the stored property.
@ -1771,13 +1771,13 @@ giving the number of trailing unread bytes in the stored property.
<para>
<!-- .LP -->
If the returned format is 8, the returned data is represented as a
<function>char</function>
<type>char</type>
array.
If the returned format is 16, the returned data is represented as a
<function>short</function>
<type>short</type>
array and should be cast to that type to obtain the elements.
If the returned format is 32, the returned data is represented as a
<function>long</function>
<type>long</type>
array and should be cast to that type to obtain the elements.
</para>
<para>
@ -1791,18 +1791,18 @@ do not have to be copied into yet another string before use.
<para>
<!-- .LP -->
If delete is
<function>True</function>
<symbol>True</symbol>
and bytes_after_return is zero,
<function>XGetWindowProperty</function>
deletes the property
from the window and generates a
<function>PropertyNotify</function>
<symbol>PropertyNotify</symbol>
event on the window.
</para>
<para>
<!-- .LP -->
The function returns
<function>Success</function>
<symbol>Success</symbol>
if it executes successfully.
To free the resulting data,
use
@ -1812,10 +1812,10 @@ use
<!-- .LP -->
<function>XGetWindowProperty</function>
can generate
<function>BadAtom</function>,
<function>BadValue</function>,
<errorname>BadAtom</errorname>,
<errorname>BadValue</errorname>,
and
<function>BadWindow</function>
<errorname>BadWindow</errorname>
errors.
</para>
<para>
@ -1883,7 +1883,7 @@ To free the memory allocated by this function, use
<!-- .LP -->
<function>XListProperties</function>
can generate a
<function>BadWindow</function>
<errorname>BadWindow</errorname>
error.
</para>
<para>
@ -1984,10 +1984,10 @@ to
<para>
Specifies the mode of the operation.
You can pass
<function>PropModeReplace</function>,
<function>PropModePrepend</function>,
<symbol>PropModeReplace</symbol>,
<symbol>PropModePrepend</symbol>,
or
<function>PropModeAppend</function>.
<symbol>PropModeAppend</symbol>.
</para>
</listitem>
</varlistentry>
@ -2020,7 +2020,7 @@ The
<function>XChangeProperty</function>
function alters the property for the specified window and
causes the X server to generate a
<function>PropertyNotify</function>
<symbol>PropertyNotify</symbol>
event on that window.
<function>XChangeProperty</function>
performs the following:
@ -2029,7 +2029,7 @@ performs the following:
<listitem>
<para>
If mode is
<function>PropModeReplace</function>,
<symbol>PropModeReplace</symbol>,
<function>XChangeProperty</function>
discards the previous property value and stores the new data.
</para>
@ -2037,15 +2037,15 @@ discards the previous property value and stores the new data.
<listitem>
<para>
If mode is
<function>PropModePrepend</function>
<symbol>PropModePrepend</symbol>
or
<function>PropModeAppend</function>,
<symbol>PropModeAppend</symbol>,
<function>XChangeProperty</function>
inserts the specified data before the beginning of the existing data
or onto the end of the existing data, respectively.
The type and format must match the existing property value,
or a
<function>BadMatch</function>
<errorname>BadMatch</errorname>
error results.
If the property is undefined,
it is treated as defined with the correct type and
@ -2056,13 +2056,13 @@ format with zero-length data.
<para>
<!-- .LP -->
If the specified format is 8, the property data must be a
<function>char</function>
<type>char</type>
array.
If the specified format is 16, the property data must be a
<function>short</function>
<type>short</type>
array.
If the specified format is 32, the property data must be a
<function>long</function>
<type>long</type>
array.
</para>
<para>
@ -2075,19 +2075,19 @@ see section 2.6. <!-- xref -->
The maximum size of a property is server dependent and can vary dynamically
depending on the amount of memory the server has available.
(If there is insufficient space, a
<function>BadAlloc</function>
<errorname>BadAlloc</errorname>
error results.)
</para>
<para>
<!-- .LP -->
<function>XChangeProperty</function>
can generate
<function>BadAlloc</function>,
<function>BadAtom</function>,
<function>BadMatch</function>,
<function>BadValue</function>,
<errorname>BadAlloc</errorname>,
<errorname>BadAtom</errorname>,
<errorname>BadMatch</errorname>,
<errorname>BadValue</errorname>,
and
<function>BadWindow</function>
<errorname>BadWindow</errorname>
errors.
</para>
<para>
@ -2171,7 +2171,7 @@ The
<function>XRotateWindowProperties</function>
function allows you to rotate properties on a window and causes
the X server to generate
<function>PropertyNotify</function>
<symbol>PropertyNotify</symbol>
events.
If the property names in the properties array are viewed as being numbered
starting from zero and if there are num_prop property names in the list,
@ -2182,17 +2182,17 @@ of property names (right for positive npositions,
left for negative npositions).
If npositions mod N is nonzero,
the X server generates a
<function>PropertyNotify</function>
<symbol>PropertyNotify</symbol>
event for each property in the order that they are listed in the array.
If an atom occurs more than once in the list or no property with that
name is defined for the window,
a
<function>BadMatch</function>
<errorname>BadMatch</errorname>
error results.
If a
<function>BadAtom</function>
<errorname>BadAtom</errorname>
or
<function>BadMatch</function>
<errorname>BadMatch</errorname>
error results,
no properties are changed.
</para>
@ -2200,10 +2200,10 @@ no properties are changed.
<!-- .LP -->
<function>XRotateWindowProperties</function>
can generate
<function>BadAtom</function>,
<function>BadMatch</function>,
<errorname>BadAtom</errorname>,
<errorname>BadMatch</errorname>,
and
<function>BadWindow</function>
<errorname>BadWindow</errorname>
errors.
</para>
<para>
@ -2265,16 +2265,16 @@ The
function deletes the specified property only if the
property was defined on the specified window
and causes the X server to generate a
<function>PropertyNotify</function>
<symbol>PropertyNotify</symbol>
event on the window unless the property does not exist.
</para>
<para>
<!-- .LP -->
<function>XDeleteProperty</function>
can generate
<function>BadAtom</function>
<errorname>BadAtom</errorname>
and
<function>BadWindow</function>
<errorname>BadWindow</errorname>
errors.
</para>
</sect1>
@ -2376,7 +2376,7 @@ Specifies the selection atom.
<para>
Specifies the owner of the specified selection atom.
You can pass a window or
<function>None</function>.
<symbol>None</symbol>.
</para>
</listitem>
</varlistentry>
@ -2388,7 +2388,7 @@ You can pass a window or
<para>
Specifies the time.
You can pass either a timestamp or
<function>CurrentTime</function>.
<symbol>CurrentTime</symbol>.
</para>
</listitem>
</varlistentry>
@ -2405,12 +2405,12 @@ last-change time of the specified selection
or is later than the current X server time.
Otherwise, the last-change time is set to the specified time,
with
<function>CurrentTime</function>
<symbol>CurrentTime</symbol>
replaced by the current server time.
If the owner window is specified as
<function>None</function>,
<symbol>None</symbol>,
then the owner of the selection becomes
<function>None</function>
<symbol>None</symbol>
(that is, no owner).
Otherwise, the owner of the selection becomes the client executing
the request.
@ -2418,13 +2418,13 @@ the request.
<para>
<!-- .LP -->
If the new owner (whether a client or
<function>None</function>)
<symbol>None</symbol>)
is not
the same as the current owner of the selection and the current
owner is not
<function>None</function>,
<symbol>None</symbol>,
the current owner is sent a
<function>SelectionClear</function>
<symbol>SelectionClear</symbol>
event.
If the client that is the owner of a selection is later
terminated (that is, its connection is closed)
@ -2432,14 +2432,14 @@ or if the owner window it has specified in the request is later
destroyed,
the owner of the selection automatically
reverts to
<function>None</function>,
<symbol>None</symbol>,
but the last-change time is not affected.
The selection atom is uninterpreted by the X server.
<function>XGetSelectionOwner</function>
returns the owner window, which is reported in
<function>SelectionRequest</function>
<symbol>SelectionRequest</symbol>
and
<function>SelectionClear</function>
<symbol>SelectionClear</symbol>
events.
Selections are global to the X server.
</para>
@ -2447,9 +2447,9 @@ Selections are global to the X server.
<!-- .LP -->
<function>XSetSelectionOwner</function>
can generate
<function>BadAtom</function>
<errorname>BadAtom</errorname>
and
<function>BadWindow</function>
<errorname>BadWindow</errorname>
errors.
</para>
<para>
@ -2501,9 +2501,9 @@ function
returns the window ID associated with the window that currently owns the
specified selection.
If no selection was specified, the function returns the constant
<function>None</function>.
<symbol>None</symbol>.
If
<function>None</function>
<symbol>None</symbol>
is returned,
there is no owner for the selection.
</para>
@ -2511,7 +2511,7 @@ there is no owner for the selection.
<!-- .LP -->
<function>XGetSelectionOwner</function>
can generate a
<function>BadAtom</function>
<errorname>BadAtom</errorname>
error.
</para>
<para>
@ -2572,7 +2572,7 @@ Specifies the target atom.
<para>
Specifies the property name.
You also can pass
<function>None</function>.
<symbol>None</symbol>.
</para>
</listitem>
</varlistentry>
@ -2594,7 +2594,7 @@ Specifies the requestor.
<para>
Specifies the time.
You can pass either a timestamp or
<function>CurrentTime</function>.
<symbol>CurrentTime</symbol>.
</para>
</listitem>
</varlistentry>
@ -2611,7 +2611,7 @@ type:
<listitem>
<para>
If the specified selection has an owner, the X server sends a
<function>SelectionRequest</function>
<symbol>SelectionRequest</symbol>
event to that owner.
</para>
</listitem>
@ -2619,10 +2619,10 @@ event to that owner.
<para>
If no owner for the specified
selection exists, the X server generates a
<function>SelectionNotify</function>
<symbol>SelectionNotify</symbol>
event to the
requestor with property
<function>None</function>.
<symbol>None</symbol>.
</para>
</listitem>
</itemizedlist>
@ -2635,9 +2635,9 @@ There are two predefined selection atoms: PRIMARY and SECONDARY.
<!-- .LP -->
<function>XConvertSelection</function>
can generate
<function>BadAtom</function>
<errorname>BadAtom</errorname>
and
<function>BadWindow</function>
<errorname>BadWindow</errorname>
errors.
<!-- .bp -->

View file

@ -94,16 +94,16 @@ The
function creates a pixmap of the width, height, and depth you specified
and returns a pixmap ID that identifies it.
It is valid to pass an
<function>InputOnly</function>
<symbol>InputOnly</symbol>
window to the drawable argument.
The width and height arguments must be nonzero,
or a
<function>BadValue</function>
<errorname>BadValue</errorname>
error results.
The depth argument must be one of the depths supported by the screen
of the specified drawable,
or a
<function>BadValue</function>
<errorname>BadValue</errorname>
error results.
</para>
<para>
@ -120,10 +120,10 @@ The initial contents of the pixmap are undefined.
<!-- .LP -->
<function>XCreatePixmap</function>
can generate
<function>BadAlloc</function>,
<function>BadDrawable</function>,
<errorname>BadAlloc</errorname>,
<errorname>BadDrawable</errorname>,
and
<function>BadValue</function>
<errorname>BadValue</errorname>
errors.
</para>
<para>
@ -177,7 +177,7 @@ The pixmap should never be referenced again.
<!-- .LP -->
<function>XFreePixmap</function>
can generate a
<function>BadPixmap</function>
<errorname>BadPixmap</errorname>
error.
</para>
</sect1>
@ -280,9 +280,9 @@ see appendix B.
<!-- .LP -->
<function>XCreateFontCursor</function>
can generate
<function>BadAlloc</function>
<errorname>BadAlloc</errorname>
and
<function>BadValue</function>
<errorname>BadValue</errorname>
errors.
</para>
<para>
@ -331,7 +331,7 @@ Specifies the font for the source glyph.
<listitem>
<para>
Specifies the font for the mask glyph or
<function>None</function>.
<symbol>None</symbol>.
</para>
</listitem>
</varlistentry>
@ -388,12 +388,12 @@ except that the source and mask bitmaps are obtained from the specified
font glyphs.
The source_char must be a defined glyph in source_font,
or a
<function>BadValue</function>
<errorname>BadValue</errorname>
error results.
If mask_font is given,
mask_char must be a defined glyph in mask_font,
or a
<function>BadValue</function>
<errorname>BadValue</errorname>
error results.
The mask_font and character are optional.
The origins of the source_char and mask_char (if defined) glyphs are
@ -417,10 +417,10 @@ least significant byte.
<!-- .LP -->
<function>XCreateGlyphCursor</function>
can generate
<function>BadAlloc</function>,
<function>BadFont</function>,
<errorname>BadAlloc</errorname>,
<errorname>BadFont</errorname>,
and
<function>BadValue</function>
<errorname>BadValue</errorname>
errors.
</para>
<para>
@ -472,7 +472,7 @@ Specifies the shape of the source cursor.
<listitem>
<para>
Specifies the cursor's source bits to be displayed or
<function>None</function>.
<symbol>None</symbol>.
</para>
</listitem>
</varlistentry>
@ -529,14 +529,14 @@ function creates a cursor and returns the cursor ID associated with it.
The foreground and background <acronym>RGB</acronym> values must be specified using
foreground_color and background_color,
even if the X server only has a
<function>StaticGray</function>
<symbol>StaticGray</symbol>
or
<function>GrayScale</function>
<symbol>GrayScale</symbol>
screen.
The foreground color is used for the pixels set to 1 in the
source, and the background color is used for the pixels set to 0.
Both source and mask, if specified, must have depth one (or a
<function>BadMatch</function>
<errorname>BadMatch</errorname>
error results) but can have any root.
The mask argument defines the shape of the cursor.
The pixels set to 1 in the mask define which source pixels are displayed,
@ -545,11 +545,11 @@ If no mask is given,
all pixels of the source are displayed.
The mask, if present, must be the same size as the pixmap defined by the
source argument, or a
<function>BadMatch</function>
<errorname>BadMatch</errorname>
error results.
The hotspot must be a point within the source,
or a
<function>BadMatch</function>
<errorname>BadMatch</errorname>
error results.
</para>
<para>
@ -566,9 +566,9 @@ The X server might or might not make a copy of the pixmap.
<!-- .LP -->
<function>XCreatePixmapCursor</function>
can generate
<function>BadAlloc</function>
<errorname>BadAlloc</errorname>
and
<function>BadPixmap</function>
<errorname>BadPixmap</errorname>
errors.
</para>
<para>
@ -673,7 +673,7 @@ cannot support large ones.
<!-- .LP -->
<function>XQueryBestCursor</function>
can generate a
<function>BadDrawable</function>
<errorname>BadDrawable</errorname>
error.
</para>
<para>
@ -744,14 +744,14 @@ function changes the color of the specified cursor, and
if the cursor is being displayed on a screen,
the change is visible immediately.
The pixel members of the
<function>XColor</function>
<structname>XColor</structname>
structures are ignored; only the <acronym>RGB</acronym> values are used.
</para>
<para>
<!-- .LP -->
<function>XRecolorCursor</function>
can generate a
<function>BadCursor</function>
<errorname>BadCursor</errorname>
error.
</para>
<para>
@ -806,7 +806,7 @@ The specified cursor ID should not be referred to again.
<!-- .LP -->
<function>XFreeCursor</function>
can generate a
<function>BadCursor</function>
<errorname>BadCursor</errorname>
error.
<!-- .bp -->

File diff suppressed because it is too large Load diff

File diff suppressed because it is too large Load diff

File diff suppressed because it is too large Load diff

View file

@ -102,7 +102,7 @@ Specify the x and y coordinates(Xy.
If the specified window is mapped,
<function>XReparentWindow</function>
automatically performs an
<function>UnmapWindow</function>
<systemitem>UnmapWindow</systemitem>
request on it, removes it from its current position in the hierarchy,
and inserts it as the child of the specified parent.
The window is placed in the stacking order on top with respect to
@ -113,16 +113,16 @@ sibling windows.
After reparenting the specified window,
<function>XReparentWindow</function>
causes the X server to generate a
<function>ReparentNotify</function>
<symbol>ReparentNotify</symbol>
event.
The override_redirect member returned in this event is
set to the window's corresponding attribute.
Window manager clients usually should ignore this window if this member
is set to
<function>True</function>.
<symbol>True</symbol>.
Finally, if the specified window was originally mapped,
the X server automatically performs a
<function>MapWindow</function>
<systemitem>MapWindow</systemitem>
request on it.
</para>
<para>
@ -130,14 +130,14 @@ request on it.
The X server performs normal exposure processing on formerly obscured
windows.
The X server might not generate
<function>Expose</function>
<symbol>Expose</symbol>
events for regions from the initial
<function>UnmapWindow</function>
<systemitem>UnmapWindow</systemitem>
request that are immediately obscured by the final
<function>MapWindow</function>
<systemitem>MapWindow</systemitem>
request.
A
<function>BadMatch</function>
<errorname>BadMatch</errorname>
error results if:
</para>
<itemizedlist>
@ -156,14 +156,14 @@ specified window.
<listitem>
<para>
The new parent is
<function>InputOnly</function>,
<symbol>InputOnly</symbol>,
and the window is not.
</para>
</listitem>
<listitem>
<para>
The specified window has a
<function>ParentRelative</function>
<symbol>ParentRelative</symbol>
background, and the new parent window is not the same depth as the
specified window.
</para>
@ -173,9 +173,9 @@ specified window.
<!-- .LP -->
<function>XReparentWindow</function>
can generate
<function>BadMatch</function>
<errorname>BadMatch</errorname>
and
<function>BadWindow</function>
<errorname>BadWindow</errorname>
errors.
</para>
</sect1>
@ -254,9 +254,9 @@ Specifies the window (Wi.
<para>
Specifies the mode.
You can pass
<function>SetModeInsert</function>
<symbol>SetModeInsert</symbol>
or
<function>SetModeDelete</function>.
<symbol>SetModeDelete</symbol>.
</para>
</listitem>
</varlistentry>
@ -270,17 +270,17 @@ Depending on the specified mode,
either inserts or deletes the specified window from the client's save-set.
The specified window must have been created by some other client,
or a
<function>BadMatch</function>
<errorname>BadMatch</errorname>
error results.
</para>
<para>
<!-- .LP -->
<function>XChangeSaveSet</function>
can generate
<function>BadMatch</function>,
<function>BadValue</function>,
<errorname>BadMatch</errorname>,
<errorname>BadValue</errorname>,
and
<function>BadWindow</function>
<errorname>BadWindow</errorname>
errors.
</para>
<para>
@ -330,16 +330,16 @@ The
function adds the specified window to the client's save-set.
The specified window must have been created by some other client,
or a
<function>BadMatch</function>
<errorname>BadMatch</errorname>
error results.
</para>
<para>
<!-- .LP -->
<function>XAddToSaveSet</function>
can generate
<function>BadMatch</function>
<errorname>BadMatch</errorname>
and
<function>BadWindow</function>
<errorname>BadWindow</errorname>
errors.
</para>
<para>
@ -389,16 +389,16 @@ The
function removes the specified window from the client's save-set.
The specified window must have been created by some other client,
or a
<function>BadMatch</function>
<errorname>BadMatch</errorname>
error results.
</para>
<para>
<!-- .LP -->
<function>XRemoveFromSaveSet</function>
can generate
<function>BadMatch</function>
<errorname>BadMatch</errorname>
and
<function>BadWindow</function>
<errorname>BadWindow</errorname>
errors.
</para>
</sect1>
@ -496,20 +496,20 @@ or
<!-- .LP -->
If the specified colormap is not already an installed colormap,
the X server generates a
<function>ColormapNotify</function>
<symbol>ColormapNotify</symbol>
event on each window that has that colormap.
In addition, for every other colormap that is installed as
a result of a call to
<function>XInstallColormap</function>,
the X server generates a
<function>ColormapNotify</function>
<symbol>ColormapNotify</symbol>
event on each window that has that colormap.
</para>
<para>
<!-- .LP -->
<function>XInstallColormap</function>
can generate a
<function>BadColor</function>
<errorname>BadColor</errorname>
error.
</para>
<para>
@ -567,20 +567,20 @@ except that the required list must remain installed.
<!-- .LP -->
If the specified colormap becomes uninstalled,
the X server generates a
<function>ColormapNotify</function>
<symbol>ColormapNotify</symbol>
event on each window that has that colormap.
In addition, for every other colormap that is installed or uninstalled as a
result of a call to
<function>XUninstallColormap</function>,
the X server generates a
<function>ColormapNotify</function>
<symbol>ColormapNotify</symbol>
event on each window that has that colormap.
</para>
<para>
<!-- .LP -->
<function>XUninstallColormap</function>
can generate a
<function>BadColor</function>
<errorname>BadColor</errorname>
error.
</para>
<para>
@ -650,7 +650,7 @@ free it by using
<!-- .LP -->
<function>XListInstalledColormaps</function>
can generate a
<function>BadWindow</function>
<errorname>BadWindow</errorname>
error.
</para>
</sect1>
@ -740,7 +740,7 @@ The meaning of an error from this request is implementation-dependent.
<!-- .LP -->
<function>XSetFontPath</function>
can generate a
<function>BadValue</function>
<errorname>BadValue</errorname>
error.
</para>
<para>
@ -962,7 +962,7 @@ Specifies the connection to the X server.
<listitem>
<para>
Specifies any resource associated with the client that you want to destroy or
<function>AllTemporary</function>.
<symbol>AllTemporary</symbol>.
</para>
</listitem>
</varlistentry>
@ -979,19 +979,19 @@ that created the resource
if a valid resource is specified.
If the client has already terminated in
either
<function>RetainPermanent</function>
<symbol>RetainPermanent</symbol>
or
<function>RetainTemporary</function>
<symbol>RetainTemporary</symbol>
mode, all of the client's
resources are destroyed.
If
<function>AllTemporary</function>
<symbol>AllTemporary</symbol>
is specified, the resources of all clients that have terminated in
<function>RetainTemporary</function>
<symbol>RetainTemporary</symbol>
are destroyed (see section 2.5).
This permits implementation of window manager facilities that aid debugging.
A client can set its close-down mode to
<function>RetainTemporary</function>.
<symbol>RetainTemporary</symbol>.
If the client then crashes,
its windows would not be destroyed.
The programmer can then inspect the application's window tree
@ -1001,7 +1001,7 @@ and use the window manager to destroy the zombie windows.
<!-- .LP -->
<function>XKillClient</function>
can generate a
<function>BadValue</function>
<errorname>BadValue</errorname>
error.
</para>
</sect1>
@ -1072,10 +1072,10 @@ Specifies the interval, in seconds, between screen saver alterations.
<para>
Specifies how to enable screen blanking.
You can pass
<function>DontPreferBlanking</function>,
<function>PreferBlanking</function>,
<symbol>DontPreferBlanking</symbol>,
<symbol>PreferBlanking</symbol>,
or
<function>DefaultBlanking</function>.
<symbol>DefaultBlanking</symbol>.
</para>
</listitem>
</varlistentry>
@ -1087,10 +1087,10 @@ or
<para>
Specifies the screen save control values.
You can pass
<function>DontAllowExposures</function>,
<function>AllowExposures</function>,
<symbol>DontAllowExposures</symbol>,
<symbol>AllowExposures</symbol>,
or
<function>DefaultExposures</function>.
<symbol>DefaultExposures</symbol>.
</para>
</listitem>
</varlistentry>
@ -1104,7 +1104,7 @@ A timeout of 0 disables the screen saver
(but an activated screen saver is not deactivated),
and a timeout of \-1 restores the default.
Other negative values generate a
<function>BadValue</function>
<errorname>BadValue</errorname>
error.
If the timeout value is nonzero,
<function>XSetScreenSaver</function>
@ -1121,7 +1121,7 @@ if blanking is preferred and the hardware supports video blanking,
the screen simply goes blank.
Otherwise, if either exposures are allowed or the screen can be regenerated
without sending
<function>Expose</function>
<symbol>Expose</symbol>
events to clients,
the screen is tiled with the root window background tile randomly
re-origined each interval seconds.
@ -1132,7 +1132,7 @@ and all screen states are restored at the next
keyboard or pointer input or at the next call to
<function>XForceScreenSaver</function>
with mode
<function>ScreenSaverReset</function>.
<symbol>ScreenSaverReset</symbol>.
</para>
<para>
<!-- .LP -->
@ -1148,7 +1148,7 @@ periodically.
<!-- .LP -->
<function>XSetScreenSaver</function>
can generate a
<function>BadValue</function>
<errorname>BadValue</errorname>
error.
</para>
<para>
@ -1185,9 +1185,9 @@ Specifies the connection to the X server.
<para>
Specifies the mode that is to be applied.
You can pass
<function>ScreenSaverActive</function>
<symbol>ScreenSaverActive</symbol>
or
<function>ScreenSaverReset</function>.
<symbol>ScreenSaverReset</symbol>.
</para>
</listitem>
</varlistentry>
@ -1197,13 +1197,13 @@ or
<!-- .LP -->
<!-- .eM -->
If the specified mode is
<function>ScreenSaverActive</function>
<symbol>ScreenSaverActive</symbol>
and the screen saver currently is deactivated,
<function>XForceScreenSaver</function>
activates the screen saver even if the screen saver had been disabled
with a timeout of zero.
If the specified mode is
<function>ScreenSaverReset</function>
<symbol>ScreenSaverReset</symbol>
and the screen saver currently is enabled,
<function>XForceScreenSaver</function>
deactivates the screen saver if it was activated,
@ -1214,7 +1214,7 @@ and the activation timer is reset to its initial state
<!-- .LP -->
<function>XForceScreenSaver</function>
can generate a
<function>BadValue</function>
<errorname>BadValue</errorname>
error.
</para>
<para>
@ -1328,10 +1328,10 @@ Returns the interval between screen saver invocations.
<listitem>
<para>
Returns the current screen blanking preference
(<function>DontPreferBlanking</function>,
<function>PreferBlanking</function>,
(<symbol>DontPreferBlanking</symbol>,
<symbol>PreferBlanking</symbol>,
or
<function>DefaultBlanking</function>).
<symbol>DefaultBlanking</symbol>).
</para>
</listitem>
</varlistentry>
@ -1342,10 +1342,10 @@ or
<listitem>
<para>
Returns the current screen save control value
(<function>DontAllowExposures</function>,
<function>AllowExposures</function>,
(<symbol>DontAllowExposures</symbol>,
<symbol>AllowExposures</symbol>,
or
<function>DefaultExposures</function>).
<symbol>DefaultExposures</symbol>).
</para>
</listitem>
</varlistentry>
@ -1405,11 +1405,11 @@ The host the window system is running on.
<listitem>
<para>
On <acronym>POSIX</acronym>-conformant systems, each host listed in the
<function>/etc/X?.hosts</function>
<filename>/etc/X<replaceable>?</replaceable>.hosts</filename>
file.
The ? indicates the number of the
display.
<indexterm><primary>Files</primary><secondary>/etc/X?.hosts</secondary></indexterm>
<indexterm><primary>Files</primary><secondary><filename>/etc/X<replaceable>?</replaceable>.hosts</filename></secondary></indexterm>
This file should consist of host names separated by newlines.
DECnet nodes must terminate in :: to distinguish them from Internet hosts.
</para>
@ -1442,7 +1442,7 @@ see ``X Window System Protocol.''
Xlib provides functions that you can use to add, get, or remove hosts
from the access control list.
All the host access control functions use the
<function>XHostAddress</function>
<structname>XHostAddress</structname>
structure, which contains:
</para>
<para>
@ -1464,12 +1464,12 @@ typedef struct {
<!-- .eM -->
The family member specifies which protocol address family to use
(for example, <acronym>TCP</acronym>/<acronym>IP</acronym> or DECnet) and can be
<function>FamilyInternet</function>,
<function>FamilyInternet6</function>,
<function>FamilyServerInterpreted</function>,
<function>FamilyDECnet</function>,
<symbol>FamilyInternet</symbol>,
<symbol>FamilyInternet6</symbol>,
<symbol>FamilyServerInterpreted</symbol>,
<symbol>FamilyDECnet</symbol>,
or
<function>FamilyChaos</function>.
<symbol>FamilyChaos</symbol>.
The length member specifies the length of the address in bytes.
The address member specifies a pointer to the address.
</para>
@ -1494,7 +1494,7 @@ and the area in the most significant 6 bits of the byte.
<!-- .LP -->
For the ServerInterpreted family, the length is ignored and the address
member is a pointer to a
<function>XServerInterpretedAddress</function>
<structname>XServerInterpretedAddress</structname>
structure, which contains:
</para>
<para>
@ -1566,16 +1566,16 @@ The
<function>XAddHost</function>
function adds the specified host to the access control list for that display.
The server must be on the same host as the client issuing the command, or a
<function>BadAccess</function>
<errorname>BadAccess</errorname>
error results.
</para>
<para>
<!-- .LP -->
<function>XAddHost</function>
can generate
<function>BadAccess</function>
<errorname>BadAccess</errorname>
and
<function>BadValue</function>
<errorname>BadValue</errorname>
errors.
</para>
<para>
@ -1635,16 +1635,16 @@ The
<function>XAddHosts</function>
function adds each specified host to the access control list for that display.
The server must be on the same host as the client issuing the command, or a
<function>BadAccess</function>
<errorname>BadAccess</errorname>
error results.
</para>
<para>
<!-- .LP -->
<function>XAddHosts</function>
can generate
<function>BadAccess</function>
<errorname>BadAccess</errorname>
and
<function>BadValue</function>
<errorname>BadValue</errorname>
errors.
</para>
<para>
@ -1758,7 +1758,7 @@ The
function removes the specified host from the access control list
for that display.
The server must be on the same host as the client process, or a
<function>BadAccess</function>
<errorname>BadAccess</errorname>
error results.
If you remove your machine from the access list,
you can no longer connect to that server,
@ -1768,9 +1768,9 @@ and this operation cannot be reversed unless you reset the server.
<!-- .LP -->
<function>XRemoveHost</function>
can generate
<function>BadAccess</function>
<errorname>BadAccess</errorname>
and
<function>BadValue</function>
<errorname>BadValue</errorname>
errors.
</para>
<para>
@ -1831,7 +1831,7 @@ The
function removes each specified host from the access control list for that
display.
The X server must be on the same host as the client process, or a
<function>BadAccess</function>
<errorname>BadAccess</errorname>
error results.
If you remove your machine from the access list,
you can no longer connect to that server,
@ -1841,9 +1841,9 @@ and this operation cannot be reversed unless you reset the server.
<!-- .LP -->
<function>XRemoveHosts</function>
can generate
<function>BadAccess</function>
<errorname>BadAccess</errorname>
and
<function>BadValue</function>
<errorname>BadValue</errorname>
errors.
</para>
</sect2>
@ -1898,9 +1898,9 @@ Specifies the connection to the X server.
<para>
Specifies the mode.
You can pass
<function>EnableAccess</function>
<symbol>EnableAccess</symbol>
or
<function>DisableAccess</function>.
<symbol>DisableAccess</symbol>.
</para>
</listitem>
</varlistentry>
@ -1918,9 +1918,9 @@ at each connection setup.
<!-- .LP -->
<function>XSetAccessControl</function>
can generate
<function>BadAccess</function>
<errorname>BadAccess</errorname>
and
<function>BadValue</function>
<errorname>BadValue</errorname>
errors.
</para>
<para>
@ -1961,7 +1961,7 @@ function enables the use of the access control list at each connection setup.
<!-- .LP -->
<function>XEnableAccessControl</function>
can generate a
<function>BadAccess</function>
<errorname>BadAccess</errorname>
error.
</para>
<para>
@ -2002,7 +2002,7 @@ function disables the use of the access control list at each connection setup.
<!-- .LP -->
<function>XDisableAccessControl</function>
can generate a
<function>BadAccess</function>
<errorname>BadAccess</errorname>
error.
<!-- .bp -->

File diff suppressed because it is too large Load diff

View file

@ -33,7 +33,7 @@ event.
There are two ways to select the events you want reported to your client
application.
One way is to set the event_mask member of the
<function>XSetWindowAttributes</function>
<structname>XSetWindowAttributes</structname>
structure when you call
<function>XCreateWindow</function>
and
@ -118,32 +118,32 @@ to all interested clients.
<listitem>
<para>
Only one client at a time can select
<function>CirculateRequest</function>,
<function>ConfigureRequest</function>,
<symbol>CirculateRequest</symbol>,
<symbol>ConfigureRequest</symbol>,
or
<function>MapRequest</function>
<symbol>MapRequest</symbol>
events, which are associated with
the event mask
<function>SubstructureRedirectMask</function>.
<symbol>SubstructureRedirectMask</symbol>.
</para>
</listitem>
<listitem>
<para>
Only one client at a time can select
a
<function>ResizeRequest</function>
<symbol>ResizeRequest</symbol>
event, which is associated with
the event mask
<function>ResizeRedirectMask</function>.
<symbol>ResizeRedirectMask</symbol>.
</para>
</listitem>
<listitem>
<para>
Only one client at a time can select a
<function>ButtonPress</function>
<symbol>ButtonPress</symbol>
event, which is associated with
the event mask
<function>ButtonPressMask</function>.
<symbol>ButtonPressMask</symbol>.
</para>
</listitem>
</itemizedlist>
@ -155,7 +155,7 @@ The server reports the event to all interested clients.
<!-- .LP -->
<function>XSelectInput</function>
can generate a
<function>BadWindow</function>
<errorname>BadWindow</errorname>
error.
</para>
</sect1>
@ -277,11 +277,11 @@ event queue.
<para>
<!-- .LP -->
Finally, if you passed
<function>False</function>,
<symbol>False</symbol>,
<function>XSync</function>
does not discard the events in the queue.
If you passed
<function>True</function>,
<symbol>True</symbol>,
<function>XSync</function>
discards all events in the queue,
including those events that were on the queue before
@ -336,10 +336,10 @@ Specifies the connection to the X server.
<para>
Specifies the mode.
You can pass
<function>QueuedAlready</function>,
<function>QueuedAfterFlush</function>,
<symbol>QueuedAlready</symbol>,
<symbol>QueuedAfterFlush</symbol>,
or
<function>QueuedAfterReading</function>.
<symbol>QueuedAfterReading</symbol>.
</para>
</listitem>
</varlistentry>
@ -349,12 +349,12 @@ or
<!-- .LP -->
<!-- .eM -->
If mode is
<function>QueuedAlready</function>,
<symbol>QueuedAlready</symbol>,
<function>XEventsQueued</function>
returns the number of events
already in the event queue (and never performs a system call).
If mode is
<function>QueuedAfterFlush</function>,
<symbol>QueuedAfterFlush</symbol>,
<function>XEventsQueued</function>
returns the number of events already in the queue if the number is nonzero.
If there are no events in the queue,
@ -363,7 +363,7 @@ flushes the output buffer,
attempts to read more events out of the application's connection,
and returns the number read.
If mode is
<function>QueuedAfterReading</function>,
<symbol>QueuedAfterReading</symbol>,
<function>XEventsQueued</function>
returns the number of events already in the queue if the number is nonzero.
If there are no events in the queue,
@ -378,12 +378,12 @@ always returns immediately without I/O if there are events already in the
queue.
<function>XEventsQueued</function>
with mode
<function>QueuedAfterFlush</function>
<symbol>QueuedAfterFlush</symbol>
is identical in behavior to
<function>XPending</function>.
<function>XEventsQueued</function>
with mode
<function>QueuedAlready</function>
<symbol>QueuedAlready</symbol>
is identical to the
<function>XQLength</function>
function.
@ -426,7 +426,7 @@ X server but have not been removed from the event queue.
is identical to
<function>XEventsQueued</function>
with the mode
<function>QueuedAfterFlush</function>
<symbol>QueuedAfterFlush</symbol>
specified.
</para>
</sect1>
@ -506,7 +506,7 @@ Returns the next event in the queue.
The
<function>XNextEvent</function>
function copies the first event from the event queue into the specified
<function>XEvent</function>
<structname>XEvent</structname>
structure and then removes it from the queue.
If the event queue is empty,
<function>XNextEvent</function>
@ -561,7 +561,7 @@ If the queue is empty,
<function>XPeekEvent</function>
flushes the output buffer and blocks until an event is received.
It then copies the event into the client-supplied
<function>XEvent</function>
<structname>XEvent</structname>
structure without removing it from the event queue.
</para>
</sect2>
@ -591,7 +591,7 @@ The predicate procedure and its associated arguments are:
<!-- .sM -->
<funcsynopsis>
<funcprototype>
<funcdef><function>Bool</function></funcdef>
<funcdef><type>Bool</type></funcdef>
<paramdef>Display<parameter> *display</parameter></paramdef>
<paramdef>XEvent<parameter> *event</parameter></paramdef>
<paramdef>XPointer<parameter> arg</parameter></paramdef>
@ -616,7 +616,7 @@ Specifies the connection to the X server.
<listitem>
<para>
Specifies the
<function>XEvent</function>
<structname>XEvent</structname>
structure.
</para>
</listitem>
@ -644,9 +644,9 @@ function.
The predicate procedure is called once for each
event in the queue until it finds a match.
After finding a match, the predicate procedure must return
<function>True</function>.
<symbol>True</symbol>.
If it did not find a match, it must return
<function>False</function>.
<symbol>False</symbol>.
</para>
<para>
<!-- .LP -->
@ -717,7 +717,7 @@ The
<function>XIfEvent</function>
function completes only when the specified predicate
procedure returns
<function>True</function>
<symbol>True</symbol>
for an event,
which indicates an event in the queue matches.
<function>XIfEvent</function>
@ -725,7 +725,7 @@ flushes the output buffer if it blocks waiting for additional events.
<function>XIfEvent</function>
removes the matching event from the queue
and copies the structure into the client-supplied
<function>XEvent</function>
<structname>XEvent</structname>
structure.
</para>
<para>
@ -795,14 +795,14 @@ Specifies the user-supplied argument that will be passed to the predicate proced
When the predicate procedure finds a match,
<function>XCheckIfEvent</function>
copies the matched event into the client-supplied
<function>XEvent</function>
<structname>XEvent</structname>
structure and returns
<function>True</function>.
<symbol>True</symbol>.
(This event is removed from the queue.)
If the predicate procedure finds no match,
<function>XCheckIfEvent</function>
returns
<function>False</function>,
<symbol>False</symbol>,
and the output buffer will have been flushed.
All earlier events stored in the queue are not discarded.
</para>
@ -875,12 +875,12 @@ The
<function>XPeekIfEvent</function>
function returns only when the specified predicate
procedure returns
<function>True</function>
<symbol>True</symbol>
for an event.
After the predicate procedure finds a match,
<function>XPeekIfEvent</function>
copies the matched event into the client-supplied
<function>XEvent</function>
<structname>XEvent</structname>
structure without removing the event from the queue.
<function>XPeekIfEvent</function>
flushes the output buffer if it blocks waiting for additional events.
@ -967,7 +967,7 @@ window and event mask.
When it finds a match,
<function>XWindowEvent</function>
removes that event from the queue and copies it into the specified
<function>XEvent</function>
<structname>XEvent</structname>
structure.
The other events stored in the queue are not discarded.
If a matching event is not in the queue,
@ -984,7 +984,7 @@ use
This function is similar to
<function>XWindowEvent</function>
except that it never blocks and it returns a
<function>Bool</function>
<type>Bool</type>
indicating if the event was returned.
<indexterm significance="preferred"><primary>XCheckWindowEvent</primary></indexterm>
<!-- .sM -->
@ -1053,14 +1053,14 @@ and event mask.
If it finds a match,
<function>XCheckWindowEvent</function>
removes that event, copies it into the specified
<function>XEvent</function>
<structname>XEvent</structname>
structure, and returns
<function>True</function>.
<symbol>True</symbol>.
The other events stored in the queue are not discarded.
If the event you requested is not available,
<function>XCheckWindowEvent</function>
returns
<function>False</function>,
<symbol>False</symbol>,
and the output buffer will have been flushed.
</para>
<para>
@ -1122,7 +1122,7 @@ specified mask.
When it finds a match,
<function>XMaskEvent</function>
removes that event and copies it into the specified
<function>XEvent</function>
<structname>XEvent</structname>
structure.
The other events stored in the queue are not discarded.
If the event you requested is not in the queue,
@ -1137,7 +1137,7 @@ To return and remove the next event that matches an event mask (if any), use
This function is similar to
<function>XMaskEvent</function>
except that it never blocks and it returns a
<function>Bool</function>
<type>Bool</type>
indicating if the event was returned.
<indexterm significance="preferred"><primary>XCheckMaskEvent</primary></indexterm>
<!-- .sM -->
@ -1193,14 +1193,14 @@ server connection for the first event that matches the specified mask.
If it finds a match,
<function>XCheckMaskEvent</function>
removes that event, copies it into the specified
<function>XEvent</function>
<structname>XEvent</structname>
structure, and returns
<function>True</function>.
<symbol>True</symbol>.
The other events stored in the queue are not discarded.
If the event you requested is not available,
<function>XCheckMaskEvent</function>
returns
<function>False</function>,
<symbol>False</symbol>,
and the output buffer will have been flushed.
</para>
<para>
@ -1263,14 +1263,14 @@ on the server connection for the first event that matches the specified type.
If it finds a match,
<function>XCheckTypedEvent</function>
removes that event, copies it into the specified
<function>XEvent</function>
<structname>XEvent</structname>
structure, and returns
<function>True</function>.
<symbol>True</symbol>.
The other events in the queue are not discarded.
If the event is not available,
<function>XCheckTypedEvent</function>
returns
<function>False</function>,
<symbol>False</symbol>,
and the output buffer will have been flushed.
</para>
<para>
@ -1346,14 +1346,14 @@ type and window.
If it finds a match,
<function>XCheckTypedWindowEvent</function>
removes the event from the queue, copies it into the specified
<function>XEvent</function>
<structname>XEvent</structname>
structure, and returns
<function>True</function>.
<symbol>True</symbol>.
The other events in the queue are not discarded.
If the event is not available,
<function>XCheckTypedWindowEvent</function>
returns
<function>False</function>,
<symbol>False</symbol>,
and the output buffer will have been flushed.
</para>
</sect2>
@ -1427,7 +1427,7 @@ This function is often used in selection processing.
For example, the owner of a selection should use
<function>XSendEvent</function>
to send a
<function>SelectionNotify</function>
<symbol>SelectionNotify</symbol>
event to a requestor when a selection has been converted
and stored as a property.
<indexterm significance="preferred"><primary>XSendEvent</primary></indexterm>
@ -1461,9 +1461,9 @@ Specifies the connection to the X server.
<listitem>
<para>
Specifies the window the event is to be sent to, or
<function>PointerWindow</function>,
<symbol>PointerWindow</symbol>,
or
<function>InputFocus</function>.
<symbol>InputFocus</symbol>.
</para>
</listitem>
</varlistentry>
@ -1516,14 +1516,14 @@ This function uses the w argument to identify the destination window as follows:
<listitem>
<para>
If w is
<function>PointerWindow</function>,
<symbol>PointerWindow</symbol>,
the destination window is the window that contains the pointer.
</para>
</listitem>
<listitem>
<para>
If w is
<function>InputFocus</function>
<symbol>InputFocus</symbol>
and if the focus window contains the pointer,
the destination window is the window that contains the pointer;
otherwise, the destination window is the focus window.
@ -1548,7 +1548,7 @@ no event is sent.
<listitem>
<para>
If propagate is
<function>False</function>,
<symbol>False</symbol>,
the event is sent to every client selecting on destination any of the event
types in the event_mask argument.
</para>
@ -1556,7 +1556,7 @@ types in the event_mask argument.
<listitem>
<para>
If propagate is
<function>True</function>
<symbol>True</symbol>
and no clients have selected on destination any of
the event types in event-mask, the destination is replaced with the
closest ancestor of destination for which some client has selected a
@ -1564,7 +1564,7 @@ type in event-mask and for which no intervening window has that type in its
do-not-propagate-mask.
If no such window exists or if the window is
an ancestor of the focus window and
<function>InputFocus</function>
<symbol>InputFocus</symbol>
was originally specified
as the destination, the event is not sent to any clients.
Otherwise, the event is reported to every client selecting on the final
@ -1575,15 +1575,15 @@ destination any of the types specified in event_mask.
<para>
<!-- .LP -->
The event in the
<function>XEvent</function>
<structname>XEvent</structname>
structure must be one of the core events or one of the events
defined by an extension (or a
<function>BadValue</function>
<errorname>BadValue</errorname>
error results) so that the X server can correctly byte-swap
the contents as necessary.
The contents of the event are
otherwise unaltered and unchecked by the X server except to force send_event to
<function>True</function>
<symbol>True</symbol>
in the forwarded event and to set the serial number in the event correctly;
therefore these fields
and the display field are ignored by
@ -1599,9 +1599,9 @@ and returns nonzero otherwise.
<!-- .LP -->
<function>XSendEvent</function>
can generate
<function>BadValue</function>
<errorname>BadValue</errorname>
and
<function>BadWindow</function>
<errorname>BadWindow</errorname>
errors.
</para>
</sect1>
@ -1632,7 +1632,7 @@ use
<!-- .sM -->
<funcsynopsis>
<funcprototype>
<funcdef>unsigned <function>long</function></funcdef>
<funcdef>unsigned <type>long</type></funcdef>
<paramdef>Display<parameter> *display</parameter></paramdef>
</funcprototype>
</funcsynopsis>
@ -1655,7 +1655,7 @@ Specifies the connection to the X server.
<!-- .eM -->
The server may retain the recent history of the pointer motion
and do so to a finer granularity than is reported by
<function>MotionNotify</function>
<symbol>MotionNotify</symbol>
events.
The
<function>XGetMotionEvents</function>
@ -1719,7 +1719,7 @@ Specifies the window.
Specify the time interval in which the events are returned from the motion
history buffer.
You can pass a timestamp or
<function>CurrentTime</function>.
<symbol>CurrentTime</symbol>.
</para>
</listitem>
</varlistentry>
@ -1751,7 +1751,7 @@ no events are returned;
<function>XGetMotionEvents</function>
returns NULL.
If the stop time is in the future, it is equivalent to specifying
<function>CurrentTime</function>.
<symbol>CurrentTime</symbol>.
The return type for this function is a structure defined as follows:
</para>
<para>
@ -1781,7 +1781,7 @@ To free the data returned from this call, use
<!-- .LP -->
<function>XGetMotionEvents</function>
can generate a
<function>BadWindow</function>
<errorname>BadWindow</errorname>
error.
</para>
</sect1>
@ -1811,7 +1811,7 @@ synchronization is enabled.
<indexterm><primary>_Xdebug</primary></indexterm>
On <acronym>POSIX</acronym>-conformant systems,
there is also a global variable
<function>_Xdebug</function>
<varname>_Xdebug</varname>
that, if set to nonzero before starting a program under a debugger, will force
synchronous library behavior.
</para>
@ -1826,7 +1826,7 @@ sets which function is to be called.
<!-- .sM -->
<funcsynopsis>
<funcprototype>
<funcdef><function>int</function></funcdef>
<funcdef><type>int</type></funcdef>
<paramdef>Display<parameter> *display</parameter></paramdef>
<paramdef>int<parameter> (*procedure)()</parameter></paramdef>
</funcprototype>
@ -1871,7 +1871,7 @@ To enable or disable synchronization, use
<!-- .sM -->
<funcsynopsis>
<funcprototype>
<funcdef><function>int</function></funcdef>
<funcdef><type>int</type></funcdef>
<paramdef>Display<parameter> *display</parameter></paramdef>
<paramdef>Bool<parameter> onoff</parameter></paramdef>
</funcprototype>
@ -1909,11 +1909,11 @@ The
function returns
the previous after function.
If onoff is
<function>True</function>,
<symbol>True</symbol>,
<function>XSynchronize</function>
turns on synchronous behavior.
If onoff is
<function>False</function>,
<symbol>False</symbol>,
<function>XSynchronize</function>
turns off synchronous behavior.
</para>
@ -1971,16 +1971,16 @@ Specifies the program's supplied error handler.
Xlib generally calls the program's
supplied error handler whenever an error is received.
It is not called on
<function>BadName</function>
<errorname>BadName</errorname>
errors from
<function>OpenFont</function>,
<function>LookupColor</function>,
<systemitem>OpenFont</systemitem>,
<systemitem>LookupColor</systemitem>,
or
<function>AllocNamedColor</function>
<systemitem>AllocNamedColor</systemitem>
protocol requests or on
<function>BadFont</function>
<errorname>BadFont</errorname>
errors from a
<function>QueryFont</function>
<systemitem>QueryFont</systemitem>
protocol request.
These errors generally are reflected back to the program through the
procedural interface.
@ -1995,7 +1995,7 @@ The previous error handler is returned.
<para>
<!-- .LP -->
The
<function>XErrorEvent</function>
<structname>XErrorEvent</structname>
structure contains:
<indexterm><primary>Debugging</primary><secondary>error event</secondary></indexterm>
</para>
@ -2057,7 +2057,7 @@ chapter:
</thead>
<tbody>
<row>
<entry><function>BadAccess</function></entry>
<entry><errorname>BadAccess</errorname></entry>
<entry>A client attempts to grab a key/button combination already grabbed
by another client.</entry>
</row>
@ -2081,57 +2081,57 @@ chapter:
has already selected.</entry>
</row>
<row>
<entry><function>BadAlloc</function></entry>
<entry><errorname>BadAlloc</errorname></entry>
<entry>The server fails to allocate the requested resource.
Note that the explicit listing of
<function>BadAlloc</function>
<errorname>BadAlloc</errorname>
errors in requests only covers allocation errors at a very coarse level
and is not intended to (nor can it in practice hope to) cover all cases of
a server running out of allocation space in the middle of service.
The semantics when a server runs out of allocation space are left unspecified,
but a server may generate a
<function>BadAlloc</function>
<errorname>BadAlloc</errorname>
error on any request for this reason,
and clients should be prepared to receive such errors and handle or discard
them.</entry>
</row>
<row>
<entry><function>BadAtom</function></entry>
<entry><errorname>BadAtom</errorname></entry>
<entry>A value for an atom argument does not name a defined atom.</entry>
</row>
<row>
<entry><function>BadColor</function></entry>
<entry><errorname>BadColor</errorname></entry>
<entry>A value for a colormap argument does not name a defined colormap.</entry>
</row>
<row>
<entry><function>BadCursor</function></entry>
<entry><errorname>BadCursor</errorname></entry>
<entry>A value for a cursor argument does not name a defined cursor.</entry>
</row>
<row>
<entry><function>BadDrawable</function></entry>
<entry><errorname>BadDrawable</errorname></entry>
<entry>A value for a drawable argument does not name a defined window or pixmap.</entry>
</row>
<row>
<entry><function>BadFont</function></entry>
<entry><errorname>BadFont</errorname></entry>
<entry>A value for a font argument does not name a defined font (or, in some cases,
<function>GContext</function>).</entry>
<type>GContext</type>).</entry>
</row>
<row>
<entry><function>BadGC</function></entry>
<entry><errorname>BadGC</errorname></entry>
<entry>A value for a
<function>GContext</function>
<type>GContext</type>
argument does not name a defined
<function>GContext</function>.</entry>
<type>GContext</type>.</entry>
</row>
<row>
<entry><function>BadIDChoice</function></entry>
<entry><errorname>BadIDChoice</errorname></entry>
<entry>The value chosen for a resource identifier either is not included in the
range assigned to the client or is already in use.
Under normal circumstances,
this cannot occur and should be considered a server or Xlib error.</entry>
</row>
<row>
<entry><function>BadImplementation</function></entry>
<entry><errorname>BadImplementation</errorname></entry>
<entry>The server does not implement some aspect of the request.
A server that generates this error for a core request is deficient.
As such, this error is not listed for any of the requests,
@ -2139,7 +2139,7 @@ chapter:
and handle or discard them.</entry>
</row>
<row>
<entry><function>BadLength</function></entry>
<entry><errorname>BadLength</errorname></entry>
<entry>The length of a request is shorter or longer than that required to
contain the arguments.
This is an internal Xlib or server error.</entry>
@ -2150,13 +2150,13 @@ chapter:
The length of a request exceeds the maximum length accepted by the server.</entry>
</row>
<row>
<entry><function>BadMatch</function></entry>
<entry><errorname>BadMatch</errorname></entry>
<entry>In a graphics request,
the root and depth of the graphics context do not match those of the drawable.</entry>
</row>
<row>
<entry></entry>
<entry>An <function>InputOnly</function> window is used as a drawable.</entry>
<entry>An <symbol>InputOnly</symbol> window is used as a drawable.</entry>
</row>
<row>
<entry></entry>
@ -2166,24 +2166,24 @@ chapter:
</row>
<row>
<entry></entry>
<entry>An <function>InputOnly</function>
<entry>An <symbol>InputOnly</symbol>
window lacks this attribute.</entry>
</row>
<row>
<entry><function>BadName</function></entry>
<entry><errorname>BadName</errorname></entry>
<entry>A font or color of the specified name does not exist.</entry>
</row>
<row>
<entry><function>BadPixmap</function></entry>
<entry><errorname>BadPixmap</errorname></entry>
<entry>A value for a pixmap argument does not name a defined pixmap.</entry>
</row>
<row>
<entry><function>BadRequest</function></entry>
<entry><errorname>BadRequest</errorname></entry>
<entry>The major or minor opcode does not specify a valid request.
This usually is an Xlib or server error.</entry>
</row>
<row>
<entry><function>BadValue</function></entry>
<entry><errorname>BadValue</errorname></entry>
<entry>Some numeric value falls outside of the range of values accepted
by the request.
Unless a specific range is specified for an argument,
@ -2192,7 +2192,7 @@ chapter:
this error (due to the encoding).</entry>
</row>
<row>
<entry><function>BadWindow</function></entry>
<entry><errorname>BadWindow</errorname></entry>
<entry>A value for a window argument does not name a defined window.</entry>
</row>
</tbody>
@ -2212,15 +2212,15 @@ chapter:
<note>
<para>
The
<function>BadAtom</function>,
<function>BadColor</function>,
<function>BadCursor</function>,
<function>BadDrawable</function>,
<function>BadFont</function>,
<function>BadGC</function>,
<function>BadPixmap</function>,
<errorname>BadAtom</errorname>,
<errorname>BadColor</errorname>,
<errorname>BadCursor</errorname>,
<errorname>BadDrawable</errorname>,
<errorname>BadFont</errorname>,
<errorname>BadGC</errorname>,
<errorname>BadPixmap</errorname>,
and
<function>BadWindow</function>
<errorname>BadWindow</errorname>
errors are also used when the argument type is extended by a set of
fixed alternatives.
</para>
@ -2497,7 +2497,7 @@ To handle fatal I/O errors, use
<!-- .sM -->
<funcsynopsis>
<funcprototype>
<funcdef><function>int</function></funcdef>
<funcdef><type>int</type></funcdef>
<paramdef>int(*handler)(Display<parameter> *)</parameter></paramdef>
</funcprototype>
</funcsynopsis>

File diff suppressed because it is too large Load diff

File diff suppressed because it is too large Load diff

File diff suppressed because it is too large Load diff

View file

@ -337,7 +337,7 @@ in many of the resource manager functions.
Simple comparisons can be performed rather than string comparisons.
The shorthand name for a string is called a quark and is the
type
<function>XrmQuark</function>.
<type>XrmQuark</type>.
On some occasions,
you may want to allocate a quark that has no string equivalent.
</para>
@ -368,7 +368,7 @@ is known to the resource manager.
<!-- .LP -->
<!-- .sp -->
Each name, class, and representation type is typedef'd as an
<function>XrmQuark</function>.
<type>XrmQuark</type>.
</para>
<para>
<!-- .LP -->
@ -567,7 +567,7 @@ the conversion is implementation-dependent.
<para>
<!-- .LP -->
A binding list is a list of type
<function>XrmBindingList</function>
<type>XrmBindingList</type>
and indicates if components of name or class lists are bound tightly or loosely
(that is, if wildcarding of intermediate components is specified).
</para>
@ -579,9 +579,9 @@ typedef enum {XrmBindTightly, XrmBindLoosely} XrmBinding, *XrmBindingList;
</para>
<para>
<!-- .LP -->
<function>XrmBindTightly</function>
<constant>XrmBindTightly</constant>
indicates that a period separates the components, and
<function>XrmBindLoosely</function>
<constant>XrmBindLoosely</constant>
indicates that an asterisk separates the components.
</para>
<para>
@ -668,9 +668,9 @@ bindings: loose tight loose
<!-- .LP -->
<indexterm significance="preferred"><primary>XrmDatabase</primary></indexterm>
A resource database is an opaque type,
<function>XrmDatabase</function>.
<type>XrmDatabase</type>.
Each database value is stored in an
<function>XrmValue</function>
<type>XrmValue</type>
structure.
This structure consists of a size, an address, and a representation type.
The size is specified in bytes.
@ -678,7 +678,7 @@ The representation type is a way for you to store data tagged by some
application-defined type (for example, the strings ``font'' or ``color'').
It has nothing to do with the C data type or with its class.
The
<function>XrmValue</function>
<type>XrmValue</type>
structure is defined as:
</para>
<para>
@ -1163,7 +1163,7 @@ If the same specifier is used for an entry in both the file and
the database,
the entry in the file will replace the entry in the database
if override is
<function>True</function>;
<symbol>True</symbol>;
otherwise, the entry in the file is discarded.
The file is parsed in the current locale.
If the file cannot be read,
@ -1235,7 +1235,7 @@ function merges the contents of one database into another.
If the same specifier is used for an entry in both databases,
the entry in the source_db will replace the entry in the target_db
if override is
<function>True</function>;
<symbol>True</symbol>;
otherwise, the entry in source_db is discarded.
If target_db contains NULL,
<function>XrmCombineDatabase</function>
@ -1293,7 +1293,7 @@ Calling the
function is equivalent to calling the
<function>XrmCombineDatabase</function>
function with an override argument of
<function>True</function>.
<symbol>True</symbol>.
</para>
</sect1>
<sect1 id="Looking_Up_Resources">
@ -1477,9 +1477,9 @@ If a resource was found, both
and
<function>XrmQGetResource</function>
return
<function>True</function>;
<symbol>True</symbol>;
otherwise, they return
<function>False</function>.
<symbol>False</symbol>.
</para>
<para>
<!-- .LP -->
@ -1586,9 +1586,9 @@ for determining precedence.
If list_return was large enough for the search list,
<function>XrmQGetSearchList</function>
returns
<function>True</function>;
<symbol>True</symbol>;
otherwise, it returns
<function>False</function>.
<symbol>False</symbol>.
</para>
<para>
<!-- .LP -->
@ -1688,10 +1688,10 @@ that is fully identified by the specified name and class.
The search stops with the first match.
<function>XrmQGetSearchResource</function>
returns
<function>True</function>
<symbol>True</symbol>
if the resource was found;
otherwise, it returns
<function>False</function>.
<symbol>False</symbol>.
</para>
<para>
<!-- .LP -->
@ -2015,7 +2015,7 @@ If database contains NULL,
creates a new database and returns a pointer to it.
<function>XrmQPutStringResource</function>
is a convenience routine that constructs an
<function>XrmValue</function>
<type>XrmValue</type>
for the value string (by calling
<function>strlen</function>
to compute the size) and
@ -2077,7 +2077,7 @@ the database that results from using a string
with incorrect syntax is implementation-dependent.
The string is parsed in the locale of the database.
If the
<function>ResourceName</function>
<replaceable>ResourceName</replaceable>
is not in the Host Portable Character Encoding,
the result is implementation-dependent.
Note that comment lines are not stored.
@ -2185,20 +2185,20 @@ function calls the specified procedure for each resource in the database
that would match some completion of the given name/class resource prefix.
The order in which resources are found is implementation-dependent.
If mode is
<function>XrmEnumOneLevel</function>,
<symbol>XrmEnumOneLevel</symbol>,
a resource must match the given name/class prefix with
just a single name and class appended. If mode is
<function>XrmEnumAllLevels</function>,
<symbol>XrmEnumAllLevels</symbol>,
the resource must match the given name/class prefix with one or more names and
classes appended.
If the procedure returns
<function>True</function>,
<symbol>True</symbol>,
the enumeration terminates and the function returns
<function>True</function>.
<symbol>True</symbol>.
If the procedure always returns
<function>False</function>,
<symbol>False</symbol>,
all matching resources are enumerated and the function returns
<function>False</function>.
<symbol>False</symbol>.
</para>
<para>
<!-- .LP -->
@ -2223,7 +2223,7 @@ The procedure is called with the following arguments:
<para>
<!-- .LP -->
The bindings and quarks lists are terminated by
<function>NULLQUARK</function>.
<symbol>NULLQUARK</symbol>.
Note that pointers
to the database and type are passed, but these values should not be modified.
</para>
@ -2271,14 +2271,14 @@ typedef enum {
<!-- .LP -->
<!-- .eM -->
Note that
<function>XrmoptionSkipArg</function>
<constant>XrmoptionSkipArg</constant>
is equivalent to
<function>XrmoptionSkipNArgs</function>
<constant>XrmoptionSkipNArgs</constant>
with the
<function>XrmOptionDescRec.value</function>
<structname>XrmOptionDescRec</structname>.<structfield>value</structfield>
field containing the value one.
Note also that the value zero for
<function>XrmoptionSkipNArgs</function>
<constant>XrmoptionSkipNArgs</constant>
indicates that only the option itself is to be skipped.
</para>
<para>
@ -2404,7 +2404,7 @@ in the order they occur in argv.
The table entries contain information on the option string,
the option name, the style of option,
and a value to provide if the option kind is
<function>XrmoptionNoArg</function>.
<constant>XrmoptionNoArg</constant>.
The option names are compared byte-for-byte to arguments in argv,
independent of any locale.
The resource values given in the table are stored in the resource database

View file

@ -113,9 +113,9 @@ To obtain a KeySym for the KeyCode of an event, use
<listitem>
<para>
Specifies the
<function>KeyPress</function>
<symbol>KeyPress</symbol>
or
<function>KeyRelease</function>
<symbol>KeyRelease</symbol>
event.
</para>
</listitem>
@ -139,14 +139,14 @@ The
<function>XLookupKeysym</function>
function uses a given keyboard event and the index you specified to return
the KeySym from the list that corresponds to the KeyCode member in the
<function>XKeyPressedEvent</function>
<type>XKeyPressedEvent</type>
or
<function>XKeyReleasedEvent</function>
<type>XKeyReleasedEvent</type>
structure.
If no KeySym is defined for the KeyCode of the event,
<function>XLookupKeysym</function>
returns
<function>NoSymbol</function>.
<symbol>NoSymbol</symbol>.
</para>
<para>
<!-- .LP -->
@ -208,7 +208,7 @@ the element of the KeyCode vector.
If no symbol is defined,
<function>XKeycodeToKeysym</function>
returns
<function>NoSymbol</function>.
<symbol>NoSymbol</symbol>.
</para>
<para>
<!-- .LP -->
@ -292,11 +292,11 @@ The
<function>XRefreshKeyboardMapping</function>
function refreshes the stored modifier and keymap information.
You usually call this function when a
<function>MappingNotify</function>
<symbol>MappingNotify</symbol>
event with a request member of
<function>MappingKeyboard</function>
<symbol>MappingKeyboard</symbol>
or
<function>MappingModifier</function>
<symbol>MappingModifier</symbol>
occurs.
The result is to update Xlib's knowledge of the keyboard.
</para>
@ -408,7 +408,7 @@ the result is implementation-dependent.
If the specified string does not match a valid KeySym,
<function>XStringToKeysym</function>
returns
<function>NoSymbol</function>.
<symbol>NoSymbol</symbol>.
</para>
<para>
<!-- .LP -->
@ -479,7 +479,7 @@ Specifies the KeySym that is to be tested.
<!-- .eM -->
<indexterm significance="preferred"><primary>IsCursorKey</primary></indexterm>
Returns
<function>True</function>
<symbol>True</symbol>
if the specified KeySym is a cursor key.
</para>
<!-- .LP -->
@ -506,7 +506,7 @@ Specifies the KeySym that is to be tested.
<!-- .eM -->
<indexterm significance="preferred"><primary>IsFunctionKey</primary></indexterm>
Returns
<function>True</function>
<symbol>True</symbol>
if the specified KeySym is a function key.
</para>
<!-- .LP -->
@ -533,7 +533,7 @@ Specifies the KeySym that is to be (Fn.
<!-- .eM -->
<indexterm significance="preferred"><primary>IsKeypadKey</primary></indexterm>
Returns
<function>True</function>
<symbol>True</symbol>
if the specified KeySym is a standard keypad key.
</para>
<!-- .LP -->
@ -559,7 +559,7 @@ Specifies the KeySym that is to be (Fn.
<!-- .eM -->
<indexterm significance="preferred"><primary>IsPrivateKeypadKey</primary></indexterm>
Returns
<function>True</function>
<symbol>True</symbol>
if the specified KeySym is a vendor-private keypad key.
</para>
@ -587,7 +587,7 @@ Specifies the KeySym that is to be (Fn.
<!-- .eM -->
<indexterm significance="preferred"><primary>IsMiscFunctionKey</primary></indexterm>
Returns
<function>True</function>
<symbol>True</symbol>
if the specified KeySym is a miscellaneous function key.
</para>
<!-- .LP -->
@ -613,7 +613,7 @@ Specifies the KeySym that is to be tested.
<!-- .eM -->
<indexterm significance="preferred"><primary>IsModifierKey</primary></indexterm>
Returns
<function>True</function>
<symbol>True</symbol>
if the specified KeySym is a modifier key.
</para>
@ -637,7 +637,7 @@ Specifies the KeySym that is to be tested.
<!-- .eM -->
<indexterm significance="preferred"><primary>IsPFKey</primary></indexterm>
Returns
<function>True</function>
<symbol>True</symbol>
if the specified KeySym is a PF key.
</para>
</sect2>
@ -685,9 +685,9 @@ To map a key event to an ISO Latin-1 string, use
<para>
Specifies the key event structure to be used.
You can pass
<function>XKeyPressedEvent</function>
<type>XKeyPressedEvent</type>
or
<function>XKeyReleasedEvent</function>.
<type>XKeyReleasedEvent</type>.
</para>
</listitem>
</varlistentry>
@ -729,7 +729,7 @@ Returns the KeySym computed from the event if this argument is not NULL.
<listitem>
<para>
Specifies or returns the
<function>XComposeStatus</function>
<structname>XComposeStatus</structname>
structure or NULL.
</para>
</listitem>
@ -743,8 +743,8 @@ The
<function>XLookupString</function>
function translates a key event to a KeySym and a string.
The KeySym is obtained by using the standard interpretation of the
<function>Shift</function>,
<function>Lock</function>,
<symbol>Shift</symbol>,
<symbol>Lock</symbol>,
group, and numlock modifiers as defined in the X Protocol specification.
If the KeySym has been rebound (see
<function>XRebindKeysym</function>),
@ -759,14 +759,14 @@ returns the number of characters that are stored in the buffer.
<!-- .LP -->
If present (non-NULL),
the
<function>XComposeStatus</function>
<structname>XComposeStatus</structname>
structure records the state,
which is private to Xlib,
that needs preservation across calls to
<function>XLookupString</function>
to implement compose processing.
The creation of
<function>XComposeStatus</function>
<structname>XComposeStatus</structname>
structures is implementation-dependent;
a portable program must pass NULL for this argument.
</para>
@ -1029,13 +1029,13 @@ be able to say ``position the window relative to the right or bottom edge.''
For each value found, the corresponding argument is updated.
For each value not found, the argument is left unchanged.
The bits are represented by
<function>XValue</function>,
<function>YValue</function>,
<function>WidthValue</function>,
<function>HeightValue</function>,
<function>XNegative</function>,
<symbol>XValue</symbol>,
<symbol>YValue</symbol>,
<symbol>WidthValue</symbol>,
<symbol>HeightValue</symbol>,
<symbol>XNegative</symbol>,
or
<function>YNegative</function>
<symbol>YNegative</symbol>
and are defined in
<!-- .hN X11/Xutil.h . -->
They will be set whenever one of the values is defined
@ -1044,9 +1044,9 @@ or one of the signs is set.
<para>
<!-- .LP -->
If the function returns either the
<function>XValue</function>
<symbol>XValue</symbol>
or
<function>YValue</function>
<symbol>YValue</symbol>
flag,
you should place the window at the requested position.
<!-- .sp -->
@ -1198,14 +1198,14 @@ function combines any geometry information (given in the format used by
specified by the user and by the calling program with size hints
(usually the ones to be stored in WM_NORMAL_HINTS) and returns the position,
size, and gravity
(<function>NorthWestGravity</function>,
<function>NorthEastGravity</function>,
<function>SouthEastGravity</function>,
(<symbol>NorthWestGravity</symbol>,
<symbol>NorthEastGravity</symbol>,
<symbol>SouthEastGravity</symbol>,
or
<function>SouthWestGravity</function>)
<symbol>SouthWestGravity</symbol>)
that describe the window.
If the base size is not set in the
<function>XSizeHints</function>
<structname>XSizeHints</structname>
structure,
the minimum size is used if set.
Otherwise, a base size of zero is assumed.
@ -1237,7 +1237,7 @@ as gravity_return to update the hints directly.
Regions are arbitrary sets of pixel locations.
Xlib provides functions for manipulating regions.
The opaque type
<function>Region</function>
<structname>Region</structname>
is defined in
<!-- .hN X11/Xutil.h . -->
Xlib provides functions that you can use to manipulate regions.
@ -1331,9 +1331,9 @@ Specifies the number of points in the polygon.
<para>
Specifies the fill-rule you want to set for the specified GC.
You can pass
<function>EvenOddRule</function>
<symbol>EvenOddRule</symbol>
or
<function>WindingRule</function>.
<symbol>WindingRule</symbol>.
</para>
</listitem>
</varlistentry>
@ -1906,7 +1906,7 @@ Specifies the region.
The
<function>XEmptyRegion</function>
function returns
<function>True</function>
<symbol>True</symbol>
if the region is empty.
</para>
<para>
@ -1953,7 +1953,7 @@ Specify the two regions.
The
<function>XEqualRegion</function>
function returns
<function>True</function>
<symbol>True</symbol>
if the two regions have the same offset, size, and shape.
</para>
</sect2>
@ -2017,7 +2017,7 @@ Specify the x and y coordinates(Xy.
The
<function>XPointInRegion</function>
function returns
<function>True</function>
<symbol>True</symbol>
if the point (x, y) is contained in the region r.
</para>
<para>
@ -2099,12 +2099,12 @@ Specify the width and height(Wh.
The
<function>XRectInRegion</function>
function returns
<function>RectangleIn</function>
<symbol>RectangleIn</symbol>
if the rectangle is entirely in the specified region,
<function>RectangleOut</function>
<symbol>RectangleOut</symbol>
if the rectangle is entirely out of the specified region,
and
<function>RectanglePart</function>
<symbol>RectanglePart</symbol>
if the rectangle is partially in the specified region.
</para>
</sect2>
@ -2194,7 +2194,7 @@ any client calling
<!-- .LP -->
<function>XStoreBytes</function>
can generate a
<function>BadAlloc</function>
<errorname>BadAlloc</errorname>
error.
</para>
<para>
@ -2269,7 +2269,7 @@ and need not be null-terminated.
<!-- .LP -->
<function>XStoreBuffer</function>
can generate a
<function>BadAlloc</function>
<errorname>BadAlloc</errorname>
error.
</para>
<para>
@ -2433,7 +2433,7 @@ This cut buffer numbering is global to the display.
Note that
<function>XRotateBuffers</function>
generates
<function>BadMatch</function>
<errorname>BadMatch</errorname>
errors if any of the eight buffers have not been created.
</para>
</sect1>
@ -2453,7 +2453,7 @@ which visual to use for your application.
<para>
<!-- .LP -->
The functions in this section use the visual information masks and the
<function>XVisualInfo</function>
<structname>XVisualInfo</structname>
structure,
which is defined in
<!-- .hN X11/Xutil.h -->
@ -2672,7 +2672,7 @@ returns zero.
<!-- .LP -->
Xlib provides several functions that perform basic operations on images.
All operations on images are defined using an
<function>XImage</function>
<structname>XImage</structname>
structure,
as defined in
<!-- .hN X11/Xlib.h . -->
@ -2701,7 +2701,7 @@ to and from disk files.
<para>
<!-- .LP -->
The
<function>XImage</function>
<structname>XImage</structname>
structure describes an image as it exists in the client's memory.
The user can request that some of the members such as height, width,
and xoffset be changed when the image is sent to the server.
@ -2716,7 +2716,7 @@ makes the appropriate conversions.
The first byte of the first line of
plane n must be located at the address (data + (n * height * bytes_per_line)).
For a description of the
<function>XImage</function>
<structname>XImage</structname>
structure,
see section 8.7.
</para>
@ -2724,7 +2724,7 @@ see section 8.7.
<!-- .LP -->
<!-- .sp -->
To allocate an
<function>XImage</function>
<structname>XImage</structname>
structure and initialize it with image format values from a display, use
<function>XCreateImage</function>.
<indexterm significance="preferred"><primary>XCreateImage</primary></indexterm>
@ -2763,7 +2763,7 @@ Specifies the connection to the X server.
<listitem>
<para>
Specifies the
<function>Visual</function>
<structname>Visual</structname>
structure.
</para>
</listitem>
@ -2786,10 +2786,10 @@ Specifies the depth of the image.
<para>
Specifies the format for the image.
You can pass
<function>XYBitmap</function>,
<function>XYPixmap</function>,
<symbol>XYBitmap</symbol>,
<symbol>XYPixmap</symbol>,
or
<function>ZPixmap</function>.
<symbol>ZPixmap</symbol>.
</para>
</listitem>
</varlistentry>
@ -2864,16 +2864,16 @@ the start of one scanline and the start of the next.
The
<function>XCreateImage</function>
function allocates the memory needed for an
<function>XImage</function>
<structname>XImage</structname>
structure for the
specified display but does not allocate space for the image itself.
Rather, it initializes the structure byte-order, bit-order, and bitmap-unit
values from the display and returns a pointer to the
<function>XImage</function>
<structname>XImage</structname>
structure.
The red, green, and blue mask values are defined for Z format images only
and are derived from the
<function>Visual</function>
<structname>Visual</structname>
structure passed in.
Other values also are passed in.
The offset permits the rapid displaying of the image without requiring each
@ -3114,7 +3114,7 @@ The
<function>XSubImage</function>
function creates a new image that is a subsection of an existing one.
It allocates the memory necessary for the new
<function>XImage</function>
<structname>XImage</structname>
structure
and returns a pointer to the new image.
The data is copied from the source image,
@ -3203,7 +3203,7 @@ Specifies the image.
The
<function>XDestroyImage</function>
function deallocates the memory associated with the
<function>XImage</function>
<structname>XImage</structname>
structure.
</para>
<para>
@ -3375,16 +3375,16 @@ is implementation-dependent.
If the file cannot be opened,
<function>XReadBitmapFile</function>
returns
<function>BitmapOpenFailed</function>.
<returnvalue>BitmapOpenFailed</returnvalue>.
If the file can be opened but does not contain valid bitmap data,
it returns
<function>BitmapFileInvalid</function>.
<returnvalue>BitmapFileInvalid</returnvalue>.
If insufficient working storage is allocated,
it returns
<function>BitmapNoMemory</function>.
<returnvalue>BitmapNoMemory</returnvalue>.
If the file is readable and valid,
it returns
<function>BitmapSuccess</function>.
<returnvalue>BitmapSuccess</returnvalue>.
</para>
<para>
<!-- .LP -->
@ -3406,10 +3406,10 @@ otherwise, it returns \-1,\-1.
<!-- .LP -->
<function>XReadBitmapFile</function>
can generate
<function>BadAlloc</function>,
<function>BadDrawable</function>,
<errorname>BadAlloc</errorname>,
<errorname>BadDrawable</errorname>,
and
<function>BadGC</function>
<errorname>BadGC</errorname>
errors.
</para>
<para>
@ -3615,14 +3615,14 @@ by deleting the directory prefix.
The file is written in the encoding of the current locale.
If the file cannot be opened for writing,
it returns
<function>BitmapOpenFailed</function>.
<returnvalue>BitmapOpenFailed</returnvalue>.
If insufficient memory is allocated,
<function>XWriteBitmapFile</function>
returns
<function>BitmapNoMemory</function>;
<returnvalue>BitmapNoMemory</returnvalue>;
otherwise, on no error,
it returns
<function>BitmapSuccess</function>.
<returnvalue>BitmapSuccess</returnvalue>.
If x_hot and y_hot are not \-1, \-1,
<function>XWriteBitmapFile</function>
writes them out as the hotspot coordinates for the bitmap.
@ -3631,9 +3631,9 @@ writes them out as the hotspot coordinates for the bitmap.
<!-- .LP -->
<function>XWriteBitmapFile</function>
can generate
<function>BadDrawable</function>
<errorname>BadDrawable</errorname>
and
<function>BadMatch</function>
<errorname>BadMatch</errorname>
errors.
</para>
<para>
@ -3751,18 +3751,18 @@ function creates a pixmap of the given depth and then does a bitmap-format
of the data into it.
The depth must be supported by the screen of the specified drawable,
or a
<function>BadMatch</function>
<errorname>BadMatch</errorname>
error results.
</para>
<para>
<!-- .LP -->
<function>XCreatePixmapFromBitmapData</function>
can generate
<function>BadAlloc</function>,
<function>BadDrawable</function>,
<function>BadGC</function>,
<errorname>BadAlloc</errorname>,
<errorname>BadDrawable</errorname>,
<errorname>BadGC</errorname>,
and
<function>BadValue</function>
<errorname>BadValue</errorname>
errors.
</para>
<para>
@ -3846,7 +3846,7 @@ Specify the width and height.
The
<function>XCreateBitmapFromData</function>
function allows you to include in your C program (using
<function>#include</function>)
<code>#include</code>)
a bitmap file that was written out by
<function>XWriteBitmapFile</function>
(X version 11 format only) without reading in the bitmap file.
@ -3866,7 +3866,7 @@ bitmap = XCreateBitmapFromData(display, window, gray_bits, gray_width, gray_heig
If insufficient working storage was allocated,
<function>XCreateBitmapFromData</function>
returns
<function>None</function>.
<symbol>None</symbol>.
It is your responsibility to free the
bitmap using
<function>XFreePixmap</function>
@ -3876,9 +3876,9 @@ when finished.
<!-- .LP -->
<function>XCreateBitmapFromData</function>
can generate
<function>BadAlloc</function>
<errorname>BadAlloc</errorname>
and
<function>BadGC</function>
<errorname>BadGC</errorname>
errors.
</para>
</sect1>
@ -3982,7 +3982,7 @@ The
function returns a nonzero error code if an error has occurred
and zero otherwise.
Possible errors are
<function>XCNOMEM</function>
<symbol>XCNOMEM</symbol>
(out of memory).
</para>
<para>
@ -4055,7 +4055,7 @@ The
function returns a nonzero error code if an error has occurred
and zero otherwise.
Possible errors are
<function>XCNOENT</function>
<symbol>XCNOENT</symbol>
(context-not-found).
</para>
<para>

View file

@ -52,7 +52,7 @@ Atoms are used to identify properties, types, and selections.
<indexterm significance="preferred"><primary>Background</primary></indexterm>
<para>
An
<function>InputOutput</function>
<symbol>InputOutput</symbol>
window can have a background, which is defined as a pixmap.
When regions of the window have their contents lost
or invalidated,
@ -78,20 +78,20 @@ the pixels saved off-screen are known as a backing store.
A font name used to select a family of fonts whose members may be encoded
in various charsets.
The
<function>CharSetRegistry</function>
<structfield>CharSetRegistry</structfield>
and
<function>CharSetEncoding</function>
<structfield>CharSetEncoding</structfield>
fields of an <acronym>XLFD</acronym> name identify the charset of the font.
A base font name may be a full <acronym>XLFD</acronym> name, with all fourteen '-' delimiters,
or an abbreviated <acronym>XLFD</acronym> name containing only the first 12 fields of an <acronym>XLFD</acronym> name,
up to but not including
<function>CharSetRegistry</function>,
<structfield>CharSetRegistry</structfield>,
with or without the thirteenth '-', or a non-<acronym>XLFD</acronym> name.
Any <acronym>XLFD</acronym> fields may contain wild cards.
</para>
<para>
When creating an
<function>XFontSet</function>,
<type>XFontSet</type>,
Xlib accepts from the client a list of one or more base font names
which select one or more font families.
They are combined with charset names obtained from the encoding of the locale
@ -138,7 +138,7 @@ A bitmap is a <glossterm linkend="glossary:Pixmap">pixmap</glossterm> of depth o
<indexterm significance="preferred"><primary>Border</primary></indexterm>
<para>
An
<function>InputOutput</function>
<symbol>InputOutput</symbol>
window can have a border of equal thickness on all four sides of the window.
The contents of the border are defined by a pixmap,
and the server automatically maintains the contents of the border.
@ -413,7 +413,7 @@ and the pointer.
<glossdef>
<indexterm significance="preferred"><primary>DirectColor</primary></indexterm>
<para>
<function>DirectColor</function>
<symbol>DirectColor</symbol>
is a class of colormap in which a pixel value is decomposed into three
separate subfields for indexing.
The first subfield indexes an array to produce red intensity values.
@ -431,7 +431,7 @@ changed dynamically.
<para>
A server, together with its screens and input devices, is called a display.
The Xlib
<function>Display</function>
<type>Display</type>
<indexterm><primary>Display</primary><secondary>structure</secondary></indexterm>
structure contains all information about the particular display and its screens
as well as the state that Xlib needs to communicate with the display over a
@ -448,7 +448,7 @@ Both windows and pixmaps can be used as sources and destinations
in graphics operations.
These windows and pixmaps are collectively known as drawables.
However, an
<function>InputOnly</function>
<symbol>InputOnly</symbol>
window cannot be used as a source or destination in a
graphics operation.
</para>
@ -471,9 +471,9 @@ sets, and the X Compound Text encoding.
<para>
In X, encodings are identified by a string
which appears as: the
<function>CharSetRegistry</function>
<structfield>CharSetRegistry</structfield>
and
<function>CharSetEncoding</function>
<structfield>CharSetEncoding</structfield>
components of an <acronym>XLFD</acronym>
name; the name of a charset of the locale for which a font could not be
found; or an atom which identifies the encoding of a text property or
@ -688,9 +688,9 @@ See <glossterm linkend="glossary:Bit_gravity">Bit gravity</glossterm> and
<glossdef>
<indexterm significance="preferred"><primary>GrayScale</primary></indexterm>
<para>
<function>GrayScale</function>
<symbol>GrayScale</symbol>
can be viewed as a degenerate case of
<glossterm linkend="glossary:PseudoColor"><function>PseudoColor</function></glossterm>,
<glossterm linkend="glossary:PseudoColor"><symbol>PseudoColor</symbol></glossterm>,
in which the red, green, and blue values in any given colormap entry
are equal and thus, produce shades of gray.
The gray values can be changed dynamically.
@ -775,14 +775,14 @@ client, which usually is part of a window manager.
<indexterm significance="preferred"><primary>Window</primary><secondary>InputOnly</secondary></indexterm>
<para>
An
<function>InputOnly</function>
<symbol>InputOnly</symbol>
window is a window that cannot be used for graphics requests.
<function>InputOnly</function>
<symbol>InputOnly</symbol>
windows are invisible and are used to control such things as cursors,
input event generation, and grabbing.
<function>InputOnly</function>
<symbol>InputOnly</symbol>
windows cannot have
<function>InputOutput</function>
<symbol>InputOutput</symbol>
windows as inferiors.
</para>
</glossdef>
@ -793,13 +793,13 @@ windows as inferiors.
<indexterm significance="preferred"><primary>Window</primary><secondary>InputOutput</secondary></indexterm>
<para>
An
<function>InputOutput</function>
<symbol>InputOutput</symbol>
window is the normal kind of window that is used for both input and output.
<function>InputOutput</function>
<symbol>InputOutput</symbol>
windows can have both
<function>InputOutput</function>
<symbol>InputOutput</symbol>
and
<function>InputOnly</function>
<symbol>InputOnly</symbol>
windows as inferiors.
</para>
</glossdef>
@ -964,7 +964,7 @@ ShiftLock, and similar keys are called modifier keys.
<indexterm significance="preferred"><primary>Monochrome</primary></indexterm>
<para>
Monochrome is a special case of
<glossterm linkend="glossary:StaticGray"><function>StaticGray</function></glossterm>
<glossterm linkend="glossary:StaticGray"><symbol>StaticGray</symbol></glossterm>
in which there are only two colormap entries.
</para>
</glossdef>
@ -991,7 +991,7 @@ imply only that the strings <emphasis remap='I'>may</emphasis> contain multibyte
A window is obscured if some other window obscures it.
A window can be partially obscured and so still have visible regions.
Window A obscures window B if both are viewable
<function>InputOutput</function>
<symbol>InputOutput</symbol>
windows, if A is higher in the global stacking order,
and if the rectangle defined by the outside
edges of A intersects the rectangle defined by the outside edges of B.
@ -1013,7 +1013,7 @@ by the outside edges of B.
Note the distinction between occludes and obscures.
Also note that window borders are included in the calculation
and that
<function>InputOnly</function>
<symbol>InputOnly</symbol>
windows never obscure other windows but can occlude other windows.
</para>
</glossdef>
@ -1186,7 +1186,7 @@ been defined for the window.
<glossdef>
<indexterm significance="preferred"><primary>PseudoColor</primary></indexterm>
<para>
<function>PseudoColor</function>
<symbol>PseudoColor</symbol>
is a class of colormap in which a pixel value indexes the colormap entry to
produce an independent <acronym>RGB</acronym> value;
that is, the colormap is viewed as an array of triples (<acronym>RGB</acronym> values).
@ -1341,11 +1341,11 @@ which typically have physically independent monitors.
This would be the expected configuration when there is only a single keyboard
and pointer shared among the screens.
A
<function>Screen</function>
<type>Screen</type>
<indexterm><primary>Screen</primary><secondary>structure</secondary></indexterm>
structure contains the information about that screen
and is linked to the
<function>Display</function>
<type>Display</type>
<indexterm><primary>Display</primary><secondary>structure</secondary></indexterm>
structure.
</para>
@ -1474,9 +1474,9 @@ this means use of at most single shifts, not locking shifts.
<glossdef>
<indexterm significance="preferred"><primary>StaticColor</primary></indexterm>
<para>
<function>StaticColor</function>
<symbol>StaticColor</symbol>
can be viewed as a degenerate case of
<glossterm linkend="glossary:PseudoColor"><function>PseudoColor</function></glossterm>
<glossterm linkend="glossary:PseudoColor"><symbol>PseudoColor</symbol></glossterm>
in which the <acronym>RGB</acronym> values are predefined and read-only.
</para>
</glossdef>
@ -1486,9 +1486,9 @@ in which the <acronym>RGB</acronym> values are predefined and read-only.
<glossdef>
<indexterm significance="preferred"><primary>StaticGray</primary></indexterm>
<para>
<function>StaticGray</function>
<symbol>StaticGray</symbol>
can be viewed as a degenerate case of
<glossterm linkend="glossary:GrayScale"><function>GrayScale</function></glossterm>
<glossterm linkend="glossary:GrayScale"><symbol>GrayScale</symbol></glossterm>
in which the gray values are predefined and read-only.
The values are typically linear or near-linear increasing ramps.
</para>
@ -1565,7 +1565,7 @@ always interprets timestamps from clients by treating half
of the timestamp space as being earlier in time than T
and half of the timestamp space as being later in time than T.
One timestamp value, represented by the constant
<function>CurrentTime</function>,
<symbol>CurrentTime</symbol>,
is never generated by the server.
This value is reserved for use in requests to represent the current server time.
</para>
@ -1576,9 +1576,9 @@ This value is reserved for use in requests to represent the current server time.
<glossdef>
<indexterm significance="preferred"><primary>TrueColor</primary></indexterm>
<para>
<function>TrueColor</function>
<symbol>TrueColor</symbol>
can be viewed as a degenerate case of
<glossterm linkend="glossary:DirectColor"><function>DirectColor</function></glossterm>
<glossterm linkend="glossary:DirectColor"><symbol>DirectColor</symbol></glossterm>
in which the subfields in the pixel value directly encode the corresponding <acronym>RGB</acronym>
values.
That is, the colormap has predefined read-only <acronym>RGB</acronym> values.