aboutsummaryrefslogtreecommitdiffstats
path: root/Xlibscm.html
diff options
context:
space:
mode:
Diffstat (limited to 'Xlibscm.html')
-rw-r--r--Xlibscm.html3675
1 files changed, 3675 insertions, 0 deletions
diff --git a/Xlibscm.html b/Xlibscm.html
new file mode 100644
index 0000000..6833e60
--- /dev/null
+++ b/Xlibscm.html
@@ -0,0 +1,3675 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
+ "http://www.w3.org/TR/html40/loose.dtd">
+<HTML>
+<!-- Created on May, 6 2004 by texi2html 1.66 -->
+<!--
+Written by: Lionel Cons <Lionel.Cons@cern.ch> (original author)
+ Karl Berry <karl@freefriends.org>
+ Olaf Bachmann <obachman@mathematik.uni-kl.de>
+ and many others.
+Maintained by: Many creative people <dev@texi2html.cvshome.org>
+Send bugs and suggestions to <users@texi2html.cvshome.org>
+
+-->
+<HEAD>
+<TITLE>Xlibscm</TITLE>
+
+<META NAME="description" CONTENT="Xlibscm">
+<META NAME="keywords" CONTENT="Xlibscm">
+<META NAME="resource-type" CONTENT="document">
+<META NAME="distribution" CONTENT="global">
+<META NAME="Generator" CONTENT="texi2html 1.66">
+
+</HEAD>
+
+<BODY LANG="en" BGCOLOR="#FFFFFF" TEXT="#000000" LINK="#0000FF" VLINK="#800080" ALINK="#FF0000">
+
+<A NAME="SEC_Top"></A>
+<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0>
+<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="Xlibscm.html#SEC_Top">Top</A>]</TD>
+<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="Xlibscm.html#SEC_Contents">Contents</A>]</TD>
+<TD VALIGN="MIDDLE" ALIGN="LEFT">[Index]</TD>
+<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="Xlibscm.html#SEC_About"> ? </A>]</TD>
+</TR></TABLE>
+<H1>Xlibscm</H1>
+
+<P>
+
+This manual documents the X - SCM Language X Interface. The most recent
+information about SCM can be found on SCM's <EM>WWW</EM> home page:
+</P>
+<P>
+
+<center>
+ <A HREF="http://swissnet.ai.mit.edu/~jaffer/SCM">http://swissnet.ai.mit.edu/~jaffer/SCM</A>
+</center>
+</P>
+<P>
+
+Copyright (C) 1990-1999 Free Software Foundation
+</P>
+<P>
+
+Permission is granted to make and distribute verbatim copies of
+this manual provided the copyright notice and this permission notice
+are preserved on all copies.
+</P>
+<P>
+
+Permission is granted to copy and distribute modified versions of this
+manual under the conditions for verbatim copying, provided that the entire
+resulting derived work is distributed under the terms of a permission
+notice identical to this one.
+</P>
+<P>
+
+Permission is granted to copy and distribute translations of this manual
+into another language, under the above conditions for modified versions,
+except that this permission notice may be stated in a translation approved
+by the author.
+</P>
+<P>
+
+</P>
+<TABLE BORDER="0" CELLSPACING="0">
+<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="Xlibscm.html#SEC1">1. Xlibscm</A></TD><TD>&nbsp;&nbsp;</TD><TD ALIGN="left" VALIGN="TOP"></TD></TR>
+<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="Xlibscm.html#SEC2">2. Display and Screens</A></TD><TD>&nbsp;&nbsp;</TD><TD ALIGN="left" VALIGN="TOP"></TD></TR>
+<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="Xlibscm.html#SEC3">3. Drawables</A></TD><TD>&nbsp;&nbsp;</TD><TD ALIGN="left" VALIGN="TOP"></TD></TR>
+<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="Xlibscm.html#SEC7">4. Graphics Context</A></TD><TD>&nbsp;&nbsp;</TD><TD ALIGN="left" VALIGN="TOP"></TD></TR>
+<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="Xlibscm.html#SEC9">5. Cursor</A></TD><TD>&nbsp;&nbsp;</TD><TD ALIGN="left" VALIGN="TOP"></TD></TR>
+<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="Xlibscm.html#SEC10">6. Colormap</A></TD><TD>&nbsp;&nbsp;</TD><TD ALIGN="left" VALIGN="TOP"></TD></TR>
+<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="Xlibscm.html#SEC11">7. Rendering</A></TD><TD>&nbsp;&nbsp;</TD><TD ALIGN="left" VALIGN="TOP"></TD></TR>
+<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="Xlibscm.html#SEC14">8. Images</A></TD><TD>&nbsp;&nbsp;</TD><TD ALIGN="left" VALIGN="TOP"></TD></TR>
+<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="Xlibscm.html#SEC15">9. Event</A></TD><TD>&nbsp;&nbsp;</TD><TD ALIGN="left" VALIGN="TOP"></TD></TR>
+<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="Xlibscm.html#SEC16">Procedure and Macro Index</A></TD><TD>&nbsp;&nbsp;</TD><TD ALIGN="left" VALIGN="TOP"></TD></TR>
+</TABLE>
+<P>
+
+<HR SIZE=1>
+<A NAME="SEC1"></A>
+<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0>
+<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="Xlibscm.html#SEC_Top"> &lt; </A>]</TD>
+<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="Xlibscm.html#SEC2"> &gt; </A>]</TD>
+<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="Xlibscm.html#SEC_Top"> &lt;&lt; </A>]</TD>
+<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="Xlibscm.html#SEC_Top"> Up </A>]</TD>
+<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="Xlibscm.html#SEC2"> &gt;&gt; </A>]</TD>
+<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="Xlibscm.html#SEC_Top">Top</A>]</TD>
+<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="Xlibscm.html#SEC_Contents">Contents</A>]</TD>
+<TD VALIGN="MIDDLE" ALIGN="LEFT">[Index]</TD>
+<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="Xlibscm.html#SEC_About"> ? </A>]</TD>
+</TR></TABLE>
+<A NAME="Xlibscm"></A>
+<H1> 1. Xlibscm </H1>
+<!--docid::SEC1::-->
+<P>
+
+<EM>Xlibscm</EM> is a SCM interface to <EM>X</EM>.
+<A NAME="IDX1"></A>
+The
+&lt;A HREF=&quot;http://www.x.org/&quot;&gt;
+X Window System
+&lt;/A&gt;
+is a network-transparent window system that was
+designed at MIT.
+&lt;A HREF=&quot;scm_toc.html&quot;&gt;
+SCM
+&lt;/A&gt;
+is a portable Scheme implementation written in C.
+The interface can be compiled into SCM or, on those platforms supporting
+dynamic linking, compiled separately and loaded with <CODE>(require
+'Xlib)</CODE>.
+<A NAME="IDX2"></A>
+</P>
+<P>
+
+Much of this X documentation is dervied from:
+</P>
+<P>
+
+<center>
+ Xlib - C Language X Interface
+</center>
+<center>
+ X Consortium Standard
+</center>
+<center>
+ X Version 11, Release 6.3
+</center>
+</P>
+<P>
+
+The X Window System is a trademark of X Consortium, Inc.
+</P>
+<P>
+
+TekHVC is a trademark of Tektronix, Inc.
+</P>
+<P>
+
+Copyright (C) 1985, 1986, 1987, 1988, 1989, 1990, 1991, 1994, 1996 X
+Consortium
+</P>
+<P>
+
+Permission is hereby granted, free of charge, to any person obtaining a
+copy of this software and associated documentation files (the
+&quot;Software&quot;), to deal in the Software without restriction, including
+without limitation the rights to use, copy, modify, merge, publish,
+distribute, sublicense, and/or sell copies of the Software, and to
+permit persons to whom the Software is furnished to do so, subject to
+the following conditions:
+</P>
+<P>
+
+The above copyright notice and this permission notice shall be included
+in all copies or substantial portions of the Software.
+</P>
+<P>
+
+THE SOFTWARE IS PROVIDED &quot;AS IS&quot;, WITHOUT WARRANTY OF ANY KIND, EXPRESS
+OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
+IN NO EVENT SHALL THE X CONSORTIUM BE LIABLE FOR ANY CLAIM, DAMAGES OR
+OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE,
+ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
+OTHER DEALINGS IN THE SOFTWARE.
+</P>
+<P>
+
+Except as contained in this notice, the name of the X Consortium shall
+not be used in advertising or otherwise to promote the sale, use or
+other dealings in this Software without prior written authorization from
+the X Consortium.
+</P>
+<P>
+
+Copyright (C) 1985, 1986, 1987, 1988, 1989, 1990, 1991 by
+Digital Equipment Corporation
+</P>
+<P>
+
+Portions Copyright (C) 1990, 1991 by Tektronix, Inc.
+</P>
+<P>
+
+Permission to use, copy, modify and distribute this documentation for
+any purpose and without fee is hereby granted, provided that the above
+copyright notice appears in all copies and that both that copyright
+notice and this permission notice appear in all copies, and that the
+names of Digital and Tektronix not be used in in advertising or
+publicity pertaining to this documentation without specific, written
+prior permission. Digital and Tektronix makes no representations about
+the suitability of this documentation for any purpose. It is provided
+&quot;as is&quot; without express or implied warranty.
+</P>
+<P>
+
+<A NAME="Display and Screens"></A>
+<HR SIZE="6">
+<A NAME="SEC2"></A>
+<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0>
+<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="Xlibscm.html#SEC1"> &lt; </A>]</TD>
+<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="Xlibscm.html#SEC3"> &gt; </A>]</TD>
+<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="Xlibscm.html#SEC1"> &lt;&lt; </A>]</TD>
+<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="Xlibscm.html#SEC_Top"> Up </A>]</TD>
+<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="Xlibscm.html#SEC3"> &gt;&gt; </A>]</TD>
+<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="Xlibscm.html#SEC_Top">Top</A>]</TD>
+<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="Xlibscm.html#SEC_Contents">Contents</A>]</TD>
+<TD VALIGN="MIDDLE" ALIGN="LEFT">[Index]</TD>
+<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="Xlibscm.html#SEC_About"> ? </A>]</TD>
+</TR></TABLE>
+<H1> 2. Display and Screens </H1>
+<!--docid::SEC2::-->
+<P>
+
+<A NAME="IDX3"></A>
+</P>
+<DL>
+<DT><U>Function:</U> <B>x:open-display</B> <I>display-name</I>
+<DD><VAR>display-name</VAR> Specifies the hardware display name, which determines
+the display and communications domain to be used. On a POSIX-conformant
+system, if the display-name is #f, it defaults to the value of the
+<VAR>DISPLAY</VAR> environment variable.
+<P>
+
+The encoding and interpretation of <VAR>display-name</VAR> is
+implementation-dependent. On POSIX-conformant systems, the
+<VAR>display-name</VAR> or <VAR>DISPLAY</VAR> environment variable can be a string
+in the format:
+</P>
+<P>
+
+<A NAME="IDX4"></A>
+</P>
+<DL>
+<DT><U>Special Form:</U> <B>hostname:number.screen-number</B>
+<DD><P>
+
+<VAR>hostname</VAR> specifies the name of the host machine on which the
+display is physically attached. Follow the <VAR>hostname</VAR> with either a
+single colon (:) or a double colon (::).
+</P>
+<P>
+
+<VAR>number</VAR> specifies the number of the display server on that host
+machine. You may optionally follow this display number with a period
+(.). A single CPU can have more than one display. Multiple displays
+are usually numbered starting with zero.
+</P>
+<P>
+
+<VAR>screen-number</VAR> specifies the screen to be used on that server.
+Multiple screens can be controlled by a single X server. The
+<VAR>screen-number</VAR> sets an internal variable that can be accessed by
+using the x:default-screen procedure.
+</P>
+</DL>
+</DL>
+<P>
+
+<A NAME="IDX5"></A>
+</P>
+<DL>
+<DT><U>Function:</U> <B>x:close</B> <I>display</I>
+<DD><VAR>display</VAR> specifies the connection to the X server.
+<P>
+
+The <CODE>x:close</CODE> function closes the connection to the X server for
+the <VAR>display</VAR> specified and destroys all windows, resource IDs
+(Window, Font, Pixmap, Colormap, Cursor, and GContext), or other
+resources that the client has created on this display, unless the
+close-down mode of the resource has been changed (see
+<CODE>x:set-close-down-mode</CODE>). Therefore, these windows, resource IDs,
+and other resources should not be used again or an error will be
+generated. Before exiting, you should call <VAR>x:close-display</VAR> or
+<VAR>x:flush</VAR> explicitly so that any pending errors are reported.
+</P>
+</DL>
+<P>
+
+<A NAME="IDX6"></A>
+</P>
+<DL>
+<DT><U>Function:</U> <B>x:protocol-version</B> <I>display</I>
+<DD>Returns cons of the major version number (11) of the X protocol
+associated with the connected <VAR>display</VAR> and the minor protocol
+revision number of the X server.
+</DL>
+<P>
+
+<A NAME="IDX7"></A>
+</P>
+<DL>
+<DT><U>Function:</U> <B>x:server-vendor</B> <I>display</I>
+<DD>Returns a string that provides some identification of the owner of the X
+server implementation. The contents of the string are
+implementation-dependent.
+</DL>
+<P>
+
+<A NAME="IDX8"></A>
+</P>
+<DL>
+<DT><U>Function:</U> <B>x:vendor-release</B> <I>display</I>
+<DD>Returns a number related to a vendor's release of the X server.
+</DL>
+<P>
+
+A display consists of one or more <EM>Screen</EM>s. Each screen has a
+<EM>root-window</EM>, <EM>default-graphics-context</EM>, and <EM>colormap</EM>.
+</P>
+<P>
+
+<A NAME="IDX9"></A>
+</P>
+<DL>
+<DT><U>Function:</U> <B>x:screen-count</B> <I>display</I>
+<DD>Returns the number of available screens.
+</DL>
+<P>
+
+<A NAME="IDX10"></A>
+</P>
+<DL>
+<DT><U>Function:</U> <B>x:default-screen</B> <I>display</I>
+<DD>Returns the default screen number specified by the <CODE>x:open-display</CODE>
+function. Use this screen number in applications which will use only a
+single screen.
+</DL>
+<P>
+
+<A NAME="IDX11"></A>
+</P>
+<DL>
+<DT><U>Function:</U> <B>x:root-window</B> <I>display screen-number</I>
+<DD><A NAME="IDX12"></A>
+<DT><U>Function:</U> <B>x:root-window</B> <I>display</I>
+<DD><VAR>screen-number</VAR>, if givien, specifies the appropriate screen number
+on the host server. Otherwise the default-screen for <VAR>display</VAR> is
+used.
+<P>
+
+Returns the root window for the specified <VAR>screen-number</VAR>. Use
+<CODE>x:root-window</CODE> for functions that need a drawable of a particular
+screen or for creating top-level windows.
+</P>
+<P>
+
+<A NAME="IDX13"></A>
+<DT><U>Function:</U> <B>x:root-window</B> <I>window</I>
+<DD>Returns the root window for the specified <VAR>window</VAR>'s screen.
+</P>
+</DL>
+<P>
+
+<A NAME="IDX14"></A>
+</P>
+<DL>
+<DT><U>Function:</U> <B>x:default-colormap</B> <I>display screen-number</I>
+<DD><A NAME="IDX15"></A>
+<DT><U>Function:</U> <B>x:default-colormap</B> <I>display</I>
+<DD><A NAME="IDX16"></A>
+<DT><U>Function:</U> <B>x:default-colormap</B> <I>window</I>
+<DD>Returns the default colormap of the specified screen.
+</DL>
+<P>
+
+<A NAME="IDX17"></A>
+</P>
+<DL>
+<DT><U>Function:</U> <B>x:default-ccc</B> <I>display screen-number</I>
+<DD><A NAME="IDX18"></A>
+<DT><U>Function:</U> <B>x:default-ccc</B> <I>display</I>
+<DD><A NAME="IDX19"></A>
+<DT><U>Function:</U> <B>x:default-ccc</B> <I>window</I>
+<DD>Returns the default Color-Conversion-Context (ccc) of the specified
+screen.
+</DL>
+<P>
+
+<A NAME="IDX20"></A>
+</P>
+<DL>
+<DT><U>Function:</U> <B>x:default-gc</B> <I>display screen-number</I>
+<DD><A NAME="IDX21"></A>
+<DT><U>Function:</U> <B>x:default-gc</B> <I>display</I>
+<DD><A NAME="IDX22"></A>
+<DT><U>Function:</U> <B>x:default-gc</B> <I>window</I>
+<DD>Returns the default graphics-context of the specified screen.
+</DL>
+<P>
+
+<A NAME="IDX23"></A>
+</P>
+<DL>
+<DT><U>Function:</U> <B>x:screen-depths</B> <I>display screen-number</I>
+<DD><A NAME="IDX24"></A>
+<DT><U>Function:</U> <B>x:screen-depths</B> <I>display</I>
+<DD><A NAME="IDX25"></A>
+<DT><U>Function:</U> <B>x:screen-depths</B> <I>window</I>
+<DD>Returns an array of depths supported by the specified screen.
+</DL>
+<P>
+
+The <EM>Visual</EM> type describes possible colormap depths and
+arrangements.
+</P>
+<P>
+
+<A NAME="IDX26"></A>
+</P>
+<DL>
+<DT><U>Function:</U> <B>x:default-visual</B> <I>display screen-number</I>
+<DD><A NAME="IDX27"></A>
+<DT><U>Function:</U> <B>x:default-visual</B> <I>display</I>
+<DD><A NAME="IDX28"></A>
+<DT><U>Function:</U> <B>x:default-visual</B> <I>window</I>
+<DD>Returns the default Visual type for the specified screen.
+<P>
+
+<A NAME="IDX29"></A>
+<A NAME="IDX30"></A>
+</P>
+</DL>
+<P>
+
+<A NAME="IDX31"></A>
+</P>
+<DL>
+<DT><U>Function:</U> <B>x:make-visual</B> <I>display depth class</I>
+<DD><A NAME="IDX32"></A>
+<DT><U>Function:</U> <B>x:make-visual</B> <I>window depth class</I>
+<DD><P>
+
+The integer <VAR>depth</VAR> specifies the number of bits per pixel.
+The <VAR>class</VAR> argument specifies one of the possible
+visual classes for a screen:
+<UL>
+<LI>x:Static-Gray
+<LI>x:Static-Color
+<LI>x:True-Color
+<LI>x:Gray-Scale
+<LI>x:Pseudo-Color
+<LI>x:Direct-Color
+</UL>
+<P>
+
+<CODE>X:make-visual</CODE> returns a visual type for the screen specified by
+<VAR>display</VAR> or <VAR>window</VAR> if successful; #f if not.
+</P>
+</DL>
+<P>
+
+<A NAME="IDX33"></A>
+</P>
+<DL>
+<DT><U>Function:</U> <B>x:visual-class</B> <I>visual</I>
+<DD><A NAME="IDX34"></A>
+<DT><U>Function:</U> <B>x:visual-class</B> <I>screen</I>
+<DD><A NAME="IDX35"></A>
+<DT><U>Function:</U> <B>x:visual-class</B> <I>display</I>
+<DD>Returns the (integer) visual class of its argument.
+</DL>
+<P>
+
+<A NAME="IDX36"></A>
+</P>
+<DL>
+<DT><U>Function:</U> <B>x:visual-geometry</B> <I>visual</I>
+<DD><A NAME="IDX37"></A>
+<DT><U>Function:</U> <B>x:visual-geometry</B> <I>screen</I>
+<DD><A NAME="IDX38"></A>
+<DT><U>Function:</U> <B>x:visual-geometry</B> <I>display</I>
+<DD>Returns a list of the:
+<UL>
+<LI>red_mask
+<LI>green_mask
+<LI>blue_mask
+<LI>colormap_size
+</UL>
+</DL>
+<P>
+
+<A NAME="IDX39"></A>
+</P>
+<DL>
+<DT><U>Function:</U> <B>x:screen-cells</B> <I>display screen-number</I>
+<DD><A NAME="IDX40"></A>
+<DT><U>Function:</U> <B>x:screen-cells</B> <I>display</I>
+<DD><A NAME="IDX41"></A>
+<DT><U>Function:</U> <B>x:screen-cells</B> <I>window</I>
+<DD>Returns the number of entries in the default colormap.
+</DL>
+<P>
+
+<A NAME="IDX42"></A>
+</P>
+<DL>
+<DT><U>Function:</U> <B>x:screen-depth</B> <I>display screen-number</I>
+<DD>Returns the depth of the root window of the specified screen.
+<A NAME="IDX43"></A>
+<DT><U>Function:</U> <B>x:screen-depth</B> <I>display</I>
+<DD><A NAME="IDX44"></A>
+<DT><U>Function:</U> <B>x:screen-depth</B> <I>window</I>
+<DD><A NAME="IDX45"></A>
+<DT><U>Function:</U> <B>x:screen-depth</B> <I>visual</I>
+<DD>Returns the depth of argument.
+<P>
+
+<A NAME="IDX46"></A>
+The <EM>depth</EM> of a window or pixmap is the number of bits per pixel it has.
+The <EM>depth</EM> of a graphics context is the depth of the drawables it can be
+used in conjunction with graphics output.
+</P>
+</DL>
+<P>
+
+<A NAME="IDX47"></A>
+</P>
+<DL>
+<DT><U>Function:</U> <B>x:screen-size</B> <I>display screen-number</I>
+<DD><A NAME="IDX48"></A>
+<DT><U>Function:</U> <B>x:screen-size</B> <I>display</I>
+<DD><A NAME="IDX49"></A>
+<DT><U>Function:</U> <B>x:screen-size</B> <I>window</I>
+<DD>Returns a list of integer height and width of the screen in pixels.
+</DL>
+<P>
+
+<A NAME="IDX50"></A>
+</P>
+<DL>
+<DT><U>Function:</U> <B>x:screen-dimensions</B> <I>display screen-number</I>
+<DD><A NAME="IDX51"></A>
+<DT><U>Function:</U> <B>x:screen-dimensions</B> <I>display</I>
+<DD><A NAME="IDX52"></A>
+<DT><U>Function:</U> <B>x:screen-dimensions</B> <I>window</I>
+<DD>Returns a list of integer height and width of the screen in millimeters.
+</DL>
+<P>
+
+<A NAME="IDX53"></A>
+</P>
+<DL>
+<DT><U>Function:</U> <B>x:screen-white</B> <I>display screen-number</I>
+<DD><A NAME="IDX54"></A>
+<DT><U>Function:</U> <B>x:screen-white</B> <I>display</I>
+<DD><A NAME="IDX55"></A>
+<DT><U>Function:</U> <B>x:screen-white</B> <I>window</I>
+<DD>Returns the white pixel value of the specified screen.
+</DL>
+<P>
+
+<A NAME="IDX56"></A>
+</P>
+<DL>
+<DT><U>Function:</U> <B>x:screen-black</B> <I>display screen-number</I>
+<DD><A NAME="IDX57"></A>
+<DT><U>Function:</U> <B>x:screen-black</B> <I>display</I>
+<DD><A NAME="IDX58"></A>
+<DT><U>Function:</U> <B>x:screen-black</B> <I>window</I>
+<DD>Returns the black pixel value of the specified screen.
+</DL>
+<P>
+
+<A NAME="Drawables"></A>
+<HR SIZE="6">
+<A NAME="SEC3"></A>
+<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0>
+<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="Xlibscm.html#SEC2"> &lt; </A>]</TD>
+<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="Xlibscm.html#SEC4"> &gt; </A>]</TD>
+<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="Xlibscm.html#SEC2"> &lt;&lt; </A>]</TD>
+<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="Xlibscm.html#SEC_Top"> Up </A>]</TD>
+<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="Xlibscm.html#SEC7"> &gt;&gt; </A>]</TD>
+<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="Xlibscm.html#SEC_Top">Top</A>]</TD>
+<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="Xlibscm.html#SEC_Contents">Contents</A>]</TD>
+<TD VALIGN="MIDDLE" ALIGN="LEFT">[Index]</TD>
+<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="Xlibscm.html#SEC_About"> ? </A>]</TD>
+</TR></TABLE>
+<H1> 3. Drawables </H1>
+<!--docid::SEC3::-->
+<P>
+
+<A NAME="IDX59"></A>
+<A NAME="IDX60"></A>
+A <EM>Drawable</EM> is either a window or pixmap.
+</P>
+<P>
+
+<TABLE BORDER="0" CELLSPACING="0">
+<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="Xlibscm.html#SEC4">3.1 Windows and Pixmaps</A></TD><TD>&nbsp;&nbsp;</TD><TD ALIGN="left" VALIGN="TOP"></TD></TR>
+<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="Xlibscm.html#SEC5">3.2 Window Attributes</A></TD><TD>&nbsp;&nbsp;</TD><TD ALIGN="left" VALIGN="TOP"></TD></TR>
+<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="Xlibscm.html#SEC6">3.3 Window Properties and Visibility</A></TD><TD>&nbsp;&nbsp;</TD><TD ALIGN="left" VALIGN="TOP"></TD></TR>
+</TABLE>
+<P>
+
+<A NAME="Windows and Pixmaps"></A>
+<HR SIZE="6">
+<A NAME="SEC4"></A>
+<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0>
+<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="Xlibscm.html#SEC3"> &lt; </A>]</TD>
+<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="Xlibscm.html#SEC5"> &gt; </A>]</TD>
+<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="Xlibscm.html#SEC3"> &lt;&lt; </A>]</TD>
+<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="Xlibscm.html#SEC3"> Up </A>]</TD>
+<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="Xlibscm.html#SEC7"> &gt;&gt; </A>]</TD>
+<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="Xlibscm.html#SEC_Top">Top</A>]</TD>
+<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="Xlibscm.html#SEC_Contents">Contents</A>]</TD>
+<TD VALIGN="MIDDLE" ALIGN="LEFT">[Index]</TD>
+<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="Xlibscm.html#SEC_About"> ? </A>]</TD>
+</TR></TABLE>
+<H2> 3.1 Windows and Pixmaps </H2>
+<!--docid::SEC4::-->
+<P>
+
+<A NAME="IDX61"></A>
+</P>
+<DL>
+<DT><U>Function:</U> <B>x:create-window</B> <I>window position size border-width depth class visual field-name value <small>...</small></I>
+<DD>Creates and returns an unmapped Input-Output subwindow for a specified
+parent <VAR>window</VAR> and causes the X server to generate a CreateNotify
+event. The created window is placed on top in the stacking order with
+respect to siblings. Any part of the window that extends outside its
+parent <VAR>window</VAR> is clipped. The <VAR>border-width</VAR> for an
+x:Input-Only window must be zero.
+<P>
+
+The coordinate system has the X axis horizontal and the Y axis vertical
+with the origin [0, 0] at the upper-left corner. Coordinates are
+integral, in terms of pixels, and coincide with pixel centers. Each
+window and pixmap has its own coordinate system. For a window, the
+origin is inside the border at the inside, upper-left corner.
+</P>
+<P>
+
+<VAR>Class</VAR> can be x:Input-Output, x:Input-Only, or x:Copy-From-Parent.
+For class x:Input-Output, the <VAR>visual</VAR> type and <VAR>depth</VAR> must be
+a combination supported for the screen. The <VAR>depth</VAR> need not be the
+same as the parent, but the parent must not be a window of class
+x:Input-Only. For an x:Input-Only window, the <VAR>depth</VAR> must be zero,
+and the <VAR>visual</VAR> must be one supported by the screen.
+</P>
+<P>
+
+The returned window will have the attributes specified by
+<VAR>field-name</VAR>s and <VAR>value</VAR>.
+</P>
+<P>
+
+<A NAME="IDX62"></A>
+<DT><U>Function:</U> <B>x:create-window</B> <I>window position size border-width border background</I>
+<DD>The returned window inherits its depth, class, and visual from its
+parent. All other window attributes, except <VAR>background</VAR> and
+<VAR>border</VAR>, have their default values.
+</P>
+</DL>
+<P>
+
+<A NAME="IDX63"></A>
+</P>
+<DL>
+<DT><U>Function:</U> <B>x:create-pixmap</B> <I>drawable size depth</I>
+<DD><A NAME="IDX64"></A>
+<DT><U>Function:</U> <B>x:create-pixmap</B> <I>display size depth</I>
+<DD><P>
+
+<VAR>size</VAR> is a list, vector, or pair of nonzero integers specifying the width
+and height desired in the new pixmap.
+</P>
+<P>
+
+<VAR>x:create-pixmap</VAR> returns a new pixmap of the width, height, and
+<VAR>depth</VAR> specified. It is valid to pass an x:Input-Only window to the
+drawable argument. The <VAR>depth</VAR> argument must be one of the depths
+supported by the screen of the specified <VAR>drawable</VAR>.
+</P>
+</DL>
+<P>
+
+<A NAME="IDX65"></A>
+</P>
+<DL>
+<DT><U>Function:</U> <B>x:close</B> <I>window</I>
+<DD>Destroys the specified <VAR>window</VAR> as well as all of its subwindows and
+causes the X server to generate a DestroyNotify event for each window.
+The window should not be used again. If the window specified by the
+<VAR>window</VAR> argument is mapped, it is unmapped automatically. The
+ordering of the DestroyNotify events is such that for any given window
+being destroyed, DestroyNotify is generated on any inferiors of the
+window before being generated on the window itself. The ordering among
+siblings and across subhierarchies is not otherwise constrained. If the
+<VAR>window</VAR> you specified is a root window, an error is signaled.
+Destroying a mapped <VAR>window</VAR> will generate x:Expose events on other
+windows that were obscured by the window being destroyed.
+</DL>
+<P>
+
+<A NAME="IDX66"></A>
+</P>
+<DL>
+<DT><U>Function:</U> <B>x:close</B> <I>pixmap</I>
+<DD>Deletes the association between the <VAR>pixmap</VAR> and its storage. The X
+server frees the pixmap storage when there are no references to it.
+</DL>
+<P>
+
+<A NAME="IDX67"></A>
+</P>
+<DL>
+<DT><U>Function:</U> <B>x:window-geometry</B> <I>drawable</I>
+<DD>Returns a list of:
+<P>
+
+</P>
+<DL COMPACT>
+<DT>coordinates
+<DD><CODE>list</CODE> of x and y coordinates that define the location of the
+<VAR>drawable</VAR>. For a window, these coordinates specify the upper-left
+outer corner relative to its parent's origin. For pixmaps, these
+coordinates are always zero.
+<DT>size
+<DD><CODE>list</CODE> of the <VAR>drawable</VAR>'s dimensions (width and height). For
+a window, these dimensions specify the inside size, not including the
+border.
+<DT>border-width
+<DD>The border width in pixels. If the <VAR>drawable</VAR> is a pixmap, this is
+zero.
+<DT>depth
+<DD>The depth of the <VAR>drawable</VAR> (bits per pixel for the object).
+</DL>
+</DL>
+<P>
+
+<A NAME="IDX68"></A>
+</P>
+<DL>
+<DT><U>Function:</U> <B>x:window-geometry-set!</B> <I>window field-name value <small>...</small></I>
+<DD>Changes the <EM>Configuration</EM> components specified by
+<VAR>field-name</VAR>s for the specified <VAR>window</VAR>.
+</DL>
+<P>
+
+These are the attributes settable by <CODE>x:window-geometry-set!</CODE>.
+That these attributes are encoded by small integers -- just like those
+of the next section. Be warned therefore that confusion of attribute
+names will likely not signal errors, just cause mysterious behavior.
+</P>
+<P>
+
+<A NAME="IDX69"></A>
+</P>
+<DL>
+<DT><U>Attribute:</U> <B>x:CWX</B>
+<DD><A NAME="IDX70"></A>
+<DT><U>Attribute:</U> <B>x:CWY</B>
+<DD><A NAME="IDX71"></A>
+<DT><U>Attribute:</U> <B>x:CW-Width</B>
+<DD><A NAME="IDX72"></A>
+<DT><U>Attribute:</U> <B>x:CW-Height</B>
+<DD>The x:CWX and x:CYY members are used to set the window's x and y
+coordinates, which are relative to the parent's origin and indicate the
+position of the upper-left outer corner of the window. The x:CW-Width
+and x:CW-Height members are used to set the inside size of the window,
+not including the border, and must be nonzero. Attempts to configure a
+root window have no effect.
+<P>
+
+If a window's size actually changes, the window's subwindows move
+according to their window gravity. Depending on the window's bit
+gravity, the contents of the window also may be moved
+</P>
+</DL>
+<P>
+
+<A NAME="IDX73"></A>
+</P>
+<DL>
+<DT><U>Attribute:</U> <B>x:CW-Border-Width</B>
+<DD>The integer x:CW-Border-Width is used to set the width of the border in
+pixels. Note that setting just the border width leaves the outer-left
+corner of the window in a fixed position but moves the absolute position
+of the window's origin. It is an error to set the border-width
+attribute of an InputOnly window nonzero.
+</DL>
+<P>
+
+<A NAME="IDX74"></A>
+</P>
+<DL>
+<DT><U>Attribute:</U> <B>x:CW-Sibling</B>
+<DD>The sibling member is used to set the sibling window for stacking
+operations.
+</DL>
+<P>
+
+<A NAME="IDX75"></A>
+</P>
+<DL>
+<DT><U>Attribute:</U> <B>x:CW-Stack-Mode</B>
+<DD>The x:CW-Stack-Mode member is used to set how the window is to be
+restacked and can be set to x:Above, x:Below, x:Top-If, x:Bottom-If, or
+x:Opposite.
+</DL>
+<P>
+
+If a sibling and a stack-mode are specified, the window is restacked as
+follows:
+</P>
+<P>
+
+</P>
+<DL COMPACT>
+<DT><CODE>x:Above</CODE>
+<DD>The window is placed just above the sibling.
+<DT><CODE>x:Below</CODE>
+<DD>The window is placed just below the sibling.
+<DT><CODE>x:Top-If</CODE>
+<DD>If the sibling occludes the window, the window is placed at the top of
+the stack.
+<DT><CODE>x:Bottom-If</CODE>
+<DD>If the window occludes the sibling, the window is placed at the bottom
+of the stack.
+<DT><CODE>x:Opposite</CODE>
+<DD>If the sibling occludes the window, the window is placed at the top of
+the stack. If the window occludes the sibling, the window is placed at
+the bottom of the stack.
+</DL>
+<P>
+
+If a stack-mode is specified but no sibling is specified, the window
+is restacked as follows:
+</P>
+<P>
+
+</P>
+<DL COMPACT>
+<DT><CODE>x:Above</CODE>
+<DD>The window is placed at the top of the stack.
+<DT><CODE>x:Below</CODE>
+<DD>The window is placed at the bottom of the stack.
+<DT><CODE>x:Top-If</CODE>
+<DD>If any sibling occludes the window, the window is placed at the top of
+the stack.
+<DT><CODE>x:Bottom-If</CODE>
+<DD>If the window occludes any sibling, the window is placed at the bottom
+of the stack.
+<DT><CODE>x:Opposite</CODE>
+<DD>If any sibling occludes the window, the window is placed at the top of
+the stack. If the window occludes any sibling, the window is placed at
+the bottom of the stack.
+</DL>
+<P>
+
+<A NAME="Window Attributes"></A>
+<HR SIZE="6">
+<A NAME="SEC5"></A>
+<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0>
+<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="Xlibscm.html#SEC4"> &lt; </A>]</TD>
+<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="Xlibscm.html#SEC6"> &gt; </A>]</TD>
+<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="Xlibscm.html#SEC3"> &lt;&lt; </A>]</TD>
+<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="Xlibscm.html#SEC3"> Up </A>]</TD>
+<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="Xlibscm.html#SEC7"> &gt;&gt; </A>]</TD>
+<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="Xlibscm.html#SEC_Top">Top</A>]</TD>
+<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="Xlibscm.html#SEC_Contents">Contents</A>]</TD>
+<TD VALIGN="MIDDLE" ALIGN="LEFT">[Index]</TD>
+<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="Xlibscm.html#SEC_About"> ? </A>]</TD>
+</TR></TABLE>
+<H2> 3.2 Window Attributes </H2>
+<!--docid::SEC5::-->
+<P>
+
+<A NAME="IDX76"></A>
+</P>
+<DL>
+<DT><U>Function:</U> <B>x:window-set!</B> <I>window field-name value <small>...</small></I>
+<DD>Changes the components specified by <VAR>field-name</VAR>s for the specified
+<VAR>window</VAR>. The restrictions are the same as for
+<CODE>x:create-window</CODE>. The order in which components are verified and
+altered is server dependent. If an error occurs, a subset of the
+components may have been altered.
+</DL>
+<P>
+
+The <CODE>x:create-window</CODE> and <CODE>x:window-set!</CODE> procedures take five
+and one argument (respectively) followed by pairs of arguments, where
+the first is one of the property-name symbols (or its top-level value)
+listed below; and the second is the value to associate with that
+property.
+</P>
+<P>
+
+<A NAME="IDX77"></A>
+</P>
+<DL>
+<DT><U>Attribute:</U> <B>x:CW-Back-Pixmap</B>
+<DD>Sets the background pixmap of the <VAR>window</VAR> to the specified pixmap.
+The background pixmap can immediately be freed if no further explicit
+references to it are to be made. If x:Parent-Relative is specified, the
+background pixmap of the window's parent is used, or on the root window,
+the default background is restored. It is an error to perform this
+operation on an x:Input-Only window. If the background is set to #f or
+None, the window has no defined background.
+</DL>
+<P>
+
+<A NAME="IDX78"></A>
+</P>
+<DL>
+<DT><U>Attribute:</U> <B>x:CW-Back-Pixel</B>
+<DD>Sets the background of the <VAR>window</VAR> to the specified pixel value.
+Changing the background does not cause the <VAR>window</VAR> contents to be
+changed. It is an error to perform this operation on an x:Input-Only
+window.
+</DL>
+<P>
+
+<A NAME="IDX79"></A>
+</P>
+<DL>
+<DT><U>Attribute:</U> <B>x:CW-Border-Pixmap</B>
+<DD>Sets the border pixmap of the <VAR>window</VAR> to the pixmap you specify.
+The border pixmap can be freed if no further explicit references to it
+are to be made. If you specify x:Copy-From-Parent, a copy of the parent
+window's border pixmap is used. It is an error to perform this
+operation on an x:Input-Only <VAR>window</VAR>.
+</DL>
+<P>
+
+<A NAME="IDX80"></A>
+</P>
+<DL>
+<DT><U>Attribute:</U> <B>x:CW-Border-Pixel</B>
+<DD>Sets the border of the <VAR>window</VAR> to the pixel <VAR>value</VAR>. It is an
+error to perform this operation on an x:Input-Only window.
+</DL>
+<P>
+
+<A NAME="IDX81"></A>
+</P>
+<DL>
+<DT><U>Attribute:</U> <B>x:CW-Bit-Gravity</B>
+<DD><A NAME="IDX82"></A>
+<DT><U>Attribute:</U> <B>x:CW-Win-Gravity</B>
+<DD>The bit gravity of a window defines which region of the window should be
+retained when an x:Input-Output window is resized. The default value
+for the bit-gravity attribute is x:Forget-Gravity. The window gravity
+of a window allows you to define how the x:Input-Output or x:Input-Only
+window should be repositioned if its parent is resized. The default
+value for the win-gravity attribute is x:North-West-Gravity.
+<P>
+
+If the inside width or height of a window is not changed and if the
+window is moved or its border is changed, then the contents of the
+window are not lost but move with the window. Changing the inside width
+or height of the window causes its contents to be moved or lost
+(depending on the bit-gravity of the window) and causes children to be
+reconfigured (depending on their win-gravity). For a change of width
+and height, the (x, y) pairs are defined:
+</P>
+<P>
+
+</P>
+<TABLE>
+<TR><TD>Gravity Direction</TD>
+</TD><TD> Coordinates
+</TR>
+<TR><TD>x:North-West-Gravity</TD>
+</TD><TD> (0, 0)
+</TR>
+<TR><TD>x:North-Gravity</TD>
+</TD><TD> (Width/2, 0)
+</TR>
+<TR><TD>x:North-East-Gravity</TD>
+</TD><TD> (Width, 0)
+</TR>
+<TR><TD>x:West-Gravity</TD>
+</TD><TD> (0, Height/2)
+</TR>
+<TR><TD>x:Center-Gravity</TD>
+</TD><TD> (Width/2, Height/2)
+</TR>
+<TR><TD>x:East-Gravity</TD>
+</TD><TD> (Width, Height/2)
+</TR>
+<TR><TD>x:South-West-Gravity</TD>
+</TD><TD> (0, Height)
+</TR>
+<TR><TD>x:South-Gravity</TD>
+</TD><TD> (Width/2, Height)
+</TR>
+<TR><TD>x:South-East-Gravity</TD>
+</TD><TD> (Width, Height)
+</TR></TABLE>
+<P>
+
+When a window with one of these bit-gravity values is resized, the
+corresponding pair defines the change in position of each pixel in the
+window. When a window with one of these win-gravities has its parent
+window resized, the corresponding pair defines the change in position of
+the window within the parent. When a window is so repositioned, a
+x:Gravity-Notify event is generated (see section 10.10.5).
+</P>
+<P>
+
+A bit-gravity of x:Static-Gravity indicates that the contents or origin
+should not move relative to the origin of the root window. If the
+change in size of the window is coupled with a change in position (x,
+y), then for bit-gravity the change in position of each pixel is (-x,
+-y), and for win-gravity the change in position of a child when its
+parent is so resized is (-x, -y). Note that x:Static-Gravity still only
+takes effect when the width or height of the window is changed, not when
+the window is moved.
+</P>
+<P>
+
+A bit-gravity of x:Forget-Gravity indicates that the window's contents
+are always discarded after a size change, even if a backing store or
+save under has been requested. The window is tiled with its background
+and zero or more x:Expose events are generated. If no background is
+defined, the existing screen contents are not altered. Some X servers
+may also ignore the specified bit-gravity and always generate x:Expose
+events.
+</P>
+<P>
+
+The contents and borders of inferiors are not affected by their parent's
+bit-gravity. A server is permitted to ignore the specified bit-gravity
+and use x:Forget-Gravity instead.
+</P>
+<P>
+
+A win-gravity of x:Unmap-Gravity is like x:North-West-Gravity (the
+window is not moved), except the child is also unmapped when the parent
+is resized, and an x:Unmap-Notify event is generated.
+</P>
+</DL>
+<P>
+
+<A NAME="IDX83"></A>
+</P>
+<DL>
+<DT><U>Attribute:</U> <B>x:CW-Backing-Store</B>
+<DD>Some implementations of the X server may choose to maintain the contents
+of x:Input-Output windows. If the X server maintains the contents of a
+window, the off-screen saved pixels are known as backing store. The
+backing store advises the X server on what to do with the contents of a
+window. The backing-store attribute can be set to x:Not-Useful
+(default), x:When-Mapped, or x:Always. A backing-store attribute of
+x:Not-Useful advises the X server that maintaining contents is
+unnecessary, although some X implementations may still choose to
+maintain contents and, therefore, not generate x:Expose events. A
+backing-store attribute of x:When-Mapped advises the X server that
+maintaining contents of obscured regions when the window is mapped would
+be beneficial. In this case, the server may generate an x:Expose event
+when the window is created. A backing-store attribute of x:Always
+advises the X server that maintaining contents even when the window is
+unmapped would be beneficial. Even if the window is larger than its
+parent, this is a request to the X server to maintain complete contents,
+not just the region within the parent window boundaries. While the X
+server maintains the window's contents, x:Expose events normally are not
+generated, but the X server may stop maintaining contents at any time.
+<P>
+
+When the contents of obscured regions of a window are being maintained,
+regions obscured by noninferior windows are included in the destination
+of graphics requests (and source, when the window is the source).
+However, regions obscured by inferior windows are not included.
+</P>
+</DL>
+<P>
+
+<A NAME="IDX84"></A>
+</P>
+<DL>
+<DT><U>Attribute:</U> <B>x:CW-Backing-Planes</B>
+<DD><A NAME="IDX85"></A>
+<DT><U>Attribute:</U> <B>x:CW-Backing-Pixel</B>
+<DD>You can set backing planes to indicate (with bits set to 1) which bit
+planes of an x:Input-Output window hold dynamic data that must be
+preserved in backing store and during save unders. The default value
+for the backing-planes attribute is all bits set to 1. You can set
+backing pixel to specify what bits to use in planes not covered by
+backing planes. The default value for the backing-pixel attribute is
+all bits set to 0. The X server is free to save only the specified bit
+planes in the backing store or the save under and is free to regenerate
+the remaining planes with the specified pixel value. Any extraneous
+bits in these values (that is, those bits beyond the specified depth of
+the window) may be simply ignored. If you request backing store or save
+unders, you should use these members to minimize the amount of
+off-screen memory required to store your window.
+</DL>
+<P>
+
+<A NAME="IDX86"></A>
+</P>
+<DL>
+<DT><U>Attribute:</U> <B>x:CW-Override-Redirect</B>
+<DD>To control window placement or to add decoration, a window manager often
+needs to intercept (redirect) any map or configure request. Pop-up
+windows, however, often need to be mapped without a window manager
+getting in the way. To control whether an x:Input-Output or
+x:Input-Only window is to ignore these structure control facilities, use
+the override-redirect flag.
+<P>
+
+The override-redirect flag specifies whether map and configure requests
+on this window should override a x:Substructure-Redirect-Mask on the
+parent. You can set the override-redirect flag to #t or #f (default).
+Window managers use this information to avoid tampering with pop-up
+windows.
+</P>
+</DL>
+<P>
+
+<A NAME="IDX87"></A>
+</P>
+<DL>
+<DT><U>Attribute:</U> <B>x:CW-Save-Under</B>
+<DD>Some server implementations may preserve contents of x:Input-Output windows
+under other x:Input-Output windows. This is not the same as preserving the
+contents of a window for you. You may get better visual appeal if
+transient windows (for example, pop-up menus) request that the system
+preserve the screen contents under them, so the temporarily obscured
+applications do not have to repaint.
+<P>
+
+You can set the save-under flag to True or False (default). If
+save-under is True, the X server is advised that, when this window is
+mapped, saving the contents of windows it obscures would be beneficial.
+</P>
+</DL>
+<P>
+
+<A NAME="IDX88"></A>
+</P>
+<DL>
+<DT><U>Attribute:</U> <B>x:CW-Event-Mask</B>
+<DD>The event mask defines which events the client is interested in for this
+x:Input-Output or x:Input-Only window (or, for some event types,
+inferiors of this window). The event mask is the bitwise inclusive OR
+of zero or more of the valid event mask bits. You can specify that no
+maskable events are reported by setting x:No-Event-Mask (default).
+<P>
+
+The following table lists the event mask constants you can pass to the
+event-mask argument and the circumstances in which you would want to
+specify the event mask:
+</P>
+<P>
+
+</P>
+<TABLE>
+<TR><TD>Event Mask</TD>
+</TD><TD> Circumstances
+</TR>
+<TR><TD>x:No-Event-Mask</TD>
+</TD><TD> No events wanted
+</TR>
+<TR><TD>x:Key-Press-Mask</TD>
+</TD><TD> Keyboard down events wanted
+</TR>
+<TR><TD>x:Key-Release-Mask</TD>
+</TD><TD> Keyboard up events wanted
+</TR>
+<TR><TD>x:Button-Press-Mask</TD>
+</TD><TD> Pointer button down events wanted
+</TR>
+<TR><TD>x:Button-Release-Mask</TD>
+</TD><TD> Pointer button up events wanted
+</TR>
+<TR><TD>x:Enter-Window-Mask</TD>
+</TD><TD> Pointer window entry events wanted
+</TR>
+<TR><TD>x:Leave-Window-Mask</TD>
+</TD><TD> Pointer window leave events wanted
+</TR>
+<TR><TD>x:Pointer-Motion-Mask</TD>
+</TD><TD> Pointer motion events wanted
+</TR>
+<TR><TD>x:Pointer-Motion-Hint-Mask</TD>
+</TD><TD>
+If x:Pointer-Motion-Hint-Mask is selected in combination with one or
+more motion-masks, the X server is free to send only one x:Motion-Notify
+event (with the is_hint member of the X:Pointer-Moved-Event structure
+set to x:Notify-Hint) to the client for the event window, until either
+the key or button state changes, the pointer leaves the event window, or
+the client calls X:Query-Pointer or X:Get-Motion-Events. The server
+still may send x:Motion-Notify events without is_hint set to
+x:Notify-Hint.
+</TR>
+<TR><TD>x:Button1-Motion-Mask</TD>
+</TD><TD> Pointer motion while button 1 down
+</TR>
+<TR><TD>x:Button2-Motion-Mask</TD>
+</TD><TD> Pointer motion while button 2 down
+</TR>
+<TR><TD>x:Button3-Motion-Mask</TD>
+</TD><TD> Pointer motion while button 3 down
+</TR>
+<TR><TD>x:Button4-Motion-Mask</TD>
+</TD><TD> Pointer motion while button 4 down
+</TR>
+<TR><TD>x:Button5-Motion-Mask</TD>
+</TD><TD> Pointer motion while button 5 down
+</TR>
+<TR><TD>x:Button-Motion-Mask</TD>
+</TD><TD> Pointer motion while any button down
+</TR>
+<TR><TD>x:Keymap-State-Mask</TD>
+</TD><TD> Keyboard state wanted at window entry and focus in
+</TR>
+<TR><TD>x:Exposure-Mask</TD>
+</TD><TD> Any exposure wanted
+</TR>
+<TR><TD>x:Visibility-Change-Mask</TD>
+</TD><TD> Any change in visibility wanted
+</TR>
+<TR><TD>x:Structure-Notify-Mask</TD>
+</TD><TD> Any change in window structure wanted
+</TR>
+<TR><TD>x:Resize-Redirect-Mask</TD>
+</TD><TD> Redirect resize of this window
+</TR>
+<TR><TD>x:Substructure-Notify-Mask</TD>
+</TD><TD> Substructure notification wanted
+</TR>
+<TR><TD>x:Substructure-Redirect-Mask</TD>
+</TD><TD> Redirect structure requests on children
+</TR>
+<TR><TD>x:Focus-Change-Mask</TD>
+</TD><TD> Any change in input focus wanted
+</TR>
+<TR><TD>x:Property-Change-Mask</TD>
+</TD><TD> Any change in property wanted
+</TR>
+<TR><TD>x:Colormap-Change--Mask</TD>
+</TD><TD> Any change in colormap wanted
+</TR>
+<TR><TD>x:Owner-Grab-Button--Mask</TD>
+</TD><TD> Automatic grabs should activate with owner_events set to True
+</TR></TABLE>
+<P>
+
+</P>
+</DL>
+<P>
+
+<A NAME="IDX89"></A>
+</P>
+<DL>
+<DT><U>Attribute:</U> <B>x:CW-Dont-Propagate</B>
+<DD>The do-not-propagate-mask attribute defines which events should not be
+propagated to ancestor windows when no client has the event type
+selected in this x:Input-Output or x:Input-Only window. The
+do-not-propagate-mask is the bitwise inclusive OR of zero or more of the
+following masks: x:Key-Press, x:Key-Release, x:Button-Press,
+x:Button-Release, x:Pointer-Motion, x:Button1Motion, x:Button2Motion,
+x:Button3Motion, x:Button4Motion, x:Button5Motion, and x:Button-Motion.
+You can specify that all events are propagated by setting
+x:No-Event-Mask (default).
+</DL>
+<P>
+
+<A NAME="IDX90"></A>
+</P>
+<DL>
+<DT><U>Attribute:</U> <B>x:CW-Colormap</B>
+<DD>The colormap attribute specifies which colormap best reflects the true
+colors of the x:Input-Output window. The colormap must have the same
+visual type as the window. X servers capable of supporting multiple
+hardware colormaps can use this information, and window managers can use
+it for calls to X:Install-Colormap. You can set the colormap attribute
+to a colormap or to x:Copy-From-Parent (default).
+<P>
+
+If you set the colormap to x:Copy-From-Parent, the parent window's
+colormap is copied and used by its child. However, the child window
+must have the same visual type as the parent. The parent window must
+not have a colormap of x:None. The colormap is copied by sharing the
+colormap object between the child and parent, not by making a complete
+copy of the colormap contents. Subsequent changes to the parent
+window's colormap attribute do not affect the child window.
+</P>
+</DL>
+<P>
+
+<A NAME="IDX91"></A>
+</P>
+<DL>
+<DT><U>Attribute:</U> <B>x:CW-Cursor</B>
+<DD>The cursor attribute specifies which cursor is to be used when the
+pointer is in the x:Input-Output or x:Input-Only window. You can set
+the cursor to a cursor or x:None (default).
+<P>
+
+If you set the cursor to x:None, the parent's cursor is used when the
+pointer is in the x:Input-Output or x:Input-Only window, and any change
+in the parent's cursor will cause an immediate change in the displayed
+cursor. On the root window, the default cursor is restored.
+</P>
+</DL>
+<P>
+
+<A NAME="IDX92"></A>
+</P>
+<DL>
+<DT><U>Function:</U> <B>x:window-ref</B> <I>window field-name <small>...</small></I>
+<DD>Returns a list of the components specified by <VAR>field-name</VAR>s for the
+specified <VAR>window</VAR>. Allowable <VAR>field-name</VAR>s are a subset of
+those for <CODE>x:window-set!</CODE>:
+<P>
+
+<UL>
+<LI>x:CW-Back-Pixel
+<LI>x:CW-Bit-Gravity
+<LI>x:CW-Win-Gravity
+<LI>x:CW-Backing-Store
+<LI>x:CW-Backing-Planes
+<LI>x:CW-Backing-Pixel
+<LI>x:CW-Override-Redirect
+<LI>x:CW-Save-Under
+<LI>x:CW-Event-Mask
+<LI>x:CW-Dont-Propagate
+<LI>x:CW-Colormap
+</UL>
+</DL>
+<P>
+
+<A NAME="Window Properties and Visibility"></A>
+<HR SIZE="6">
+<A NAME="SEC6"></A>
+<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0>
+<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="Xlibscm.html#SEC5"> &lt; </A>]</TD>
+<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="Xlibscm.html#SEC7"> &gt; </A>]</TD>
+<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="Xlibscm.html#SEC3"> &lt;&lt; </A>]</TD>
+<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="Xlibscm.html#SEC3"> Up </A>]</TD>
+<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="Xlibscm.html#SEC7"> &gt;&gt; </A>]</TD>
+<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="Xlibscm.html#SEC_Top">Top</A>]</TD>
+<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="Xlibscm.html#SEC_Contents">Contents</A>]</TD>
+<TD VALIGN="MIDDLE" ALIGN="LEFT">[Index]</TD>
+<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="Xlibscm.html#SEC_About"> ? </A>]</TD>
+</TR></TABLE>
+<H2> 3.3 Window Properties and Visibility </H2>
+<!--docid::SEC6::-->
+<P>
+
+<A NAME="IDX93"></A>
+</P>
+<DL>
+<DT><U>Function:</U> <B>x:get-window-property</B> <I>window property</I>
+<DD>Returns the (string or list of numbers) value of <VAR>property</VAR> of
+<VAR>window</VAR>.
+<A NAME="IDX94"></A>
+<DT><U>Function:</U> <B>x:get-window-property</B> <I>window property #t</I>
+<DD>Removes and returns the (string or list of numbers) value of
+<VAR>property</VAR> of <VAR>window</VAR>.
+</DL>
+<P>
+
+<A NAME="IDX95"></A>
+</P>
+<DL>
+<DT><U>Function:</U> <B>x:list-properties</B> <I>window</I>
+<DD>Returns a list of the properties (strings) defined for <VAR>window</VAR>.
+</DL>
+<P>
+
+In X parlance, a window which is hidden even when not obscured by other
+windows is <EM>unmapped</EM>; one which
+<A NAME="IDX96"></A>
+<A NAME="IDX97"></A>
+<A NAME="IDX98"></A>
+<A NAME="IDX99"></A>
+shows is <EM>mapped</EM>. It is an unfortunate name-collision with Scheme,
+and is ingrained in the attribute names.
+</P>
+<P>
+
+<A NAME="IDX100"></A>
+</P>
+<DL>
+<DT><U>Function:</U> <B>x:map-window</B> <I>window</I>
+<DD>Maps the <VAR>window</VAR> and all of its subwindows that have had map
+requests. Mapping a window that has an unmapped ancestor does not
+display the window but marks it as eligible for display when the
+ancestor becomes mapped. Such a window is called unviewable. When all
+its ancestors are mapped, the window becomes viewable and will be
+visible on the screen if it is not obscured by another window. This
+function has no effect if the <VAR>window</VAR> is already mapped.
+<P>
+
+If the override-redirect of the window is False and if some other client
+has selected x:Substructure-Redirect-Mask on the parent window, then the X
+server generates a MapRequest event, and the <CODE>x:map-window</CODE>
+function does not map the <VAR>window</VAR>. Otherwise, the <VAR>window</VAR> is
+mapped, and the X server generates a MapNotify event.
+</P>
+<P>
+
+If the <VAR>window</VAR> becomes viewable and no earlier contents for it are
+remembered, the X server tiles the <VAR>window</VAR> with its background. If
+the window's background is undefined, the existing screen contents are
+not altered, and the X server generates zero or more x:Expose events. If
+backing-store was maintained while the <VAR>window</VAR> was unmapped, no
+x:Expose events are generated. If backing-store will now be maintained, a
+full-window exposure is always generated. Otherwise, only visible
+regions may be reported. Similar tiling and exposure take place for any
+newly viewable inferiors.
+</P>
+<P>
+
+If the window is an Input-Output window, <CODE>x:map-window</CODE> generates
+x:Expose events on each Input-Output window that it causes to be displayed.
+If the client maps and paints the window and if the client begins
+processing events, the window is painted twice. To avoid this, first
+ask for x:Expose events and then map the window, so the client processes
+input events as usual. The event list will include x:Expose for each
+window that has appeared on the screen. The client's normal response to
+an x:Expose event should be to repaint the window. This method usually
+leads to simpler programs and to proper interaction with window
+managers.
+</P>
+</DL>
+<P>
+
+<A NAME="IDX101"></A>
+</P>
+<DL>
+<DT><U>Function:</U> <B>x:map-subwindows</B> <I>window</I>
+<DD>Maps all subwindows of a specified <VAR>window</VAR> in top-to-bottom
+stacking order. The X server generates x:Expose events on each newly
+displayed window. This may be much more efficient than mapping many
+windows one at a time because the server needs to perform much of the
+work only once, for all of the windows, rather than for each window.
+</DL>
+<P>
+
+<A NAME="IDX102"></A>
+</P>
+<DL>
+<DT><U>Function:</U> <B>x:unmap-window</B> <I>window</I>
+<DD>Unmaps the specified <VAR>window</VAR> and causes the X server to generate an
+UnmapNotify event. If the specified <VAR>window</VAR> is already unmapped,
+<CODE>x:unmap-window</CODE> has no effect. Normal exposure processing on
+formerly obscured windows is performed. Any child window will no longer
+be visible until another map call is made on the parent. In other
+words, the subwindows are still mapped but are not visible until the
+parent is mapped. Unmapping a <VAR>window</VAR> will generate x:Expose events
+on windows that were formerly obscured by it.
+</DL>
+<P>
+
+<A NAME="IDX103"></A>
+</P>
+<DL>
+<DT><U>Function:</U> <B>x:unmap-subwindows</B> <I>window</I>
+<DD>Unmaps all subwindows for the specified <VAR>window</VAR> in bottom-to-top
+stacking order. It causes the X server to generate an UnmapNotify event
+on each subwindow and x:Expose events on formerly obscured windows. Using
+this function is much more efficient than unmapping multiple windows one
+at a time because the server needs to perform much of the work only
+once, for all of the windows, rather than for each window.
+</DL>
+<P>
+
+<A NAME="Graphics Context"></A>
+<HR SIZE="6">
+<A NAME="SEC7"></A>
+<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0>
+<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="Xlibscm.html#SEC6"> &lt; </A>]</TD>
+<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="Xlibscm.html#SEC9"> &gt; </A>]</TD>
+<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="Xlibscm.html#SEC3"> &lt;&lt; </A>]</TD>
+<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="Xlibscm.html#SEC_Top"> Up </A>]</TD>
+<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="Xlibscm.html#SEC9"> &gt;&gt; </A>]</TD>
+<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="Xlibscm.html#SEC_Top">Top</A>]</TD>
+<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="Xlibscm.html#SEC_Contents">Contents</A>]</TD>
+<TD VALIGN="MIDDLE" ALIGN="LEFT">[Index]</TD>
+<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="Xlibscm.html#SEC_About"> ? </A>]</TD>
+</TR></TABLE>
+<H1> 4. Graphics Context </H1>
+<!--docid::SEC7::-->
+<P>
+
+Most attributes of graphics operations are stored in <EM>GC</EM>s. These
+include line width, line style, plane mask, foreground, background,
+tile, stipple, clipping region, end style, join style, and so on.
+Graphics operations (for example, drawing lines) use these values to
+determine the actual drawing operation.
+</P>
+<P>
+
+<A NAME="IDX104"></A>
+</P>
+<DL>
+<DT><U>Function:</U> <B>x:create-gc</B> <I>drawable field-name value <small>...</small></I>
+<DD>Creates and returns graphics context. The graphics context can be used
+with any destination drawable having the same root and depth as the
+specified <VAR>drawable</VAR>.
+</DL>
+<P>
+
+<A NAME="IDX105"></A>
+</P>
+<DL>
+<DT><U>Function:</U> <B>x:gc-set!</B> <I>graphics-context field-name value <small>...</small></I>
+<DD>Changes the components specified by <VAR>field-name</VAR>s for the specified
+<VAR>graphics-context</VAR>. The restrictions are the same as for
+<CODE>x:create-gc</CODE>. The order in which components are verified and
+altered is server dependent. If an error occurs, a subset of the
+components may have been altered.
+</DL>
+<P>
+
+<A NAME="IDX106"></A>
+</P>
+<DL>
+<DT><U>Function:</U> <B>x:copy-gc-fields!</B> <I>gcontext-src gcontext-dst field-name <small>...</small></I>
+<DD>Copies the components specified by <VAR>field-name</VAR>s from
+<VAR>gcontext-src</VAR> to <VAR>gcontext-dst</VAR>. <VAR>Gcontext-src</VAR> and
+<VAR>gcontext-dst</VAR> must have the same root and depth.
+</DL>
+<P>
+
+<A NAME="IDX107"></A>
+</P>
+<DL>
+<DT><U>Function:</U> <B>x:gc-ref</B> <I>graphics-context field-name <small>...</small></I>
+<DD>Returns a list of the components specified by <VAR>field-name</VAR>s <small>...</small>
+from the specified <VAR>graphics-context</VAR>.
+</DL>
+<P>
+
+<A NAME="SEC8"></A>
+<H2> GC Attributes </H2>
+<!--docid::SEC8::-->
+<P>
+
+Both <CODE>x:create-gc</CODE> and <CODE>x:change-gc</CODE> take one argument
+followed by pairs of arguments, where the first is one of the
+property-name symbols (or its top-level value) listed below; and the
+second is the value to associate with that property.
+</P>
+<P>
+
+<A NAME="IDX108"></A>
+</P>
+<DL>
+<DT><U>Attribute:</U> <B>x:GC-Function</B>
+<DD>The function attributes of a GC are used when you update a section of a
+drawable (the destination) with bits from somewhere else (the source).
+The function in a GC defines how the new destination bits are to be
+computed from the source bits and the old destination bits. x:G-Xcopy is
+typically the most useful because it will work on a color display, but
+special applications may use other functions, particularly in concert
+with particular planes of a color display. The 16 functions are:
+<P>
+
+<TABLE><tr><td>&nbsp;</td><td class=display><pre style="font-family: serif"><TT>
+x:G-Xclear 0
+x:G-Xand (AND src dst)
+x:G-Xand-Reverse (AND src (NOT dst))
+x:G-Xcopy src
+x:G-Xand-Inverted (AND (NOT src) dst)
+x:G-Xnoop dst
+x:G-Xxor (XOR src dst)
+x:G-Xor (OR src dst)
+x:G-Xnor (AND (NOT src) (NOT dst))
+x:G-Xequiv (XOR (NOT src) dst)
+x:G-Xinvert (NOT dst)
+x:G-Xor-Reverse (OR src (NOT dst))
+x:G-Xcopy-Inverted (NOT src)
+x:G-Xor-Inverted (OR (NOT src) dst)
+x:G-Xnand (OR (NOT src) (NOT dst))
+x:G-Xset 1</TT>
+</pre></td></tr></table></DL>
+<P>
+
+<A NAME="IDX109"></A>
+</P>
+<DL>
+<DT><U>Attribute:</U> <B>x:GC-Plane-Mask</B>
+<DD><P>
+
+Many graphics operations depend on either pixel values or planes in a
+GC. The planes attribute is an integer which specifies which planes of
+the destination are to be modified, one bit per plane. A monochrome
+display has only one plane and will be the least significant bit of the
+integer. As planes are added to the display hardware, they will occupy
+more significant bits in the plane mask.
+</P>
+<P>
+
+In graphics operations, given a source and destination pixel, the result
+is computed bitwise on corresponding bits of the pixels. That is, a
+Boolean operation is performed in each bit plane. The plane-mask
+restricts the operation to a subset of planes. <CODE>x:All-Planes</CODE> can be
+used to refer to all planes of the screen simultaneously. The result is
+computed by the following:
+</P>
+<P>
+
+<TABLE><tr><td>&nbsp;</td><td class=display><pre style="font-family: serif">(OR (AND (FUNC src dst) plane-mask) (AND dst (NOT plane-mask)))
+</pre></td></tr></table><P>
+
+Range checking is not performed on a plane-mask value. It is simply
+truncated to the appropriate number of bits.
+</P>
+</DL>
+<P>
+
+<A NAME="IDX110"></A>
+</P>
+<DL>
+<DT><U>Attribute:</U> <B>x:GC-Foreground</B>
+<DD><A NAME="IDX111"></A>
+<DT><U>Attribute:</U> <B>x:GC-Background</B>
+<DD>Range checking is not performed on the values for foreground or
+background. They are simply truncated to the appropriate number of
+bits.
+<P>
+
+Note that foreground and background are not initialized to any values
+likely to be useful in a window.
+</P>
+</DL>
+<P>
+
+<A NAME="IDX112"></A>
+</P>
+<DL>
+<DT><U>Attribute:</U> <B>x:GC-Line-Width</B>
+<DD>The line-width is measured in pixels and either can be greater than or
+equal to one (wide line) or can be the special value zero (thin line).
+<P>
+
+Thin lines (zero line-width) are one-pixel-wide lines drawn using an
+unspecified, device-dependent algorithm. There are only two constraints
+on this algorithm.
+</P>
+<P>
+
+<UL>
+<LI>
+If a line is drawn unclipped from [x1,y1] to [x2,y2] and if another line
+is drawn unclipped from [x1+dx,y1+dy] to [x2+dx,y2+dy], a point [x,y] is
+touched by drawing the first line if and only if the point [x+dx,y+dy]
+is touched by drawing the second line.
+<P>
+
+</P>
+<LI>
+The effective set of points comprising a line cannot be affected by
+clipping. That is, a point is touched in a clipped line if and only if
+the point lies inside the clipping region and the point would be touched
+by the line when drawn unclipped.
+</UL>
+<P>
+
+A wide line drawn from [x1,y1] to [x2,y2] always draws the same pixels
+as a wide line drawn from [x2,y2] to [x1,y1], not counting cap-style and
+join-style. It is recommended that this property be true for thin
+lines, but this is not required. A line-width of zero may differ from a
+line-width of one in which pixels are drawn. This permits the use of
+many manufacturers' line drawing hardware, which may run many times
+faster than the more precisely specified wide lines.
+</P>
+<P>
+
+In general, drawing a thin line will be faster than drawing a wide line
+of width one. However, because of their different drawing algorithms,
+thin lines may not mix well aesthetically with wide lines. If it is
+desirable to obtain precise and uniform results across all displays, a
+client should always use a line-width of one rather than a linewidth of
+zero.
+</P>
+</DL>
+<P>
+
+<A NAME="IDX113"></A>
+</P>
+<DL>
+<DT><U>Attribute:</U> <B>x:GC-Line-Style</B>
+<DD>The line-style defines which sections of a line are drawn:
+<P>
+
+</P>
+<DL COMPACT>
+<DT><TT>x:Line-Solid</TT>
+<DD>The full path of the line is drawn.
+<DT><TT>x:Line-Double-Dash</TT>
+<DD>The full path of the line is drawn, but the even dashes are filled
+differently from the odd dashes (see fill-style) with x:Cap-Butt style used
+where even and odd dashes meet.
+<DT><TT>x:Line-On-Off-Dash</TT>
+<DD>Only the even dashes are drawn, and cap-style applies to all internal
+ends of the individual dashes, except x:Cap-Not-Last is treated as x:Cap-Butt.
+</DL>
+</DL>
+<P>
+
+<A NAME="IDX114"></A>
+</P>
+<DL>
+<DT><U>Attribute:</U> <B>x:GC-Cap-Style</B>
+<DD><P>
+
+The cap-style defines how the endpoints of a path are drawn:
+</P>
+<P>
+
+</P>
+<DL COMPACT>
+<DT><TT>x:Cap-Not-Last</TT>
+<DD>This is equivalent to x:Cap-Butt except that for a line-width of zero the
+final endpoint is not drawn.
+<DT><TT>x:Cap-Butt</TT>
+<DD>The line is square at the endpoint (perpendicular to the slope of the
+line) with no projection beyond.
+<DT><TT>x:Cap-Round</TT>
+<DD>The line has a circular arc with the diameter equal to the line-width,
+centered on the endpoint. (This is equivalent to x:Cap-Butt for line-width
+of zero).
+<DT><TT>x:Cap-Projecting</TT>
+<DD>The line is square at the end, but the path continues beyond the
+endpoint for a distance equal to half the line-width. (This is
+equivalent to x:Cap-Butt for line-width of zero).
+</DL>
+</DL>
+<P>
+
+<A NAME="IDX115"></A>
+</P>
+<DL>
+<DT><U>Attribute:</U> <B>x:GC-Join-Style</B>
+<DD><P>
+
+The join-style defines how corners are drawn for wide lines:
+</P>
+<P>
+
+</P>
+<DL COMPACT>
+<DT><TT>x:Join-Miter</TT>
+<DD>The outer edges of two lines extend to meet at an angle. However, if
+the angle is less than 11 degrees, then a x:Join-Bevel join-style is used
+instead.
+<DT><TT>x:Join-Round</TT>
+<DD>The corner is a circular arc with the diameter equal to the
+line-width, centered on the x:Join-point.
+<DT><TT>x:Join-Bevel</TT>
+<DD>The corner has x:Cap-Butt endpoint styles with the triangular notch filled.
+</DL>
+</DL>
+<P>
+
+<A NAME="IDX116"></A>
+</P>
+<DL>
+<DT><U>Attribute:</U> <B>x:GC-Fill-Style</B>
+<DD><P>
+
+The fill-style defines the contents of the source for line, text, and
+fill requests. For all text and fill requests (for example,
+X:Draw-Text, X:Fill-Rectangle, X:Fill-Polygon, and X:Fill-Arc); for line
+requests with linestyle x:Line-Solid (for example, X:Draw-Line,
+X:Draw-Segments, X:Draw-Rectangle, X:Draw-Arc); and for the even dashes
+for line requests with line-style x:Line-On-Off-Dash or
+x:Line-Double-Dash, the following apply:
+</P>
+<P>
+
+</P>
+<DL COMPACT>
+<DT><TT>x:Fill-Solid</TT>
+<DD>Foreground
+<DT><TT>x:Fill-Tiled</TT>
+<DD>Tile
+<DT><TT>x:Fill-Opaque-Stippled</TT>
+<DD>A tile with the same width and height as stipple, but with background
+everywhere stipple has a zero and with foreground everywhere stipple has
+a one
+<DT><TT>x:Fill-Stippled</TT>
+<DD>Foreground masked by stipple
+</DL>
+<P>
+
+When drawing lines with line-style x:Line-Double-Dash, the odd dashes
+are controlled by the fill-style in the following manner:
+</P>
+<P>
+
+</P>
+<DL COMPACT>
+<DT><TT>x:Fill-Solid</TT>
+<DD>Background
+<DT><TT>x:Fill-Tiled</TT>
+<DD>Same as for even dashes
+<DT><TT>x:Fill-Opaque-Stippled</TT>
+<DD>Same as for even dashes
+<DT><TT>x:Fill-Stippled</TT>
+<DD>Background masked by stipple
+</DL>
+</DL>
+<P>
+
+<A NAME="IDX117"></A>
+</P>
+<DL>
+<DT><U>Attribute:</U> <B>x:GC-Fill-Rule</B>
+<DD>The fill-rule defines what pixels are inside (drawn) for paths given in
+X:Fill-Polygon requests and can be set to x:Even-Odd-Rule or
+x:Winding-Rule.
+<P>
+
+</P>
+<DL COMPACT>
+<DT><TT>x:Even-Odd-Rule</TT>
+<DD>A point is inside if an infinite ray with the point as
+origin crosses the path an odd number of times.
+<DT><TT>x:Winding-Rule</TT>
+<DD>A point is inside if an infinite ray with the point as origin crosses an
+unequal number of clockwise and counterclockwise directed path segments.
+</DL>
+<P>
+
+A clockwise directed path segment is one that crosses the ray from left
+to right as observed from the point. A counterclockwise segment is one
+that crosses the ray from right to left as observed from the point. The
+case where a directed line segment is coincident with the ray is
+uninteresting because you can simply choose a different ray that is not
+coincident with a segment.
+</P>
+<P>
+
+For both x:Even-Odd-Rule and x:Winding-Rule, a point is infinitely
+small, and the path is an infinitely thin line. A pixel is inside if
+the center point of the pixel is inside and the center point is not on
+the boundary. If the center point is on the boundary, the pixel is
+inside if and only if the polygon interior is immediately to its right
+(x increasing direction). Pixels with centers on a horizontal edge are
+a special case and are inside if and only if the polygon interior is
+immediately below (y increasing direction).
+</P>
+</DL>
+<P>
+
+<A NAME="IDX118"></A>
+</P>
+<DL>
+<DT><U>Attribute:</U> <B>x:GC-Tile</B>
+<DD><A NAME="IDX119"></A>
+<DT><U>Attribute:</U> <B>x:GC-Stipple</B>
+<DD>The tile/stipple represents an infinite two-dimensional plane, with the
+tile/stipple replicated in all dimensions.
+<P>
+
+The tile pixmap must have the same root and depth as the GC, or an error
+results. The stipple pixmap must have depth one and must have the same
+root as the GC, or an error results. For stipple operations where the
+fill-style is x:Fill-Stippled but not x:Fill-Opaque-Stippled, the
+stipple pattern is tiled in a single plane and acts as an additional
+clip mask to be ANDed with the clip-mask. Although some sizes may be
+faster to use than others, any size pixmap can be used for tiling or
+stippling.
+</P>
+</DL>
+<P>
+
+<A NAME="IDX120"></A>
+</P>
+<DL>
+<DT><U>Attribute:</U> <B>x:GC-Tile-Stip-X-Origin</B>
+<DD><A NAME="IDX121"></A>
+<DT><U>Attribute:</U> <B>x:GC-Tile-Stip-Y-Origin</B>
+<DD>When the tile/stipple plane is superimposed on a drawable for use in a
+graphics operation, the upper-left corner of some instance of the
+tile/stipple is at the coordinates within the drawable specified by the
+tile/stipple origin. The tile/stipple origin is interpreted relative to
+the origin of whatever destination drawable is specified in a graphics
+request.
+</DL>
+<P>
+
+<A NAME="IDX122"></A>
+</P>
+<DL>
+<DT><U>Attribute:</U> <B>x:GC-Font</B>
+<DD>The font to be used for drawing text.
+</DL>
+<P>
+
+<A NAME="IDX123"></A>
+</P>
+<DL>
+<DT><U>Attribute:</U> <B>x:GC-Subwindow-Mode</B>
+<DD>You can set the subwindow-mode to x:Clip-By-Children or
+x:Include-Inferiors.
+<DL COMPACT>
+<DT><TT>x:Clip-By-Children</TT>
+<DD>Both source and destination windows are additionally clipped by all
+viewable Input-Output children.
+<DT><TT>x:Include-Inferiors</TT>
+<DD>Neither source nor destination window is clipped by inferiors. This
+will result in including subwindow contents in the source and drawing
+through subwindow boundaries of the destination. The use of
+<CODE>x:Include-Inferiors</CODE> on a window of one depth with mapped
+inferiors of differing depth is not illegal, but the semantics are
+undefined by the core protocol.
+</DL>
+</DL>
+<P>
+
+<A NAME="IDX124"></A>
+</P>
+<DL>
+<DT><U>Attribute:</U> <B>x:GC-Graphics-Exposures</B>
+<DD>The graphics-exposure flag controls x:Graphics-Expose event generation
+for X:Copy-Area and X:Copy-Plane requests (and any similar requests
+defined by extensions).
+</DL>
+<P>
+
+<A NAME="IDX125"></A>
+</P>
+<DL>
+<DT><U>Attribute:</U> <B>x:GC-Clip-X-Origin</B>
+<DD><A NAME="IDX126"></A>
+<DT><U>Attribute:</U> <B>x:GC-Clip-Y-Origin</B>
+<DD>The clip-mask origin is interpreted relative to the origin of whatever
+destination drawable is specified in a graphics request.
+</DL>
+<P>
+
+<A NAME="IDX127"></A>
+</P>
+<DL>
+<DT><U>Attribute:</U> <B>x:GC-Clip-Mask</B>
+<DD>The clip-mask restricts writes to the destination drawable. If the
+clip-mask is set to a pixmap, it must have depth one and have the same
+root as the GC, or an error results. If clip-mask is set to
+<A NAME="IDX128"></A>
+<A NAME="IDX129"></A>
+<EM>x:None</EM>, the pixels are always drawn regardless of the clip origin.
+The clip-mask also can be set by calling <CODE>X:Set-Region</CODE>. Only
+pixels where the clip-mask has a bit set to 1 are drawn. Pixels are not
+drawn outside the area covered by the clip-mask or where the clip-mask
+has a bit set to 0. The clip-mask affects all graphics requests. The
+clip-mask does not clip sources. The clip-mask origin is interpreted
+relative to the origin of whatever destination drawable is specified in
+a graphics request.
+</DL>
+<P>
+
+<A NAME="IDX130"></A>
+</P>
+<DL>
+<DT><U>Attribute:</U> <B>x:GC-Dash-Offset</B>
+<DD>Defines the phase of the pattern, specifying how many pixels into the
+dash-list the pattern should actually begin in any single graphics
+request. Dashing is continuous through path elements combined with a
+join-style but is reset to the dash-offset between each sequence of
+joined lines.
+<P>
+
+The unit of measure for dashes is the same for the ordinary
+coordinate system. Ideally, a dash length is measured along
+the slope of the line, but implementations are only required
+to match this ideal for horizontal and vertical lines.
+Failing the ideal semantics, it is suggested that the length
+be measured along the major axis of the line. The major
+axis is defined as the x axis for lines drawn at an angle of
+between -45 and +45 degrees or between 135 and 225 degrees
+from the x axis. For all other lines, the major axis is the
+y axis.
+</P>
+</DL>
+<P>
+
+<A NAME="IDX131"></A>
+</P>
+<DL>
+<DT><U>Attribute:</U> <B>x:GC-Dash-List</B>
+<DD>There must be at least one element in the specified <VAR>dash-list</VAR>.
+The initial and alternating elements (second, fourth, and so on) of the
+<VAR>dash-list</VAR> are the even dashes, and the others are the odd dashes.
+Each element specifies a dash length in pixels. All of the elements
+must be nonzero. Specifying an odd-length list is equivalent to
+specifying the same list concatenated with itself to produce an
+even-length list.
+</DL>
+<P>
+
+<A NAME="IDX132"></A>
+</P>
+<DL>
+<DT><U>Attribute:</U> <B>x:GC-Arc-Mode</B>
+<DD>The arc-mode controls filling in the X:Fill-Arcs function and can be set
+to x:Arc-Pie-Slice or x:Arc-Chord.
+<DL COMPACT>
+<DT><TT>x:Arc-Pie-Slice</TT>
+<DD>The arcs are pie-slice filled.
+<DT><TT>x:Arc-Chord</TT>
+<DD>The arcs are chord filled.
+</DL>
+</DL>
+<P>
+
+<A NAME="Cursor"></A>
+<HR SIZE="6">
+<A NAME="SEC9"></A>
+<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0>
+<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="Xlibscm.html#SEC7"> &lt; </A>]</TD>
+<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="Xlibscm.html#SEC10"> &gt; </A>]</TD>
+<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="Xlibscm.html#SEC7"> &lt;&lt; </A>]</TD>
+<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="Xlibscm.html#SEC_Top"> Up </A>]</TD>
+<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="Xlibscm.html#SEC10"> &gt;&gt; </A>]</TD>
+<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="Xlibscm.html#SEC_Top">Top</A>]</TD>
+<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="Xlibscm.html#SEC_Contents">Contents</A>]</TD>
+<TD VALIGN="MIDDLE" ALIGN="LEFT">[Index]</TD>
+<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="Xlibscm.html#SEC_About"> ? </A>]</TD>
+</TR></TABLE>
+<H1> 5. Cursor </H1>
+<!--docid::SEC9::-->
+<P>
+
+<A NAME="IDX133"></A>
+</P>
+<DL>
+<DT><U>Function:</U> <B>x:create-cursor</B> <I>display shape</I>
+<DD>X provides a set of standard cursor shapes in a special font named
+<A NAME="IDX134"></A>
+<EM>cursor</EM>. Applications are encouraged to use this interface for
+their cursors because the font can be customized for the individual
+display type. The <VAR>shape</VAR> argument specifies which glyph of the standard
+fonts to use.
+<P>
+
+The hotspot comes from the information stored in the cursor font. The
+initial colors of a cursor are a black foreground and a white background
+(see X:Recolor-Cursor). The names of all cursor shapes are defined with
+the prefix XC: in `<TT>x11.scm</TT>'.
+</P>
+<P>
+
+<A NAME="IDX135"></A>
+<DT><U>Function:</U> <B>x:create-cursor</B> <I>source-font source-char mask-font mask-char fgc bgc</I>
+<DD>Creates a cursor from the source and mask bitmaps obtained from the
+specified font glyphs. The integer <VAR>source-char</VAR> must be a defined
+glyph in <VAR>source-font</VAR>. The integer <VAR>mask-char</VAR> must be a
+defined glyph in <VAR>mask-font</VAR>. The origins of the <VAR>source-char</VAR>
+and <VAR>mask-char</VAR> glyphs are positioned coincidently and define the
+hotspot. The <VAR>source-char</VAR> and <VAR>mask-char</VAR> need not have the
+same bounding box metrics, and there is no restriction on the placement
+of the hotspot relative to the bounding boxes.
+</P>
+<P>
+
+<A NAME="IDX136"></A>
+<DT><U>Function:</U> <B>x:create-cursor</B> <I>source-font source-char #f #f fgc bgc</I>
+<DD>If <VAR>mask-font</VAR> and <VAR>mask-char</VAR> are #f, all pixels of the source
+are displayed.
+</P>
+<P>
+
+<A NAME="IDX137"></A>
+<DT><U>Function:</U> <B>x:create-cursor</B> <I>source-pixmap mask-pixmap fgc bgc origin</I>
+<DD><VAR>mask-pixmap</VAR> must be the same size as the pixmap defined by the
+<VAR>source-pixmap</VAR> argument. The foreground and background RGB values
+must be specified using <VAR>foreground-color</VAR> and
+<VAR>background-color</VAR>, even if the X server only has a x:Static-Gray or
+x:Gray-Scale screen. The hotspot must be a point within the
+<VAR>source-pixmap</VAR>.
+</P>
+<P>
+
+<CODE>X:Create-Cursor</CODE> creates and returns a cursor. The
+<VAR>foreground-color</VAR> is used for the pixels set to 1 in the source,
+and the <VAR>background-color</VAR> is used for the pixels set to 0. Both
+source and mask must have depth one but can have any root. The
+<VAR>mask-pixmap</VAR> defines the shape of the cursor. The pixels set to 1
+in <VAR>mask-pixmap</VAR> define which source pixels are displayed, and the
+pixels set to 0 define which pixels are ignored.
+</P>
+<P>
+
+<A NAME="IDX138"></A>
+<DT><U>Function:</U> <B>x:create-cursor</B> <I>source-pixmap #f fgc bgc origin</I>
+<DD>If <VAR>mask-pixmap</VAR> is #f, all pixels of the source are displayed.
+</P>
+</DL>
+<P>
+
+<A NAME="Colormap"></A>
+<HR SIZE="6">
+<A NAME="SEC10"></A>
+<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0>
+<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="Xlibscm.html#SEC9"> &lt; </A>]</TD>
+<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="Xlibscm.html#SEC11"> &gt; </A>]</TD>
+<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="Xlibscm.html#SEC9"> &lt;&lt; </A>]</TD>
+<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="Xlibscm.html#SEC_Top"> Up </A>]</TD>
+<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="Xlibscm.html#SEC11"> &gt;&gt; </A>]</TD>
+<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="Xlibscm.html#SEC_Top">Top</A>]</TD>
+<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="Xlibscm.html#SEC_Contents">Contents</A>]</TD>
+<TD VALIGN="MIDDLE" ALIGN="LEFT">[Index]</TD>
+<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="Xlibscm.html#SEC_About"> ? </A>]</TD>
+</TR></TABLE>
+<H1> 6. Colormap </H1>
+<!--docid::SEC10::-->
+<P>
+
+<A NAME="IDX139"></A>
+<A NAME="IDX140"></A>
+A <EM>colormap</EM> maps pixel values to <EM>RGB</EM> color space values.
+</P>
+<P>
+
+<A NAME="IDX141"></A>
+</P>
+<DL>
+<DT><U>Function:</U> <B>x:create-colormap</B> <I>window visual alloc-policy</I>
+<DD><VAR>window</VAR> specifies the window on whose screen you want to create a
+colormap. <VAR>visual</VAR> specifies a visual type supported on the screen.
+<VAR>alloc-policy</VAR> Specifies the colormap entries to be allocated. You
+can pass <CODE>X:Alloc-None</CODE> or <CODE>X:Alloc-All</CODE>.
+<P>
+
+The <CODE>X:Create-Colormap</CODE> function creates and returns a colormap of
+the specified <VAR>visual</VAR> type for the screen on which <VAR>window</VAR>
+resides. Note that <VAR>window</VAR> is used only to determine the screen.
+</P>
+<P>
+
+</P>
+<DL COMPACT>
+<DT>`<SAMP>X:Gray-Scale</SAMP>'
+<DD><DT>`<SAMP>X:Pseudo-Color</SAMP>'
+<DD><DT>`<SAMP>X:Direct-Color</SAMP>'
+<DD>The initial values of the colormap entries are undefined.
+<P>
+
+</P>
+<DT>`<SAMP>X:Static-Gray</SAMP>'
+<DD><DT>`<SAMP>X:Static-Color</SAMP>'
+<DD><DT>`<SAMP>X:True-Color</SAMP>'
+<DD>The entries have defined values, but those values are specific to
+<VAR>visual</VAR> and are not defined by X. The <VAR>alloc-policy</VAR> must be
+`<SAMP>X:Alloc-None</SAMP>'.
+<P>
+
+</DL>
+<P>
+
+For the other visual classes, if <VAR>alloc-policy</VAR> is
+`<SAMP>X:Alloc-None</SAMP>', the colormap initially has no allocated entries,
+and clients can allocate them.
+</P>
+<P>
+
+If <VAR>alloc-policy</VAR> is `<SAMP>X:Alloc-All</SAMP>', the entire colormap is
+allocated writable. The initial values of all allocated entries are
+undefined.
+</P>
+<P>
+
+</P>
+<DL COMPACT>
+<DT>`<SAMP>X:Gray-Scale</SAMP>'
+<DD><DT>`<SAMP>X:Pseudo-Color</SAMP>'
+<DD>The effect is as if an <CODE>XAllocColorCells</CODE> call returned all pixel
+values from zero to N - 1, where N is the colormap entries value in
+<VAR>visual</VAR>.
+<P>
+
+</P>
+<DT>`<SAMP>X:Direct-Color</SAMP>'
+<DD>The effect is as if an <CODE>XAllocColorPlanes</CODE> call returned a pixel
+value of zero and red_mask, green_mask, and blue_mask values containing
+the same bits as the corresponding masks in the specified visual.
+</DL>
+<P>
+
+</P>
+</DL>
+<P>
+
+To create a new colormap when the allocation out of a previously
+shared colormap has failed because of resource exhaustion, use:
+</P>
+<P>
+
+<A NAME="IDX142"></A>
+</P>
+<DL>
+<DT><U>Function:</U> <B>x:copy-colormap-and-free</B> <I>colormap</I>
+<DD><P>
+
+Creates and returns a colormap of the same visual type and for the same
+screen as the specified <VAR>colormap</VAR>. It also moves all of the
+client's existing allocation from the specified <VAR>colormap</VAR> to the
+new colormap with their color values intact and their read-only or
+writable characteristics intact and frees those entries in the specified
+colormap. Color values in other entries in the new colormap are
+undefined. If the specified colormap was created by the client with
+alloc set to `<SAMP>X:Alloc-All</SAMP>', the new colormap is also created with
+`<SAMP>X:Alloc-All</SAMP>', all color values for all entries are copied from the
+specified <VAR>colormap</VAR>, and then all entries in the specified
+<VAR>colormap</VAR> are freed. If the specified <VAR>colormap</VAR> was not
+created by the client with `<SAMP>X:Alloc-All</SAMP>', the allocations to be moved
+are all those pixels and planes that have been allocated by the client
+and that have not been freed since they were allocated.
+</P>
+<P>
+
+</P>
+</DL>
+<P>
+
+A <EM>colormap</EM> maps pixel values to elements of the <EM>RGB</EM>
+datatype. An <VAR>RGB</VAR> is a list or vector of 3 integers, describing
+the red, green, and blue intensities respectively. The integers are in
+the range 0 - 65535.
+</P>
+<P>
+
+<A NAME="IDX143"></A>
+</P>
+<DL>
+<DT><U>Function:</U> <B>x:alloc-colormap-cells</B> <I>colormap ncolors nplanes</I>
+<DD><A NAME="IDX144"></A>
+<DT><U>Function:</U> <B>x:alloc-colormap-cells</B> <I>colormap ncolors nplanes contiguous?</I>
+<DD><P>
+
+The <CODE>X:Alloc-Color-Cells</CODE> function allocates read/write color
+cells. The number of colors, <VAR>ncolors</VAR> must be positive and the
+number of planes, <VAR>nplanes</VAR> nonnegative. If <VAR>ncolors</VAR> and
+nplanes are requested, then <VAR>ncolors</VAR> pixels and nplane plane masks
+are returned. No mask will have any bits set to 1 in common with any
+other mask or with any of the pixels. By ORing together each pixel with
+zero or more masks, <VAR>ncolors</VAR> * 2^<VAR>nplanes</VAR> distinct pixels can
+be produced. All of these are allocated writable by the request.
+</P>
+<P>
+
+</P>
+<DL COMPACT>
+<DT>`<SAMP>x:Gray-Scale</SAMP>'
+<DD><DT>`<SAMP>x:Pseudo-Color</SAMP>'
+<DD>Each mask has exactly one bit set to 1. If <VAR>contiguous?</VAR> is
+non-false and if all masks are ORed together, a single contiguous set of
+bits set to 1 is formed.
+<DT>`<SAMP>x:Direct-Color</SAMP>'
+<DD>Each mask has exactly three bits set to 1. If <VAR>contiguous?</VAR> is
+non-false and if all masks are ORed together, three contiguous sets of
+bits set to 1 (one within each pixel subfield) is formed.
+</DL>
+<P>
+
+The RGB values of the allocated entries are undefined.
+<CODE>X:Alloc-Color-Cells</CODE> returns a list of two uniform arrays if it
+succeeded or #f if it failed. The first array has the pixels allocated
+and the second has the plane-masks.
+</P>
+<P>
+
+<A NAME="IDX145"></A>
+<DT><U>Function:</U> <B>x:alloc-colormap-cells</B> <I>colormap ncolors rgb</I>
+<DD><A NAME="IDX146"></A>
+<DT><U>Function:</U> <B>x:alloc-colormap-cells</B> <I>colormap ncolors rgb contiguous?</I>
+<DD></P>
+<P>
+
+The specified <VAR>ncolors</VAR> must be positive; and <VAR>rgb</VAR> a list or
+vector of 3 nonnegative integers. If <VAR>ncolors</VAR> colors, <VAR>nreds</VAR>
+reds, <VAR>ngreens</VAR> greens, and <VAR>nblues</VAR> blues are requested,
+<VAR>ncolors</VAR> pixels are returned; and the masks have <VAR>nreds</VAR>,
+<VAR>ngreens</VAR>, and <VAR>nblues</VAR> bits set to 1, respectively. If
+<VAR>contiguous?</VAR> is non-false, each mask will have a contiguous set of
+bits set to 1. No mask will have any bits set to 1 in common with any
+other mask or with any of the pixels.
+</P>
+<P>
+
+Each mask will lie within the corresponding pixel subfield. By ORing
+together subsets of masks with each pixel value, <VAR>ncolors</VAR> *
+2(<VAR>nreds</VAR>+<VAR>ngreens</VAR>+<VAR>nblues</VAR>) distinct pixel values can be
+produced. All of these are allocated by the request. However, in the
+colormap, there are only <VAR>ncolors</VAR> * 2^<VAR>nreds</VAR> independent red
+entries, <VAR>ncolors</VAR> * 2^<VAR>ngreens</VAR> independent green entries, and
+<VAR>ncolors</VAR> * 2^<VAR>nblues</VAR> independent blue entries.
+</P>
+<P>
+
+<CODE>X:Alloc-Color-Cells</CODE> returns a list if it succeeded or #f if it
+failed. The first element of the list has an array of the pixels
+allocated. The second, third, and fourth elements are the red, green,
+and blue plane-masks.
+</P>
+</DL>
+<P>
+
+<A NAME="IDX147"></A>
+</P>
+<DL>
+<DT><U>Function:</U> <B>x:free-colormap-cells</B> <I>colormap pixels planes</I>
+<DD><A NAME="IDX148"></A>
+<DT><U>Function:</U> <B>x:free-colormap-cells</B> <I>colormap pixels</I>
+<DD><P>
+
+Frees the cells represented by pixels whose values are in the
+<VAR>pixels</VAR> unsigned-integer uniform-vector. The <VAR>planes</VAR> argument
+should not have any bits set to 1 in common with any of the pixels. The
+set of all pixels is produced by ORing together subsets of the
+<VAR>planes</VAR> argument with the pixels. The request frees all of these
+pixels that were allocated by the client. Note that freeing an
+individual pixel obtained from <CODE>X:Alloc-Colormap-Cells</CODE> with a
+planes argument may not actually allow it to be reused until all of its
+related pixels are also freed. Similarly, a read-only entry is not
+actually freed until it has been freed by all clients, and if a client
+allocates the same read-only entry multiple times, it must free the
+entry that many times before the entry is actually freed.
+</P>
+<P>
+
+All specified pixels that are allocated by the client in the
+<VAR>colormap</VAR> are freed, even if one or more pixels produce an error.
+It is an error if a specified pixel is not allocated by the client (that
+is, is unallocated or is only allocated by another client) or if the
+colormap was created with all entries writable (by passing
+`<SAMP>x:Alloc-All</SAMP>' to <CODE>X:Create-Colormap</CODE>). If more than one pixel
+is in error, the one that gets reported is arbitrary.
+</P>
+</DL>
+<P>
+
+<A NAME="IDX149"></A>
+</P>
+<DL>
+<DT><U>Function:</U> <B>x:colormap-find-color</B> <I>colormap rgb</I>
+<DD><P>
+
+<VAR>rgb</VAR> is a list or vector of 3 integers, describing the red, green,
+and blue intensities respectively; or an integer `<SAMP>#x<I>rrggbb</I></SAMP>',
+packing red, green and blue intensities in the range 0 - 255.
+</P>
+<P>
+
+<A NAME="IDX150"></A>
+<DT><U>Function:</U> <B>x:colormap-find-color</B> <I>colormap color-name</I>
+<DD></P>
+<P>
+
+The case-insensitive string <VAR>color_name</VAR> specifies the name of a
+color (for example, `<TT>red</TT>')
+</P>
+<P>
+
+<CODE>X:Colormap-Find-Color</CODE> allocates a read-only colormap entry
+corresponding to the closest RGB value supported by the hardware.
+<CODE>X:Colormap-Find-Color</CODE> returns the pixel value of the color
+closest to the specified <VAR>RGB</VAR> or <VAR>color_name</VAR> elements
+supported by the hardware, if successful; otherwise
+<CODE>X:Colormap-Find-Color</CODE> returns #f.
+</P>
+<P>
+
+Multiple clients that request the same effective RGB value can
+be assigned the same read-only entry, thus allowing entries to be
+shared. When the last client deallocates a shared cell, it is
+deallocated.
+</P>
+<P>
+
+</P>
+</DL>
+<P>
+
+<A NAME="IDX151"></A>
+</P>
+<DL>
+<DT><U>Function:</U> <B>x:color-ref</B> <I>colormap pixel</I>
+<DD><P>
+
+Returns a list of 3 integers, describing the red, green,
+and blue intensities respectively of the <VAR>colormap</VAR> entry of the
+cell indexed by <VAR>pixel</VAR>.
+</P>
+<P>
+
+The integer <VAR>pixel</VAR> must be a valid index into <VAR>colormap</VAR>.
+</P>
+</DL>
+<P>
+
+<A NAME="IDX152"></A>
+</P>
+<DL>
+<DT><U>Function:</U> <B>X:Color-Set!</B> <I>colormap pixel rgb</I>
+<DD><P>
+
+<VAR>rgb</VAR> is a list or vector of 3 integers, describing the red, green,
+and blue intensities respectively; or an integer `<SAMP>#x<I>rrggbb</I></SAMP>',
+packing red, green and blue intensities in the range 0 - 255.
+</P>
+<P>
+
+<A NAME="IDX153"></A>
+<DT><U>Function:</U> <B>X:Color-Set!</B> <I>colormap pixel color-name</I>
+<DD></P>
+<P>
+
+The case-insensitive string <VAR>color_name</VAR> specifies the name of a
+color (for example, `<TT>red</TT>')
+</P>
+<P>
+
+The integer <VAR>pixel</VAR> must be a valid index into <VAR>colormap</VAR>.
+</P>
+<P>
+
+<CODE>X:Color-Set!</CODE> changes the <VAR>colormap</VAR> entry of the read/write
+cell indexed by <VAR>pixel</VAR>. If the <VAR>colormap</VAR> is an installed map
+for its screen, the changes are visible immediately.
+</P>
+<P>
+
+</P>
+</DL>
+<P>
+
+<A NAME="IDX154"></A>
+</P>
+<DL>
+<DT><U>Function:</U> <B>x:install-colormap</B> <I>colormap</I>
+<DD><P>
+
+Installs the specified <VAR>colormap</VAR> for its associated screen. All
+windows associated with <VAR>colormap</VAR> immediately display with true
+colors. A colormap is associated with a window when the window is
+created or its attributes changed.
+</P>
+<P>
+
+If the specified colormap is not already an installed colormap, the X
+server generates a ColormapNotify event on each window that has that
+colormap.
+</P>
+<P>
+
+</P>
+</DL>
+<P>
+
+<A NAME="IDX155"></A>
+</P>
+<DL>
+<DT><U>Function:</U> <B>x:ccc</B> <I>colormap</I>
+<DD>Returns the Color-Conversion-Context of <VAR>colormap</VAR>.
+</DL>
+<P>
+
+<A NAME="Rendering"></A>
+<HR SIZE="6">
+<A NAME="SEC11"></A>
+<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0>
+<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="Xlibscm.html#SEC10"> &lt; </A>]</TD>
+<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="Xlibscm.html#SEC14"> &gt; </A>]</TD>
+<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="Xlibscm.html#SEC10"> &lt;&lt; </A>]</TD>
+<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="Xlibscm.html#SEC_Top"> Up </A>]</TD>
+<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="Xlibscm.html#SEC14"> &gt;&gt; </A>]</TD>
+<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="Xlibscm.html#SEC_Top">Top</A>]</TD>
+<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="Xlibscm.html#SEC_Contents">Contents</A>]</TD>
+<TD VALIGN="MIDDLE" ALIGN="LEFT">[Index]</TD>
+<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="Xlibscm.html#SEC_About"> ? </A>]</TD>
+</TR></TABLE>
+<H1> 7. Rendering </H1>
+<!--docid::SEC11::-->
+<P>
+
+<A NAME="IDX156"></A>
+</P>
+<DL>
+<DT><U>Function:</U> <B>x:flush</B> <I>display</I>
+<DD><A NAME="IDX157"></A>
+<DT><U>Function:</U> <B>x:flush</B> <I>window</I>
+<DD>Flushes the output buffer. Some client applications need not use this
+function because the output buffer is automatically flushed as needed by
+calls to X:Pending, X:Next-Event, and X:Window-Event. Events generated
+by the server may be enqueued into the library's event queue.
+<P>
+
+<A NAME="IDX158"></A>
+<DT><U>Function:</U> <B>x:flush</B> <I>gc</I>
+<DD>Forces sending of GC component changes.
+</P>
+<P>
+
+Xlib usually defers sending changes to the components of a GC to the
+server until a graphics function is actually called with that GC. This
+permits batching of component changes into a single server request. In
+some circumstances, however, it may be necessary for the client to
+explicitly force sending the changes to the server. An example might be
+when a protocol extension uses the GC indirectly, in such a way that the
+extension interface cannot know what GC will be used.
+</P>
+</DL>
+<P>
+
+<A NAME="IDX159"></A>
+</P>
+<DL>
+<DT><U>Function:</U> <B>x:clear-area</B> <I>window (x-pos y-pos) (width height) expose?</I>
+<DD>Paints a rectangular area in the specified <VAR>window</VAR> according to the
+specified dimensions with the <VAR>window</VAR>'s background pixel or pixmap.
+The subwindow-mode effectively is `<SAMP>x:Clip-By-Children</SAMP>'. If width
+is zero, it is replaced with the current width of the <VAR>window</VAR> minus
+x. If height is zero, it is replaced with the current height of the
+<VAR>window</VAR> minus y. If the <VAR>window</VAR> has a defined background
+tile, the rectangle clipped by any children is filled with this tile.
+If the <VAR>window</VAR> has background x:None, the contents of the
+<VAR>window</VAR> are not changed. In either case, if <VAR>expose?</VAR> is True,
+one or more x:Expose events are generated for regions of the rectangle
+that are either visible or are being retained in a backing store. If
+you specify a <VAR>window</VAR> whose class is x:Input-Only, an error
+results.
+</DL>
+<P>
+
+<A NAME="IDX160"></A>
+</P>
+<DL>
+<DT><U>Function:</U> <B>x:fill-rectangle</B> <I>window gcontext position size</I>
+<DD><P>
+
+</P>
+</DL>
+<P>
+
+<A NAME="SEC12"></A>
+<H2> Draw Strings </H2>
+<!--docid::SEC12::-->
+<P>
+
+<A NAME="IDX161"></A>
+</P>
+<DL>
+<DT><U>Function:</U> <B>x:draw-string</B> <I>drawable gc position string</I>
+<DD><VAR>Position</VAR> specifies coordinates relative to the origin of
+<VAR>drawable</VAR> of the origin of the first character to be drawn.
+<P>
+
+<CODE>x:draw-string</CODE> draws the characters of <VAR>string</VAR>, starting at
+<VAR>position</VAR>.
+</P>
+</DL>
+<P>
+
+<A NAME="IDX162"></A>
+</P>
+<DL>
+<DT><U>Function:</U> <B>x:image-string</B> <I>drawable gc position string</I>
+<DD><VAR>Position</VAR> specifies coordinates relative to the origin of
+<VAR>drawable</VAR> of the origin of the first character to be drawn.
+<P>
+
+<CODE>x:image-string</CODE> draws the characters <EM>and background</EM> of
+<VAR>string</VAR>, starting at <VAR>position</VAR>.
+</P>
+</DL>
+<P>
+
+<A NAME="SEC13"></A>
+<H2> Draw Shapes </H2>
+<!--docid::SEC13::-->
+<P>
+
+<A NAME="IDX163"></A>
+</P>
+<DL>
+<DT><U>Function:</U> <B>x:draw-points</B> <I>drawable gc position <small>...</small></I>
+<DD><VAR>Position</VAR> <small>...</small> specifies coordinates of the point to be drawn.
+<P>
+
+<A NAME="IDX164"></A>
+<DT><U>Function:</U> <B>x:draw-points</B> <I>drawable gc x y <small>...</small></I>
+<DD>(<VAR>x</VAR>, <VAR>y</VAR>) <small>...</small> specifies coordinates of the point to be
+drawn.
+</P>
+<P>
+
+<A NAME="IDX165"></A>
+<DT><U>Function:</U> <B>x:draw-points</B> <I>drawable gc point-array</I>
+<DD><VAR>point-array</VAR> is a uniform short array of rank 2, whose rightmost
+index spans a range of 2.
+</P>
+<P>
+
+The <CODE>X:Draw-Points</CODE> procedure uses the foreground pixel and
+function components of the <VAR>gc</VAR> to draw points into <VAR>drawable</VAR>
+at the positions (relative to the origin of <VAR>drawable</VAR>) specified.
+</P>
+<P>
+
+<CODE>X:Draw-Points</CODE> uses these <VAR>gc</VAR> components: function,
+planemask, foreground, subwindow-mode, clip-x-origin, clip-y-origin, and
+clip-mask.
+</P>
+</DL>
+<P>
+
+<A NAME="IDX166"></A>
+</P>
+<DL>
+<DT><U>Function:</U> <B>x:draw-segments</B> <I>drawable gc pos1 pos2 <small>...</small></I>
+<DD><VAR>Pos1</VAR>, <VAR>pos2</VAR>, <small>...</small> specify coordinates to be connected by
+segments.
+<P>
+
+<A NAME="IDX167"></A>
+<DT><U>Function:</U> <B>x:draw-segments</B> <I>drawable gc x1 y1 x2 y2 <small>...</small></I>
+<DD>(<VAR>x1</VAR>, <VAR>y1</VAR>), (<VAR>x2</VAR>, <VAR>y2</VAR>) <small>...</small> specify coordinates
+to be connected by segments.
+</P>
+<P>
+
+<A NAME="IDX168"></A>
+<DT><U>Function:</U> <B>x:draw-segments</B> <I>drawable gc point-array</I>
+<DD><VAR>point-array</VAR> is a uniform short array of rank 2, whose rightmost
+index spans a range of 2.
+</P>
+<P>
+
+The <CODE>X:Draw-Segments</CODE> procedure uses the components of the
+specified <VAR>gc</VAR> to draw multiple unconnected lines between disjoint
+adjacent pair of points passed as arguments. It draws the segments in
+order and does not perform joining at coincident endpoints. For any
+given line, <CODE>X:Draw-Segments</CODE> does not draw a pixel more than once.
+If thin (zero line-width) segments intersect, the intersecting pixels
+are drawn multiple times. If wide segments intersect, the intersecting
+pixels are drawn only once, as though the entire PolyLine protocol
+request were a single, filled shape. <CODE>X:Draw-Segments</CODE> treats all
+coordinates as relative to the origin of <VAR>drawable</VAR>.
+</P>
+<P>
+
+<CODE>X:Draw-Segments</CODE> uses these <VAR>gc</VAR> components: function,
+plane-mask, line-width, line-style, cap-style, fill-style,
+subwindow-mode, clip-x-origin, clip-y-origin, and clip-mask, join-style.
+It also use these <VAR>gc</VAR> mode-dependent components: foreground,
+background, tile, stipple, tilestipple-x-origin, tile-stipple-y-origin,
+dash-offset, and dash-list.
+</P>
+</DL>
+<P>
+
+<A NAME="IDX169"></A>
+</P>
+<DL>
+<DT><U>Function:</U> <B>x:draw-lines</B> <I>drawable gc pos1 pos2 <small>...</small></I>
+<DD><VAR>Pos1</VAR>, <VAR>pos2</VAR>, <small>...</small> specify coordinates to be connected by
+lines.
+<P>
+
+<A NAME="IDX170"></A>
+<DT><U>Function:</U> <B>x:draw-lines</B> <I>drawable gc x1 y1 x2 y2 <small>...</small></I>
+<DD>(<VAR>x1</VAR>, <VAR>y1</VAR>), (<VAR>x2</VAR>, <VAR>y2</VAR>) <small>...</small> specify coordinates
+to be connected by lines.
+</P>
+<P>
+
+<A NAME="IDX171"></A>
+<DT><U>Function:</U> <B>x:draw-lines</B> <I>drawable gc point-array</I>
+<DD><VAR>point-array</VAR> is a uniform short array of rank 2, whose rightmost
+index spans a range of 2.
+</P>
+<P>
+
+The <CODE>X:Draw-Lines</CODE> procedure uses the components of the specified
+<VAR>gc</VAR> to draw lines between each adjacent pair of points passed as
+arguments. It draws the lines in order. The lines join correctly at
+all intermediate points, and if the first and last points coincide, the
+first and last lines also join correctly. For any given line,
+<CODE>X:Draw-Lines</CODE> does not draw a pixel more than once. If thin (zero
+line-width) lines intersect, the intersecting pixels are drawn multiple
+times. If wide lines intersect, the intersecting pixels are drawn only
+once, as though the entire PolyLine protocol request were a single,
+filled shape. <CODE>X:Draw-Lines</CODE> treats all coordinates as relative to
+the origin of <VAR>drawable</VAR>.
+</P>
+<P>
+
+<CODE>X:Draw-Lines</CODE> uses these <VAR>gc</VAR> components: function,
+plane-mask, line-width, line-style, cap-style, fill-style,
+subwindow-mode, clip-x-origin, clip-y-origin, and clip-mask, join-style.
+It also use these <VAR>gc</VAR> mode-dependent components: foreground,
+background, tile, stipple, tilestipple-x-origin, tile-stipple-y-origin,
+dash-offset, and dash-list.
+</P>
+</DL>
+<P>
+
+<A NAME="IDX172"></A>
+</P>
+<DL>
+<DT><U>Function:</U> <B>x:fill-polygon</B> <I>drawable gc pos1 pos2 <small>...</small></I>
+<DD><VAR>Pos1</VAR>, <VAR>pos2</VAR>, <small>...</small> specify coordinates of the border path.
+<P>
+
+<A NAME="IDX173"></A>
+<DT><U>Function:</U> <B>x:fill-polygon</B> <I>drawable gc x1 y1 x2 y2 <small>...</small></I>
+<DD>(<VAR>x1</VAR>, <VAR>y1</VAR>), (<VAR>x2</VAR>, <VAR>y2</VAR>) <small>...</small> specify coordinates
+of the border path.
+</P>
+<P>
+
+<A NAME="IDX174"></A>
+<DT><U>Function:</U> <B>x:fill-polygon</B> <I>drawable gc point-array</I>
+<DD><VAR>point-array</VAR> is a uniform short array of rank 2, whose rightmost
+index spans a range of 2.
+</P>
+<P>
+
+The path is closed automatically if the last point in the list or
+<VAR>point-array</VAR> does not coincide with the first point.
+</P>
+<P>
+
+The <CODE>X:Fill-Polygon</CODE> procedure uses the components of the specified
+<VAR>gc</VAR> to fill the region closed by the specified path.
+<CODE>X:Fill-Polygon</CODE> does not draw a pixel of the region more than
+once. <CODE>X:Fill-Polygon</CODE> treats all coordinates as relative to the
+origin of <VAR>drawable</VAR>.
+</P>
+<P>
+
+<CODE>X:Fill-Polygon</CODE> uses these <VAR>gc</VAR> components: function,
+planemask, fill-style, fill-rule, subwindow-mode, clip-x-origin,
+clip-y-origin, and clip-mask. It also use these <VAR>gc</VAR> mode-dependent
+components: foreground, background, tile, stipple,
+tile-stipple-x-origin, and tile-stipple-y-origin.
+</P>
+</DL>
+<P>
+
+<A NAME="Images"></A>
+<HR SIZE="6">
+<A NAME="SEC14"></A>
+<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0>
+<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="Xlibscm.html#SEC11"> &lt; </A>]</TD>
+<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="Xlibscm.html#SEC15"> &gt; </A>]</TD>
+<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="Xlibscm.html#SEC11"> &lt;&lt; </A>]</TD>
+<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="Xlibscm.html#SEC_Top"> Up </A>]</TD>
+<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="Xlibscm.html#SEC15"> &gt;&gt; </A>]</TD>
+<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="Xlibscm.html#SEC_Top">Top</A>]</TD>
+<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="Xlibscm.html#SEC_Contents">Contents</A>]</TD>
+<TD VALIGN="MIDDLE" ALIGN="LEFT">[Index]</TD>
+<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="Xlibscm.html#SEC_About"> ? </A>]</TD>
+</TR></TABLE>
+<H1> 8. Images </H1>
+<!--docid::SEC14::-->
+<P>
+
+<A NAME="IDX175"></A>
+</P>
+<DL>
+<DT><U>Function:</U> <B>x:read-bitmap-file</B> <I>drawable file</I>
+<DD><P>
+
+</P>
+</DL>
+<P>
+
+<A NAME="Event"></A>
+<HR SIZE="6">
+<A NAME="SEC15"></A>
+<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0>
+<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="Xlibscm.html#SEC14"> &lt; </A>]</TD>
+<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="Xlibscm.html#SEC16"> &gt; </A>]</TD>
+<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="Xlibscm.html#SEC14"> &lt;&lt; </A>]</TD>
+<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="Xlibscm.html#SEC_Top"> Up </A>]</TD>
+<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="Xlibscm.html#SEC16"> &gt;&gt; </A>]</TD>
+<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="Xlibscm.html#SEC_Top">Top</A>]</TD>
+<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="Xlibscm.html#SEC_Contents">Contents</A>]</TD>
+<TD VALIGN="MIDDLE" ALIGN="LEFT">[Index]</TD>
+<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="Xlibscm.html#SEC_About"> ? </A>]</TD>
+</TR></TABLE>
+<H1> 9. Event </H1>
+<!--docid::SEC15::-->
+<P>
+
+These three status routines always return immediately if there are
+events already in the queue.
+</P>
+<P>
+
+<A NAME="IDX176"></A>
+</P>
+<DL>
+<DT><U>Function:</U> <B>x:q-length</B> <I>display</I>
+<DD>Returns the length of the event queue for the connected <VAR>display</VAR>.
+Note that there may be more events that have not been read into the
+queue yet (see X:Events-Queued).
+</DL>
+<P>
+
+<A NAME="IDX177"></A>
+</P>
+<DL>
+<DT><U>Function:</U> <B>x:pending</B> <I>display</I>
+<DD>Returns the number of events that have been received from the X server
+but have not been removed from the event queue.
+</DL>
+<P>
+
+<A NAME="IDX178"></A>
+</P>
+<DL>
+<DT><U>Function:</U> <B>x:events-queued</B> <I>display</I>
+<DD>Returns the number of events already in the queue if the number is
+nonzero. If there are no events in the queue, <CODE>X:Events-Queued</CODE>
+attempts to read more events out of the application's connection without
+flushing the output buffer and returns the number read.
+</DL>
+<P>
+
+Both of these routines return an object of type <EM>event</EM>.
+</P>
+<P>
+
+<A NAME="IDX179"></A>
+</P>
+<DL>
+<DT><U>Function:</U> <B>x:next-event</B> <I>display</I>
+<DD>Removes and returns the first event from the event queue. If the event
+queue is empty, <CODE>X:Next-Event</CODE> flushes the output buffer and blocks
+until an event is received.
+</DL>
+<P>
+
+<A NAME="IDX180"></A>
+</P>
+<DL>
+<DT><U>Function:</U> <B>x:peek-event</B> <I>display</I>
+<DD>Returns the first event from the event queue, but it does not remove the
+event from the queue. If the queue is empty, <CODE>X:Peek-Event</CODE>
+flushes the output buffer and blocks until an event is received.
+</DL>
+<P>
+
+Each event object has fields dependent on its sub-type.
+</P>
+<P>
+
+<A NAME="IDX181"></A>
+</P>
+<DL>
+<DT><U>Function:</U> <B>x:event-ref</B> <I>event field-name</I>
+<DD><TABLE>
+<TR><TD>window</TD>
+</TD><TD>
+The window on which <VAR>event</VAR> was generated and is referred to as the
+event window.
+</TR>
+<TR><TD>root</TD>
+</TD><TD>
+is the event window's root window.
+</TR>
+<TR><TD>subwindow</TD>
+</TD><TD>
+If the source window is an inferior of the event window, the
+<VAR>subwindow</VAR> is the child of the event window that is the source
+window or the child of the event window that is an ancestor of the
+source window. Otherwise, `<SAMP>None</SAMP>'.
+</TR>
+<TR><TD>X-event:type</TD>
+</TD><TD>
+An integer: <VAR>x:Key-Press</VAR>, <VAR>x:Key-Release</VAR>,
+<VAR>x:Button-Press</VAR>, <VAR>x:Button-Release</VAR>, <VAR>x:Motion-Notify</VAR>,
+<VAR>x:Enter-Notify</VAR>, <VAR>x:Leave-Notify</VAR>, <VAR>x:Focus-In</VAR>,
+<VAR>x:Focus-Out</VAR>, <VAR>x:Keymap-Notify</VAR>, <VAR>x:Expose</VAR>,
+<VAR>x:Graphics-Expose</VAR>, <VAR>x:No-Expose</VAR>, <VAR>x:Visibility-Notify</VAR>,
+<VAR>x:Create-Notify</VAR>, <VAR>x:Destroy-Notify</VAR>, <VAR>x:Unmap-Notify</VAR>,
+<VAR>x:Map-Notify</VAR>, <VAR>x:Map-Request</VAR>, <VAR>x:Reparent-Notify</VAR>,
+<VAR>x:Configure-Notify</VAR>, <VAR>x:Configure-Request</VAR>,
+<VAR>x:Gravity-Notify</VAR>, <VAR>x:Resize-Request</VAR>,
+<VAR>x:Circulate-Notify</VAR>, <VAR>x:Circulate-Request</VAR>,
+<VAR>x:Property-Notify</VAR>, <VAR>x:Selection-Clear</VAR>,
+<VAR>x:Selection-Request</VAR>, <VAR>x:Selection-Notify</VAR>,
+<VAR>x:Colormap-Notify</VAR>, <VAR>x:Client-Message</VAR>, or
+<VAR>x:Mapping-Notify</VAR>.
+</TR>
+<TR><TD>X-event:serial</TD>
+</TD><TD>
+The serial number of the protocol request that generated the <VAR>event</VAR>.
+</TR>
+<TR><TD>X-event:send-event</TD>
+</TD><TD>
+Boolean that indicates whether the event was sent by a different client.
+</TR>
+<TR><TD>X-event:time</TD>
+</TD><TD>
+The time when the <VAR>event</VAR> was generated expressed in milliseconds.
+</TR>
+<TR><TD>X-event:x</TD>
+</TR>
+<TR><TD>X-event:y</TD>
+</TD><TD>
+For window entry/exit events the <VAR>x</VAR> and <VAR>y</VAR> members are set to
+the coordinates of the pointer position in the event window. This
+position is always the pointer's final position, not its initial
+position. If the event window is on the same screen as the root window,
+<VAR>x</VAR> and <VAR>y</VAR> are the pointer coordinates relative to the event
+window's origin. Otherwise, <VAR>x</VAR> and <VAR>y</VAR> are set to zero.
+
+For expose events The <VAR>x</VAR> and <VAR>y</VAR> members are set to the
+coordinates relative to the drawable's origin and indicate the
+upper-left corner of the rectangle.
+
+For configure, create, gravity, and reparent events the <VAR>x</VAR> and
+<VAR>y</VAR> members are set to the window's coordinates relative to the
+parent window's origin and indicate the position of the upper-left
+outside corner of the created window.
+</TR>
+<TR><TD>X-event:x-root</TD>
+</TR>
+<TR><TD>X-event:y-root</TD>
+</TD><TD>
+The pointer's coordinates relative to the root window's origin at the
+time of the <VAR>event</VAR>.
+</TR>
+<TR><TD>X-event:state</TD>
+</TD><TD>
+For keyboard, pointer and window entry/exit events, the state member is
+set to indicate the logical state of the pointer buttons and modifier
+keys just prior to the <VAR>event</VAR>, which is the bitwise inclusive OR of
+one or more of the button or modifier key masks: <VAR>x:Button1-Mask</VAR>,
+<VAR>x:Button2-Mask</VAR>, <VAR>x:Button3-Mask</VAR>, <VAR>x:Button4-Mask</VAR>,
+<VAR>x:Button5-Mask</VAR>, <VAR>x:Shift-Mask</VAR>, <VAR>x:Lock-Mask</VAR>,
+<VAR>x:Control-Mask</VAR>, <VAR>x:Mod1-Mask</VAR>, <VAR>x:Mod2-Mask</VAR>,
+<VAR>x:Mod3-Mask</VAR>, <VAR>x:Mod4-Mask</VAR>, and <VAR>x:Mod5-Mask</VAR>.
+
+For visibility events, the state of the window's visibility:
+<VAR>x:Visibility-Unobscured</VAR>, <VAR>x:Visibility-Partially-Obscured</VAR>, or
+<VAR>x:Visibility-Fully-Obscured</VAR>.
+
+For colormap events, indicates whether the colormap is installed or
+uninstalled: x:Colormap-Installed or x:Colormap-Uninstalled.
+
+For property events, indicates whether the property was changed to a new
+value or deleted: x:Property-New-Value or x:Property-Delete.
+</TR>
+<TR><TD>X-event:keycode</TD>
+</TD><TD>
+An integer that represents a physical key on the keyboard.
+</TR>
+<TR><TD>X-event:same-screen</TD>
+</TD><TD>
+Indicates whether the event window is on the same screen as the root
+window. If #t, the event and root windows are on the same screen. If
+#f, the event and root windows are not on the same screen.
+</TR>
+<TR><TD>X-event:button</TD>
+</TD><TD>
+The pointer button that changed state; can be the <VAR>x:Button1</VAR>,
+<VAR>x:Button2</VAR>, <VAR>x:Button3</VAR>, <VAR>x:Button4</VAR>, or <VAR>x:Button5</VAR>
+value.
+</TR>
+<TR><TD>X-event:is-hint</TD>
+</TD><TD>
+Detail of motion-notify events: <VAR>x:Notify-Normal</VAR> or
+<VAR>x:Notify-Hint</VAR>.
+</TR>
+<TR><TD>X-event:mode</TD>
+</TD><TD>
+Indicates whether the <VAR>event</VAR> is a normal event, pseudo-motion event
+when a grab activates, or a pseudo-motion event when a grab deactivates:
+<VAR>x:Notify-Normal</VAR>, <VAR>x:Notify-Grab</VAR>, or <VAR>x:Notify-Ungrab</VAR>.
+</TR>
+<TR><TD>X-event:detail</TD>
+</TD><TD>
+Indicates the notification detail: <VAR>x:Notify-Ancestor</VAR>,
+<VAR>x:Notify-Virtual</VAR>, <VAR>x:Notify-Inferior</VAR>,
+<VAR>x:Notify-Nonlinear</VAR>, or <VAR>x:Notify-Nonlinear-Virtual</VAR>.
+</TR>
+<TR><TD>X-event:focus</TD>
+</TD><TD>
+If the event window is the focus window or an inferior of the focus
+window, #t; otherwise #f.
+</TR>
+<TR><TD>X-event:width</TD>
+</TR>
+<TR><TD>X-event:height</TD>
+</TD><TD>
+The size (extent) of the rectangle.
+</TR>
+<TR><TD>X-event:count</TD>
+</TD><TD>
+For mapping events is the number of keycodes altered.
+
+For expose events Is the number of Expose or GraphicsExpose events that
+are to follow. If count is zero, no more Expose events follow for this
+window. However, if count is nonzero, at least that number of Expose
+events (and possibly more) follow for this window. Simple applications
+that do not want to optimize redisplay by distinguishing between
+subareas of its window can just ignore all Expose events with nonzero
+counts and perform full redisplays on events with zero counts.
+</TR>
+<TR><TD>X-event:major-code</TD>
+</TD><TD>
+The major_code member is set to the graphics request initiated by the
+client and can be either X_CopyArea or X_CopyPlane. If it is
+X_CopyArea, a call to XCopyArea initiated the request. If it is
+X_CopyPlane, a call to XCopyPlane initiated the request.
+</TR>
+<TR><TD>X-event:minor-code</TD>
+</TD><TD>
+Not currently used.
+</TR>
+<TR><TD>X-event:border-width</TD>
+</TD><TD>
+For configure events, the width of the window's border, in pixels.
+</TR>
+<TR><TD>X-event:override-redirect</TD>
+</TD><TD>
+The override-redirect attribute of the window. Window manager clients
+normally should ignore this window if it is #t.
+</TR>
+<TR><TD>X-event:from-configure</TD>
+</TD><TD>
+True if the event was generated as a result of a resizing of the
+window's parent when the window itself had a win-gravity of
+x:Unmap-Gravity.
+</TR>
+<TR><TD>X-event:value-mask</TD>
+</TD><TD>
+Indicates which components were specified in the ConfigureWindow
+protocol request. The corresponding values are reported as given in the
+request. The remaining values are filled in from the current geometry
+of the window, except in the case of above (sibling) and detail
+(stack-mode), which are reported as None and Above, respectively, if
+they are not given in the request.
+</TR>
+<TR><TD>X-event:place</TD>
+</TD><TD>
+The window's position after the restack occurs and is either
+x:Place-On-Top or x:Place-On-Bottom. If it is x:Place-On-Top, the
+window is now on top of all siblings. If it is x:Place-On-Bottom, the
+window is now below all siblings.
+</TR>
+<TR><TD>X-event:new</TD>
+</TD><TD>
+indicate whether the colormap for the specified window was changed or
+installed or uninstalled and can be True or False. If it is True, the
+colormap was changed. If it is False, the colormap was installed or
+uninstalled.
+</TR>
+<TR><TD>X-event:format</TD>
+</TD><TD>
+Is 8, 16, or 32 and specifies whether the data should be viewed as a
+list of bytes, shorts, or longs
+</TR>
+<TR><TD>X-event:request</TD>
+</TD><TD>
+Indicates the kind of mapping change that occurred and can be
+<VAR>x:Mapping-Modifier</VAR>, <VAR>x:Mapping-Keyboard</VAR>, or
+<VAR>x:Mapping-Pointer</VAR>. If it is <VAR>x:Mapping-Modifier</VAR>, the
+modifier mapping was changed. If it is <VAR>x:Mapping-Keyboard</VAR>, the
+keyboard mapping was changed. If it is <VAR>x:Mapping-Pointer</VAR>, the
+pointer button mapping was changed.
+</TR>
+<TR><TD>X-event:first-keycode</TD>
+</TD><TD>
+The X-event:first-keycode is set only if the X-event:request was set to
+<VAR>x:Mapping-Keyboard</VAR>. The number in X-event:first-keycode
+represents the first number in the range of the altered mapping, and
+X-event:count represents the number of keycodes altered.
+</TR></TABLE>
+</DL>
+<P>
+
+<A NAME="Index"></A>
+<HR SIZE="6">
+<A NAME="SEC16"></A>
+<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0>
+<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="Xlibscm.html#SEC15"> &lt; </A>]</TD>
+<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="Xlibscm.html#SEC17"> &gt; </A>]</TD>
+<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="Xlibscm.html#SEC15"> &lt;&lt; </A>]</TD>
+<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="Xlibscm.html#SEC_Top"> Up </A>]</TD>
+<TD VALIGN="MIDDLE" ALIGN="LEFT">[ &gt;&gt; ]</TD>
+<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="Xlibscm.html#SEC_Top">Top</A>]</TD>
+<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="Xlibscm.html#SEC_Contents">Contents</A>]</TD>
+<TD VALIGN="MIDDLE" ALIGN="LEFT">[Index]</TD>
+<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="Xlibscm.html#SEC_About"> ? </A>]</TD>
+</TR></TABLE>
+<H1> Procedure and Macro Index </H1>
+<!--docid::SEC16::-->
+<P>
+
+This is an alphabetical list of all the procedures and macros in Xlibscm.
+</P>
+<P>
+
+</P>
+<table><tr><th valign=top>Jump to: &nbsp; </th><td><A HREF="Xlibscm.html#fn_H" style="text-decoration:none"><b>H</b></A>
+ &nbsp;
+<A HREF="Xlibscm.html#fn_X" style="text-decoration:none"><b>X</b></A>
+ &nbsp;
+</td></tr></table><P></P>
+<TABLE border=0>
+<TR><TD></TD><TH ALIGN=LEFT>Index Entry</TH><TH ALIGN=LEFT> Section</TH></TR>
+<TR><TD COLSPAN=3> <HR></TD></TR>
+<TR><TH><A NAME="fn_H"></A>H</TH><TD></TD><TD></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="Xlibscm.html#IDX4"><CODE>hostname:number.screen-number</CODE></A></TD><TD valign=top><A HREF="Xlibscm.html#SEC2">2. Display and Screens</A></TD></TR>
+<TR><TD COLSPAN=3> <HR></TD></TR>
+<TR><TH><A NAME="fn_X"></A>X</TH><TD></TD><TD></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="Xlibscm.html#IDX143"><CODE>x:alloc-colormap-cells</CODE></A></TD><TD valign=top><A HREF="Xlibscm.html#SEC10">6. Colormap</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="Xlibscm.html#IDX144"><CODE>x:alloc-colormap-cells</CODE></A></TD><TD valign=top><A HREF="Xlibscm.html#SEC10">6. Colormap</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="Xlibscm.html#IDX145"><CODE>x:alloc-colormap-cells</CODE></A></TD><TD valign=top><A HREF="Xlibscm.html#SEC10">6. Colormap</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="Xlibscm.html#IDX146"><CODE>x:alloc-colormap-cells</CODE></A></TD><TD valign=top><A HREF="Xlibscm.html#SEC10">6. Colormap</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="Xlibscm.html#IDX155"><CODE>x:ccc</CODE></A></TD><TD valign=top><A HREF="Xlibscm.html#SEC10">6. Colormap</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="Xlibscm.html#IDX159"><CODE>x:clear-area</CODE></A></TD><TD valign=top><A HREF="Xlibscm.html#SEC11">7. Rendering</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="Xlibscm.html#IDX5"><CODE>x:close</CODE></A></TD><TD valign=top><A HREF="Xlibscm.html#SEC2">2. Display and Screens</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="Xlibscm.html#IDX65"><CODE>x:close</CODE></A></TD><TD valign=top><A HREF="Xlibscm.html#SEC4">3.1 Windows and Pixmaps</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="Xlibscm.html#IDX66"><CODE>x:close</CODE></A></TD><TD valign=top><A HREF="Xlibscm.html#SEC4">3.1 Windows and Pixmaps</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="Xlibscm.html#IDX151"><CODE>x:color-ref</CODE></A></TD><TD valign=top><A HREF="Xlibscm.html#SEC10">6. Colormap</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="Xlibscm.html#IDX152"><CODE>X:Color-Set!</CODE></A></TD><TD valign=top><A HREF="Xlibscm.html#SEC10">6. Colormap</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="Xlibscm.html#IDX153"><CODE>X:Color-Set!</CODE></A></TD><TD valign=top><A HREF="Xlibscm.html#SEC10">6. Colormap</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="Xlibscm.html#IDX149"><CODE>x:colormap-find-color</CODE></A></TD><TD valign=top><A HREF="Xlibscm.html#SEC10">6. Colormap</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="Xlibscm.html#IDX150"><CODE>x:colormap-find-color</CODE></A></TD><TD valign=top><A HREF="Xlibscm.html#SEC10">6. Colormap</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="Xlibscm.html#IDX142"><CODE>x:copy-colormap-and-free</CODE></A></TD><TD valign=top><A HREF="Xlibscm.html#SEC10">6. Colormap</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="Xlibscm.html#IDX106"><CODE>x:copy-gc-fields!</CODE></A></TD><TD valign=top><A HREF="Xlibscm.html#SEC7">4. Graphics Context</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="Xlibscm.html#IDX141"><CODE>x:create-colormap</CODE></A></TD><TD valign=top><A HREF="Xlibscm.html#SEC10">6. Colormap</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="Xlibscm.html#IDX133"><CODE>x:create-cursor</CODE></A></TD><TD valign=top><A HREF="Xlibscm.html#SEC9">5. Cursor</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="Xlibscm.html#IDX135"><CODE>x:create-cursor</CODE></A></TD><TD valign=top><A HREF="Xlibscm.html#SEC9">5. Cursor</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="Xlibscm.html#IDX136"><CODE>x:create-cursor</CODE></A></TD><TD valign=top><A HREF="Xlibscm.html#SEC9">5. Cursor</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="Xlibscm.html#IDX137"><CODE>x:create-cursor</CODE></A></TD><TD valign=top><A HREF="Xlibscm.html#SEC9">5. Cursor</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="Xlibscm.html#IDX138"><CODE>x:create-cursor</CODE></A></TD><TD valign=top><A HREF="Xlibscm.html#SEC9">5. Cursor</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="Xlibscm.html#IDX104"><CODE>x:create-gc</CODE></A></TD><TD valign=top><A HREF="Xlibscm.html#SEC7">4. Graphics Context</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="Xlibscm.html#IDX63"><CODE>x:create-pixmap</CODE></A></TD><TD valign=top><A HREF="Xlibscm.html#SEC4">3.1 Windows and Pixmaps</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="Xlibscm.html#IDX64"><CODE>x:create-pixmap</CODE></A></TD><TD valign=top><A HREF="Xlibscm.html#SEC4">3.1 Windows and Pixmaps</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="Xlibscm.html#IDX61"><CODE>x:create-window</CODE></A></TD><TD valign=top><A HREF="Xlibscm.html#SEC4">3.1 Windows and Pixmaps</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="Xlibscm.html#IDX62"><CODE>x:create-window</CODE></A></TD><TD valign=top><A HREF="Xlibscm.html#SEC4">3.1 Windows and Pixmaps</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="Xlibscm.html#IDX17"><CODE>x:default-ccc</CODE></A></TD><TD valign=top><A HREF="Xlibscm.html#SEC2">2. Display and Screens</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="Xlibscm.html#IDX18"><CODE>x:default-ccc</CODE></A></TD><TD valign=top><A HREF="Xlibscm.html#SEC2">2. Display and Screens</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="Xlibscm.html#IDX19"><CODE>x:default-ccc</CODE></A></TD><TD valign=top><A HREF="Xlibscm.html#SEC2">2. Display and Screens</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="Xlibscm.html#IDX14"><CODE>x:default-colormap</CODE></A></TD><TD valign=top><A HREF="Xlibscm.html#SEC2">2. Display and Screens</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="Xlibscm.html#IDX15"><CODE>x:default-colormap</CODE></A></TD><TD valign=top><A HREF="Xlibscm.html#SEC2">2. Display and Screens</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="Xlibscm.html#IDX16"><CODE>x:default-colormap</CODE></A></TD><TD valign=top><A HREF="Xlibscm.html#SEC2">2. Display and Screens</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="Xlibscm.html#IDX20"><CODE>x:default-gc</CODE></A></TD><TD valign=top><A HREF="Xlibscm.html#SEC2">2. Display and Screens</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="Xlibscm.html#IDX21"><CODE>x:default-gc</CODE></A></TD><TD valign=top><A HREF="Xlibscm.html#SEC2">2. Display and Screens</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="Xlibscm.html#IDX22"><CODE>x:default-gc</CODE></A></TD><TD valign=top><A HREF="Xlibscm.html#SEC2">2. Display and Screens</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="Xlibscm.html#IDX10"><CODE>x:default-screen</CODE></A></TD><TD valign=top><A HREF="Xlibscm.html#SEC2">2. Display and Screens</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="Xlibscm.html#IDX26"><CODE>x:default-visual</CODE></A></TD><TD valign=top><A HREF="Xlibscm.html#SEC2">2. Display and Screens</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="Xlibscm.html#IDX27"><CODE>x:default-visual</CODE></A></TD><TD valign=top><A HREF="Xlibscm.html#SEC2">2. Display and Screens</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="Xlibscm.html#IDX28"><CODE>x:default-visual</CODE></A></TD><TD valign=top><A HREF="Xlibscm.html#SEC2">2. Display and Screens</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="Xlibscm.html#IDX169"><CODE>x:draw-lines</CODE></A></TD><TD valign=top><A HREF="Xlibscm.html#SEC13">Draw Shapes</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="Xlibscm.html#IDX170"><CODE>x:draw-lines</CODE></A></TD><TD valign=top><A HREF="Xlibscm.html#SEC13">Draw Shapes</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="Xlibscm.html#IDX171"><CODE>x:draw-lines</CODE></A></TD><TD valign=top><A HREF="Xlibscm.html#SEC13">Draw Shapes</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="Xlibscm.html#IDX163"><CODE>x:draw-points</CODE></A></TD><TD valign=top><A HREF="Xlibscm.html#SEC13">Draw Shapes</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="Xlibscm.html#IDX164"><CODE>x:draw-points</CODE></A></TD><TD valign=top><A HREF="Xlibscm.html#SEC13">Draw Shapes</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="Xlibscm.html#IDX165"><CODE>x:draw-points</CODE></A></TD><TD valign=top><A HREF="Xlibscm.html#SEC13">Draw Shapes</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="Xlibscm.html#IDX166"><CODE>x:draw-segments</CODE></A></TD><TD valign=top><A HREF="Xlibscm.html#SEC13">Draw Shapes</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="Xlibscm.html#IDX167"><CODE>x:draw-segments</CODE></A></TD><TD valign=top><A HREF="Xlibscm.html#SEC13">Draw Shapes</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="Xlibscm.html#IDX168"><CODE>x:draw-segments</CODE></A></TD><TD valign=top><A HREF="Xlibscm.html#SEC13">Draw Shapes</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="Xlibscm.html#IDX161"><CODE>x:draw-string</CODE></A></TD><TD valign=top><A HREF="Xlibscm.html#SEC12">Draw Strings</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="Xlibscm.html#IDX181"><CODE>x:event-ref</CODE></A></TD><TD valign=top><A HREF="Xlibscm.html#SEC15">9. Event</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="Xlibscm.html#IDX178"><CODE>x:events-queued</CODE></A></TD><TD valign=top><A HREF="Xlibscm.html#SEC15">9. Event</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="Xlibscm.html#IDX172"><CODE>x:fill-polygon</CODE></A></TD><TD valign=top><A HREF="Xlibscm.html#SEC13">Draw Shapes</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="Xlibscm.html#IDX173"><CODE>x:fill-polygon</CODE></A></TD><TD valign=top><A HREF="Xlibscm.html#SEC13">Draw Shapes</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="Xlibscm.html#IDX174"><CODE>x:fill-polygon</CODE></A></TD><TD valign=top><A HREF="Xlibscm.html#SEC13">Draw Shapes</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="Xlibscm.html#IDX160"><CODE>x:fill-rectangle</CODE></A></TD><TD valign=top><A HREF="Xlibscm.html#SEC11">7. Rendering</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="Xlibscm.html#IDX156"><CODE>x:flush</CODE></A></TD><TD valign=top><A HREF="Xlibscm.html#SEC11">7. Rendering</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="Xlibscm.html#IDX157"><CODE>x:flush</CODE></A></TD><TD valign=top><A HREF="Xlibscm.html#SEC11">7. Rendering</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="Xlibscm.html#IDX158"><CODE>x:flush</CODE></A></TD><TD valign=top><A HREF="Xlibscm.html#SEC11">7. Rendering</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="Xlibscm.html#IDX147"><CODE>x:free-colormap-cells</CODE></A></TD><TD valign=top><A HREF="Xlibscm.html#SEC10">6. Colormap</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="Xlibscm.html#IDX148"><CODE>x:free-colormap-cells</CODE></A></TD><TD valign=top><A HREF="Xlibscm.html#SEC10">6. Colormap</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="Xlibscm.html#IDX107"><CODE>x:gc-ref</CODE></A></TD><TD valign=top><A HREF="Xlibscm.html#SEC7">4. Graphics Context</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="Xlibscm.html#IDX105"><CODE>x:gc-set!</CODE></A></TD><TD valign=top><A HREF="Xlibscm.html#SEC7">4. Graphics Context</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="Xlibscm.html#IDX93"><CODE>x:get-window-property</CODE></A></TD><TD valign=top><A HREF="Xlibscm.html#SEC6">3.3 Window Properties and Visibility</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="Xlibscm.html#IDX94"><CODE>x:get-window-property</CODE></A></TD><TD valign=top><A HREF="Xlibscm.html#SEC6">3.3 Window Properties and Visibility</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="Xlibscm.html#IDX162"><CODE>x:image-string</CODE></A></TD><TD valign=top><A HREF="Xlibscm.html#SEC12">Draw Strings</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="Xlibscm.html#IDX154"><CODE>x:install-colormap</CODE></A></TD><TD valign=top><A HREF="Xlibscm.html#SEC10">6. Colormap</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="Xlibscm.html#IDX95"><CODE>x:list-properties</CODE></A></TD><TD valign=top><A HREF="Xlibscm.html#SEC6">3.3 Window Properties and Visibility</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="Xlibscm.html#IDX31"><CODE>x:make-visual</CODE></A></TD><TD valign=top><A HREF="Xlibscm.html#SEC2">2. Display and Screens</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="Xlibscm.html#IDX32"><CODE>x:make-visual</CODE></A></TD><TD valign=top><A HREF="Xlibscm.html#SEC2">2. Display and Screens</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="Xlibscm.html#IDX101"><CODE>x:map-subwindows</CODE></A></TD><TD valign=top><A HREF="Xlibscm.html#SEC6">3.3 Window Properties and Visibility</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="Xlibscm.html#IDX100"><CODE>x:map-window</CODE></A></TD><TD valign=top><A HREF="Xlibscm.html#SEC6">3.3 Window Properties and Visibility</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="Xlibscm.html#IDX179"><CODE>x:next-event</CODE></A></TD><TD valign=top><A HREF="Xlibscm.html#SEC15">9. Event</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="Xlibscm.html#IDX3"><CODE>x:open-display</CODE></A></TD><TD valign=top><A HREF="Xlibscm.html#SEC2">2. Display and Screens</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="Xlibscm.html#IDX180"><CODE>x:peek-event</CODE></A></TD><TD valign=top><A HREF="Xlibscm.html#SEC15">9. Event</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="Xlibscm.html#IDX177"><CODE>x:pending</CODE></A></TD><TD valign=top><A HREF="Xlibscm.html#SEC15">9. Event</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="Xlibscm.html#IDX6"><CODE>x:protocol-version</CODE></A></TD><TD valign=top><A HREF="Xlibscm.html#SEC2">2. Display and Screens</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="Xlibscm.html#IDX176"><CODE>x:q-length</CODE></A></TD><TD valign=top><A HREF="Xlibscm.html#SEC15">9. Event</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="Xlibscm.html#IDX175"><CODE>x:read-bitmap-file</CODE></A></TD><TD valign=top><A HREF="Xlibscm.html#SEC14">8. Images</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="Xlibscm.html#IDX11"><CODE>x:root-window</CODE></A></TD><TD valign=top><A HREF="Xlibscm.html#SEC2">2. Display and Screens</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="Xlibscm.html#IDX12"><CODE>x:root-window</CODE></A></TD><TD valign=top><A HREF="Xlibscm.html#SEC2">2. Display and Screens</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="Xlibscm.html#IDX13"><CODE>x:root-window</CODE></A></TD><TD valign=top><A HREF="Xlibscm.html#SEC2">2. Display and Screens</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="Xlibscm.html#IDX56"><CODE>x:screen-black</CODE></A></TD><TD valign=top><A HREF="Xlibscm.html#SEC2">2. Display and Screens</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="Xlibscm.html#IDX57"><CODE>x:screen-black</CODE></A></TD><TD valign=top><A HREF="Xlibscm.html#SEC2">2. Display and Screens</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="Xlibscm.html#IDX58"><CODE>x:screen-black</CODE></A></TD><TD valign=top><A HREF="Xlibscm.html#SEC2">2. Display and Screens</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="Xlibscm.html#IDX39"><CODE>x:screen-cells</CODE></A></TD><TD valign=top><A HREF="Xlibscm.html#SEC2">2. Display and Screens</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="Xlibscm.html#IDX40"><CODE>x:screen-cells</CODE></A></TD><TD valign=top><A HREF="Xlibscm.html#SEC2">2. Display and Screens</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="Xlibscm.html#IDX41"><CODE>x:screen-cells</CODE></A></TD><TD valign=top><A HREF="Xlibscm.html#SEC2">2. Display and Screens</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="Xlibscm.html#IDX9"><CODE>x:screen-count</CODE></A></TD><TD valign=top><A HREF="Xlibscm.html#SEC2">2. Display and Screens</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="Xlibscm.html#IDX42"><CODE>x:screen-depth</CODE></A></TD><TD valign=top><A HREF="Xlibscm.html#SEC2">2. Display and Screens</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="Xlibscm.html#IDX43"><CODE>x:screen-depth</CODE></A></TD><TD valign=top><A HREF="Xlibscm.html#SEC2">2. Display and Screens</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="Xlibscm.html#IDX44"><CODE>x:screen-depth</CODE></A></TD><TD valign=top><A HREF="Xlibscm.html#SEC2">2. Display and Screens</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="Xlibscm.html#IDX45"><CODE>x:screen-depth</CODE></A></TD><TD valign=top><A HREF="Xlibscm.html#SEC2">2. Display and Screens</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="Xlibscm.html#IDX23"><CODE>x:screen-depths</CODE></A></TD><TD valign=top><A HREF="Xlibscm.html#SEC2">2. Display and Screens</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="Xlibscm.html#IDX24"><CODE>x:screen-depths</CODE></A></TD><TD valign=top><A HREF="Xlibscm.html#SEC2">2. Display and Screens</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="Xlibscm.html#IDX25"><CODE>x:screen-depths</CODE></A></TD><TD valign=top><A HREF="Xlibscm.html#SEC2">2. Display and Screens</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="Xlibscm.html#IDX50"><CODE>x:screen-dimensions</CODE></A></TD><TD valign=top><A HREF="Xlibscm.html#SEC2">2. Display and Screens</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="Xlibscm.html#IDX51"><CODE>x:screen-dimensions</CODE></A></TD><TD valign=top><A HREF="Xlibscm.html#SEC2">2. Display and Screens</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="Xlibscm.html#IDX52"><CODE>x:screen-dimensions</CODE></A></TD><TD valign=top><A HREF="Xlibscm.html#SEC2">2. Display and Screens</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="Xlibscm.html#IDX47"><CODE>x:screen-size</CODE></A></TD><TD valign=top><A HREF="Xlibscm.html#SEC2">2. Display and Screens</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="Xlibscm.html#IDX48"><CODE>x:screen-size</CODE></A></TD><TD valign=top><A HREF="Xlibscm.html#SEC2">2. Display and Screens</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="Xlibscm.html#IDX49"><CODE>x:screen-size</CODE></A></TD><TD valign=top><A HREF="Xlibscm.html#SEC2">2. Display and Screens</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="Xlibscm.html#IDX53"><CODE>x:screen-white</CODE></A></TD><TD valign=top><A HREF="Xlibscm.html#SEC2">2. Display and Screens</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="Xlibscm.html#IDX54"><CODE>x:screen-white</CODE></A></TD><TD valign=top><A HREF="Xlibscm.html#SEC2">2. Display and Screens</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="Xlibscm.html#IDX55"><CODE>x:screen-white</CODE></A></TD><TD valign=top><A HREF="Xlibscm.html#SEC2">2. Display and Screens</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="Xlibscm.html#IDX7"><CODE>x:server-vendor</CODE></A></TD><TD valign=top><A HREF="Xlibscm.html#SEC2">2. Display and Screens</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="Xlibscm.html#IDX103"><CODE>x:unmap-subwindows</CODE></A></TD><TD valign=top><A HREF="Xlibscm.html#SEC6">3.3 Window Properties and Visibility</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="Xlibscm.html#IDX102"><CODE>x:unmap-window</CODE></A></TD><TD valign=top><A HREF="Xlibscm.html#SEC6">3.3 Window Properties and Visibility</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="Xlibscm.html#IDX8"><CODE>x:vendor-release</CODE></A></TD><TD valign=top><A HREF="Xlibscm.html#SEC2">2. Display and Screens</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="Xlibscm.html#IDX33"><CODE>x:visual-class</CODE></A></TD><TD valign=top><A HREF="Xlibscm.html#SEC2">2. Display and Screens</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="Xlibscm.html#IDX34"><CODE>x:visual-class</CODE></A></TD><TD valign=top><A HREF="Xlibscm.html#SEC2">2. Display and Screens</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="Xlibscm.html#IDX35"><CODE>x:visual-class</CODE></A></TD><TD valign=top><A HREF="Xlibscm.html#SEC2">2. Display and Screens</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="Xlibscm.html#IDX36"><CODE>x:visual-geometry</CODE></A></TD><TD valign=top><A HREF="Xlibscm.html#SEC2">2. Display and Screens</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="Xlibscm.html#IDX37"><CODE>x:visual-geometry</CODE></A></TD><TD valign=top><A HREF="Xlibscm.html#SEC2">2. Display and Screens</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="Xlibscm.html#IDX38"><CODE>x:visual-geometry</CODE></A></TD><TD valign=top><A HREF="Xlibscm.html#SEC2">2. Display and Screens</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="Xlibscm.html#IDX67"><CODE>x:window-geometry</CODE></A></TD><TD valign=top><A HREF="Xlibscm.html#SEC4">3.1 Windows and Pixmaps</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="Xlibscm.html#IDX68"><CODE>x:window-geometry-set!</CODE></A></TD><TD valign=top><A HREF="Xlibscm.html#SEC4">3.1 Windows and Pixmaps</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="Xlibscm.html#IDX92"><CODE>x:window-ref</CODE></A></TD><TD valign=top><A HREF="Xlibscm.html#SEC5">3.2 Window Attributes</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="Xlibscm.html#IDX76"><CODE>x:window-set!</CODE></A></TD><TD valign=top><A HREF="Xlibscm.html#SEC5">3.2 Window Attributes</A></TD></TR>
+<TR><TD COLSPAN=3> <HR></TD></TR>
+</TABLE><P></P><table><tr><th valign=top>Jump to: &nbsp; </th><td><A HREF="Xlibscm.html#fn_H" style="text-decoration:none"><b>H</b></A>
+ &nbsp;
+<A HREF="Xlibscm.html#fn_X" style="text-decoration:none"><b>X</b></A>
+ &nbsp;
+</td></tr></table><P>
+
+<HR SIZE="6">
+<A NAME="SEC17"></A>
+<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0>
+<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="Xlibscm.html#SEC16"> &lt; </A>]</TD>
+<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="Xlibscm.html#SEC18"> &gt; </A>]</TD>
+<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="Xlibscm.html#SEC16"> &lt;&lt; </A>]</TD>
+<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="Xlibscm.html#SEC_Top"> Up </A>]</TD>
+<TD VALIGN="MIDDLE" ALIGN="LEFT">[ &gt;&gt; ]</TD>
+<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="Xlibscm.html#SEC_Top">Top</A>]</TD>
+<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="Xlibscm.html#SEC_Contents">Contents</A>]</TD>
+<TD VALIGN="MIDDLE" ALIGN="LEFT">[Index]</TD>
+<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="Xlibscm.html#SEC_About"> ? </A>]</TD>
+</TR></TABLE>
+<H1> Variable Index </H1>
+<!--docid::SEC17::-->
+<P>
+
+This is an alphabetical list of all the global variables in Xlibscm.
+</P>
+<P>
+
+</P>
+<table><tr><th valign=top>Jump to: &nbsp; </th><td><A HREF="Xlibscm.html#vr_X" style="text-decoration:none"><b>X</b></A>
+ &nbsp;
+</td></tr></table><P></P>
+<TABLE border=0>
+<TR><TD></TD><TH ALIGN=LEFT>Index Entry</TH><TH ALIGN=LEFT> Section</TH></TR>
+<TR><TD COLSPAN=3> <HR></TD></TR>
+<TR><TH><A NAME="vr_X"></A>X</TH><TD></TD><TD></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="Xlibscm.html#IDX78"><CODE>x:CW-Back-Pixel</CODE></A></TD><TD valign=top><A HREF="Xlibscm.html#SEC5">3.2 Window Attributes</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="Xlibscm.html#IDX77"><CODE>x:CW-Back-Pixmap</CODE></A></TD><TD valign=top><A HREF="Xlibscm.html#SEC5">3.2 Window Attributes</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="Xlibscm.html#IDX85"><CODE>x:CW-Backing-Pixel</CODE></A></TD><TD valign=top><A HREF="Xlibscm.html#SEC5">3.2 Window Attributes</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="Xlibscm.html#IDX84"><CODE>x:CW-Backing-Planes</CODE></A></TD><TD valign=top><A HREF="Xlibscm.html#SEC5">3.2 Window Attributes</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="Xlibscm.html#IDX83"><CODE>x:CW-Backing-Store</CODE></A></TD><TD valign=top><A HREF="Xlibscm.html#SEC5">3.2 Window Attributes</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="Xlibscm.html#IDX81"><CODE>x:CW-Bit-Gravity</CODE></A></TD><TD valign=top><A HREF="Xlibscm.html#SEC5">3.2 Window Attributes</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="Xlibscm.html#IDX80"><CODE>x:CW-Border-Pixel</CODE></A></TD><TD valign=top><A HREF="Xlibscm.html#SEC5">3.2 Window Attributes</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="Xlibscm.html#IDX79"><CODE>x:CW-Border-Pixmap</CODE></A></TD><TD valign=top><A HREF="Xlibscm.html#SEC5">3.2 Window Attributes</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="Xlibscm.html#IDX73"><CODE>x:CW-Border-Width</CODE></A></TD><TD valign=top><A HREF="Xlibscm.html#SEC4">3.1 Windows and Pixmaps</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="Xlibscm.html#IDX90"><CODE>x:CW-Colormap</CODE></A></TD><TD valign=top><A HREF="Xlibscm.html#SEC5">3.2 Window Attributes</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="Xlibscm.html#IDX91"><CODE>x:CW-Cursor</CODE></A></TD><TD valign=top><A HREF="Xlibscm.html#SEC5">3.2 Window Attributes</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="Xlibscm.html#IDX89"><CODE>x:CW-Dont-Propagate</CODE></A></TD><TD valign=top><A HREF="Xlibscm.html#SEC5">3.2 Window Attributes</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="Xlibscm.html#IDX88"><CODE>x:CW-Event-Mask</CODE></A></TD><TD valign=top><A HREF="Xlibscm.html#SEC5">3.2 Window Attributes</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="Xlibscm.html#IDX72"><CODE>x:CW-Height</CODE></A></TD><TD valign=top><A HREF="Xlibscm.html#SEC4">3.1 Windows and Pixmaps</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="Xlibscm.html#IDX86"><CODE>x:CW-Override-Redirect</CODE></A></TD><TD valign=top><A HREF="Xlibscm.html#SEC5">3.2 Window Attributes</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="Xlibscm.html#IDX87"><CODE>x:CW-Save-Under</CODE></A></TD><TD valign=top><A HREF="Xlibscm.html#SEC5">3.2 Window Attributes</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="Xlibscm.html#IDX74"><CODE>x:CW-Sibling</CODE></A></TD><TD valign=top><A HREF="Xlibscm.html#SEC4">3.1 Windows and Pixmaps</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="Xlibscm.html#IDX75"><CODE>x:CW-Stack-Mode</CODE></A></TD><TD valign=top><A HREF="Xlibscm.html#SEC4">3.1 Windows and Pixmaps</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="Xlibscm.html#IDX71"><CODE>x:CW-Width</CODE></A></TD><TD valign=top><A HREF="Xlibscm.html#SEC4">3.1 Windows and Pixmaps</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="Xlibscm.html#IDX82"><CODE>x:CW-Win-Gravity</CODE></A></TD><TD valign=top><A HREF="Xlibscm.html#SEC5">3.2 Window Attributes</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="Xlibscm.html#IDX69"><CODE>x:CWX</CODE></A></TD><TD valign=top><A HREF="Xlibscm.html#SEC4">3.1 Windows and Pixmaps</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="Xlibscm.html#IDX70"><CODE>x:CWY</CODE></A></TD><TD valign=top><A HREF="Xlibscm.html#SEC4">3.1 Windows and Pixmaps</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="Xlibscm.html#IDX132"><CODE>x:GC-Arc-Mode</CODE></A></TD><TD valign=top><A HREF="Xlibscm.html#SEC8">GC Attributes</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="Xlibscm.html#IDX111"><CODE>x:GC-Background</CODE></A></TD><TD valign=top><A HREF="Xlibscm.html#SEC8">GC Attributes</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="Xlibscm.html#IDX114"><CODE>x:GC-Cap-Style</CODE></A></TD><TD valign=top><A HREF="Xlibscm.html#SEC8">GC Attributes</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="Xlibscm.html#IDX127"><CODE>x:GC-Clip-Mask</CODE></A></TD><TD valign=top><A HREF="Xlibscm.html#SEC8">GC Attributes</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="Xlibscm.html#IDX125"><CODE>x:GC-Clip-X-Origin</CODE></A></TD><TD valign=top><A HREF="Xlibscm.html#SEC8">GC Attributes</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="Xlibscm.html#IDX126"><CODE>x:GC-Clip-Y-Origin</CODE></A></TD><TD valign=top><A HREF="Xlibscm.html#SEC8">GC Attributes</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="Xlibscm.html#IDX131"><CODE>x:GC-Dash-List</CODE></A></TD><TD valign=top><A HREF="Xlibscm.html#SEC8">GC Attributes</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="Xlibscm.html#IDX130"><CODE>x:GC-Dash-Offset</CODE></A></TD><TD valign=top><A HREF="Xlibscm.html#SEC8">GC Attributes</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="Xlibscm.html#IDX117"><CODE>x:GC-Fill-Rule</CODE></A></TD><TD valign=top><A HREF="Xlibscm.html#SEC8">GC Attributes</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="Xlibscm.html#IDX116"><CODE>x:GC-Fill-Style</CODE></A></TD><TD valign=top><A HREF="Xlibscm.html#SEC8">GC Attributes</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="Xlibscm.html#IDX122"><CODE>x:GC-Font</CODE></A></TD><TD valign=top><A HREF="Xlibscm.html#SEC8">GC Attributes</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="Xlibscm.html#IDX110"><CODE>x:GC-Foreground</CODE></A></TD><TD valign=top><A HREF="Xlibscm.html#SEC8">GC Attributes</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="Xlibscm.html#IDX108"><CODE>x:GC-Function</CODE></A></TD><TD valign=top><A HREF="Xlibscm.html#SEC8">GC Attributes</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="Xlibscm.html#IDX124"><CODE>x:GC-Graphics-Exposures</CODE></A></TD><TD valign=top><A HREF="Xlibscm.html#SEC8">GC Attributes</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="Xlibscm.html#IDX115"><CODE>x:GC-Join-Style</CODE></A></TD><TD valign=top><A HREF="Xlibscm.html#SEC8">GC Attributes</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="Xlibscm.html#IDX113"><CODE>x:GC-Line-Style</CODE></A></TD><TD valign=top><A HREF="Xlibscm.html#SEC8">GC Attributes</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="Xlibscm.html#IDX112"><CODE>x:GC-Line-Width</CODE></A></TD><TD valign=top><A HREF="Xlibscm.html#SEC8">GC Attributes</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="Xlibscm.html#IDX109"><CODE>x:GC-Plane-Mask</CODE></A></TD><TD valign=top><A HREF="Xlibscm.html#SEC8">GC Attributes</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="Xlibscm.html#IDX119"><CODE>x:GC-Stipple</CODE></A></TD><TD valign=top><A HREF="Xlibscm.html#SEC8">GC Attributes</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="Xlibscm.html#IDX123"><CODE>x:GC-Subwindow-Mode</CODE></A></TD><TD valign=top><A HREF="Xlibscm.html#SEC8">GC Attributes</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="Xlibscm.html#IDX118"><CODE>x:GC-Tile</CODE></A></TD><TD valign=top><A HREF="Xlibscm.html#SEC8">GC Attributes</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="Xlibscm.html#IDX120"><CODE>x:GC-Tile-Stip-X-Origin</CODE></A></TD><TD valign=top><A HREF="Xlibscm.html#SEC8">GC Attributes</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="Xlibscm.html#IDX121"><CODE>x:GC-Tile-Stip-Y-Origin</CODE></A></TD><TD valign=top><A HREF="Xlibscm.html#SEC8">GC Attributes</A></TD></TR>
+<TR><TD COLSPAN=3> <HR></TD></TR>
+</TABLE><P></P><table><tr><th valign=top>Jump to: &nbsp; </th><td><A HREF="Xlibscm.html#vr_X" style="text-decoration:none"><b>X</b></A>
+ &nbsp;
+</td></tr></table><P>
+
+This is an alphabetical list of concepts introduced in this manual.
+</P>
+<P>
+
+<HR SIZE="6">
+<A NAME="SEC18"></A>
+<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0>
+<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="Xlibscm.html#SEC17"> &lt; </A>]</TD>
+<TD VALIGN="MIDDLE" ALIGN="LEFT">[ &gt; ]</TD>
+<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="Xlibscm.html#SEC17"> &lt;&lt; </A>]</TD>
+<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="Xlibscm.html#SEC_Top"> Up </A>]</TD>
+<TD VALIGN="MIDDLE" ALIGN="LEFT">[ &gt;&gt; ]</TD>
+<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="Xlibscm.html#SEC_Top">Top</A>]</TD>
+<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="Xlibscm.html#SEC_Contents">Contents</A>]</TD>
+<TD VALIGN="MIDDLE" ALIGN="LEFT">[Index]</TD>
+<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="Xlibscm.html#SEC_About"> ? </A>]</TD>
+</TR></TABLE>
+<H1> Concept Index </H1>
+<!--docid::SEC18::-->
+<table><tr><th valign=top>Jump to: &nbsp; </th><td><A HREF="Xlibscm.html#cp_C" style="text-decoration:none"><b>C</b></A>
+ &nbsp;
+<A HREF="Xlibscm.html#cp_D" style="text-decoration:none"><b>D</b></A>
+ &nbsp;
+<A HREF="Xlibscm.html#cp_M" style="text-decoration:none"><b>M</b></A>
+ &nbsp;
+<A HREF="Xlibscm.html#cp_N" style="text-decoration:none"><b>N</b></A>
+ &nbsp;
+<A HREF="Xlibscm.html#cp_R" style="text-decoration:none"><b>R</b></A>
+ &nbsp;
+<A HREF="Xlibscm.html#cp_U" style="text-decoration:none"><b>U</b></A>
+ &nbsp;
+<A HREF="Xlibscm.html#cp_V" style="text-decoration:none"><b>V</b></A>
+ &nbsp;
+<A HREF="Xlibscm.html#cp_X" style="text-decoration:none"><b>X</b></A>
+ &nbsp;
+</td></tr></table><P></P>
+<TABLE border=0>
+<TR><TD></TD><TH ALIGN=LEFT>Index Entry</TH><TH ALIGN=LEFT> Section</TH></TR>
+<TR><TD COLSPAN=3> <HR></TD></TR>
+<TR><TH><A NAME="cp_C"></A>C</TH><TD></TD><TD></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="Xlibscm.html#IDX139">colormap</A></TD><TD valign=top><A HREF="Xlibscm.html#SEC10">6. Colormap</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="Xlibscm.html#IDX134">cursor</A></TD><TD valign=top><A HREF="Xlibscm.html#SEC9">5. Cursor</A></TD></TR>
+<TR><TD COLSPAN=3> <HR></TD></TR>
+<TR><TH><A NAME="cp_D"></A>D</TH><TD></TD><TD></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="Xlibscm.html#IDX46">depth</A></TD><TD valign=top><A HREF="Xlibscm.html#SEC2">2. Display and Screens</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="Xlibscm.html#IDX60">drawable</A></TD><TD valign=top><A HREF="Xlibscm.html#SEC3">3. Drawables</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="Xlibscm.html#IDX59">Drawable</A></TD><TD valign=top><A HREF="Xlibscm.html#SEC3">3. Drawables</A></TD></TR>
+<TR><TD COLSPAN=3> <HR></TD></TR>
+<TR><TH><A NAME="cp_M"></A>M</TH><TD></TD><TD></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="Xlibscm.html#IDX96">map</A></TD><TD valign=top><A HREF="Xlibscm.html#SEC6">3.3 Window Properties and Visibility</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="Xlibscm.html#IDX98">mapped</A></TD><TD valign=top><A HREF="Xlibscm.html#SEC6">3.3 Window Properties and Visibility</A></TD></TR>
+<TR><TD COLSPAN=3> <HR></TD></TR>
+<TR><TH><A NAME="cp_N"></A>N</TH><TD></TD><TD></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="Xlibscm.html#IDX129">none</A></TD><TD valign=top><A HREF="Xlibscm.html#SEC8">GC Attributes</A></TD></TR>
+<TR><TD COLSPAN=3> <HR></TD></TR>
+<TR><TH><A NAME="cp_R"></A>R</TH><TD></TD><TD></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="Xlibscm.html#IDX140">RGB</A></TD><TD valign=top><A HREF="Xlibscm.html#SEC10">6. Colormap</A></TD></TR>
+<TR><TD COLSPAN=3> <HR></TD></TR>
+<TR><TH><A NAME="cp_U"></A>U</TH><TD></TD><TD></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="Xlibscm.html#IDX97">unmap</A></TD><TD valign=top><A HREF="Xlibscm.html#SEC6">3.3 Window Properties and Visibility</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="Xlibscm.html#IDX99">unmapped</A></TD><TD valign=top><A HREF="Xlibscm.html#SEC6">3.3 Window Properties and Visibility</A></TD></TR>
+<TR><TD COLSPAN=3> <HR></TD></TR>
+<TR><TH><A NAME="cp_V"></A>V</TH><TD></TD><TD></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="Xlibscm.html#IDX29">visual</A></TD><TD valign=top><A HREF="Xlibscm.html#SEC2">2. Display and Screens</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="Xlibscm.html#IDX30">Visual</A></TD><TD valign=top><A HREF="Xlibscm.html#SEC2">2. Display and Screens</A></TD></TR>
+<TR><TD COLSPAN=3> <HR></TD></TR>
+<TR><TH><A NAME="cp_X"></A>X</TH><TD></TD><TD></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="Xlibscm.html#IDX1">X</A></TD><TD valign=top><A HREF="Xlibscm.html#SEC1">1. Xlibscm</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="Xlibscm.html#IDX128">x:None</A></TD><TD valign=top><A HREF="Xlibscm.html#SEC8">GC Attributes</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="Xlibscm.html#IDX2"><CODE>Xlib</CODE></A></TD><TD valign=top><A HREF="Xlibscm.html#SEC1">1. Xlibscm</A></TD></TR>
+<TR><TD COLSPAN=3> <HR></TD></TR>
+</TABLE><P></P><table><tr><th valign=top>Jump to: &nbsp; </th><td><A HREF="Xlibscm.html#cp_C" style="text-decoration:none"><b>C</b></A>
+ &nbsp;
+<A HREF="Xlibscm.html#cp_D" style="text-decoration:none"><b>D</b></A>
+ &nbsp;
+<A HREF="Xlibscm.html#cp_M" style="text-decoration:none"><b>M</b></A>
+ &nbsp;
+<A HREF="Xlibscm.html#cp_N" style="text-decoration:none"><b>N</b></A>
+ &nbsp;
+<A HREF="Xlibscm.html#cp_R" style="text-decoration:none"><b>R</b></A>
+ &nbsp;
+<A HREF="Xlibscm.html#cp_U" style="text-decoration:none"><b>U</b></A>
+ &nbsp;
+<A HREF="Xlibscm.html#cp_V" style="text-decoration:none"><b>V</b></A>
+ &nbsp;
+<A HREF="Xlibscm.html#cp_X" style="text-decoration:none"><b>X</b></A>
+ &nbsp;
+</td></tr></table><P>
+
+<HR SIZE="6">
+<A NAME="SEC_Contents"></A>
+<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0>
+<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="Xlibscm.html#SEC_Top">Top</A>]</TD>
+<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="Xlibscm.html#SEC_Contents">Contents</A>]</TD>
+<TD VALIGN="MIDDLE" ALIGN="LEFT">[Index]</TD>
+<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="Xlibscm.html#SEC_About"> ? </A>]</TD>
+</TR></TABLE>
+<H1>Table of Contents</H1>
+<BLOCKQUOTE>
+<A NAME="TOC1" HREF="Xlibscm.html#SEC1">1. Xlibscm</A>
+<BR>
+<A NAME="TOC2" HREF="Xlibscm.html#SEC2">2. Display and Screens</A>
+<BR>
+<A NAME="TOC3" HREF="Xlibscm.html#SEC3">3. Drawables</A>
+<BR>
+<BLOCKQUOTE>
+<A NAME="TOC4" HREF="Xlibscm.html#SEC4">3.1 Windows and Pixmaps</A>
+<BR>
+<A NAME="TOC5" HREF="Xlibscm.html#SEC5">3.2 Window Attributes</A>
+<BR>
+<A NAME="TOC6" HREF="Xlibscm.html#SEC6">3.3 Window Properties and Visibility</A>
+<BR>
+</BLOCKQUOTE>
+<A NAME="TOC7" HREF="Xlibscm.html#SEC7">4. Graphics Context</A>
+<BR>
+<A NAME="TOC9" HREF="Xlibscm.html#SEC9">5. Cursor</A>
+<BR>
+<A NAME="TOC10" HREF="Xlibscm.html#SEC10">6. Colormap</A>
+<BR>
+<A NAME="TOC11" HREF="Xlibscm.html#SEC11">7. Rendering</A>
+<BR>
+<A NAME="TOC14" HREF="Xlibscm.html#SEC14">8. Images</A>
+<BR>
+<A NAME="TOC15" HREF="Xlibscm.html#SEC15">9. Event</A>
+<BR>
+<A NAME="TOC16" HREF="Xlibscm.html#SEC16">Procedure and Macro Index</A>
+<BR>
+<A NAME="TOC17" HREF="Xlibscm.html#SEC17">Variable Index</A>
+<BR>
+<A NAME="TOC18" HREF="Xlibscm.html#SEC18">Concept Index</A>
+<BR>
+</BLOCKQUOTE>
+<HR SIZE=1>
+<A NAME="SEC_OVERVIEW"></A>
+<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0>
+<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="Xlibscm.html#SEC_Top">Top</A>]</TD>
+<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="Xlibscm.html#SEC_Contents">Contents</A>]</TD>
+<TD VALIGN="MIDDLE" ALIGN="LEFT">[Index]</TD>
+<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="Xlibscm.html#SEC_About"> ? </A>]</TD>
+</TR></TABLE>
+<H1>Short Table of Contents</H1>
+<BLOCKQUOTE>
+<A NAME="TOC1" HREF="Xlibscm.html#SEC1">1. Xlibscm</A>
+<BR>
+<A NAME="TOC2" HREF="Xlibscm.html#SEC2">2. Display and Screens</A>
+<BR>
+<A NAME="TOC3" HREF="Xlibscm.html#SEC3">3. Drawables</A>
+<BR>
+<A NAME="TOC7" HREF="Xlibscm.html#SEC7">4. Graphics Context</A>
+<BR>
+<A NAME="TOC9" HREF="Xlibscm.html#SEC9">5. Cursor</A>
+<BR>
+<A NAME="TOC10" HREF="Xlibscm.html#SEC10">6. Colormap</A>
+<BR>
+<A NAME="TOC11" HREF="Xlibscm.html#SEC11">7. Rendering</A>
+<BR>
+<A NAME="TOC14" HREF="Xlibscm.html#SEC14">8. Images</A>
+<BR>
+<A NAME="TOC15" HREF="Xlibscm.html#SEC15">9. Event</A>
+<BR>
+<A NAME="TOC16" HREF="Xlibscm.html#SEC16">Procedure and Macro Index</A>
+<BR>
+<A NAME="TOC17" HREF="Xlibscm.html#SEC17">Variable Index</A>
+<BR>
+<A NAME="TOC18" HREF="Xlibscm.html#SEC18">Concept Index</A>
+<BR>
+
+</BLOCKQUOTE>
+<HR SIZE=1>
+<A NAME="SEC_About"></A>
+<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0>
+<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="Xlibscm.html#SEC_Top">Top</A>]</TD>
+<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="Xlibscm.html#SEC_Contents">Contents</A>]</TD>
+<TD VALIGN="MIDDLE" ALIGN="LEFT">[Index]</TD>
+<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="Xlibscm.html#SEC_About"> ? </A>]</TD>
+</TR></TABLE>
+<H1>About this document</H1>
+This document was generated
+by
+using <A HREF="http://texi2html.cvshome.org"><I>texi2html</I></A>
+<P></P>
+The buttons in the navigation panels have the following meaning:
+<P></P>
+<table border = "1">
+<TR>
+<TH> Button </TH>
+<TH> Name </TH>
+<TH> Go to </TH>
+<TH> From 1.2.3 go to</TH>
+</TR>
+<TR>
+<TD ALIGN="CENTER">
+ [ &lt; ] </TD>
+<TD ALIGN="CENTER">
+Back
+</TD>
+<TD>
+previous section in reading order
+</TD>
+<TD>
+1.2.2
+</TD>
+</TR>
+<TR>
+<TD ALIGN="CENTER">
+ [ &gt; ] </TD>
+<TD ALIGN="CENTER">
+Forward
+</TD>
+<TD>
+next section in reading order
+</TD>
+<TD>
+1.2.4
+</TD>
+</TR>
+<TR>
+<TD ALIGN="CENTER">
+ [ &lt;&lt; ] </TD>
+<TD ALIGN="CENTER">
+FastBack
+</TD>
+<TD>
+beginning of this chapter or previous chapter
+</TD>
+<TD>
+1
+</TD>
+</TR>
+<TR>
+<TD ALIGN="CENTER">
+ [ Up ] </TD>
+<TD ALIGN="CENTER">
+Up
+</TD>
+<TD>
+up section
+</TD>
+<TD>
+1.2
+</TD>
+</TR>
+<TR>
+<TD ALIGN="CENTER">
+ [ &gt;&gt; ] </TD>
+<TD ALIGN="CENTER">
+FastForward
+</TD>
+<TD>
+next chapter
+</TD>
+<TD>
+2
+</TD>
+</TR>
+<TR>
+<TD ALIGN="CENTER">
+ [Top] </TD>
+<TD ALIGN="CENTER">
+Top
+</TD>
+<TD>
+cover (top) of document
+</TD>
+<TD>
+ &nbsp;
+</TD>
+</TR>
+<TR>
+<TD ALIGN="CENTER">
+ [Contents] </TD>
+<TD ALIGN="CENTER">
+Contents
+</TD>
+<TD>
+table of contents
+</TD>
+<TD>
+ &nbsp;
+</TD>
+</TR>
+<TR>
+<TD ALIGN="CENTER">
+ [Index] </TD>
+<TD ALIGN="CENTER">
+Index
+</TD>
+<TD>
+concept index
+</TD>
+<TD>
+ &nbsp;
+</TD>
+</TR>
+<TR>
+<TD ALIGN="CENTER">
+ [ ? ] </TD>
+<TD ALIGN="CENTER">
+About
+</TD>
+<TD>
+this page
+</TD>
+<TD>
+ &nbsp;
+</TD>
+</TR>
+</TABLE>
+ <P>
+ where the <STRONG> Example </STRONG> assumes that the current position
+ is at <STRONG> Subsubsection One-Two-Three </STRONG> of a document of
+ the following structure:</P>
+ <UL>
+ <LI> 1. Section One
+ <UL>
+ <LI>1.1 Subsection One-One
+ <UL>
+ <LI>...</LI>
+ </UL>
+ <LI>1.2 Subsection One-Two
+ <UL>
+ <LI>1.2.1 Subsubsection One-Two-One</LI>
+ <LI>1.2.2 Subsubsection One-Two-Two</LI>
+ <LI>1.2.3 Subsubsection One-Two-Three &nbsp; &nbsp;
+ <STRONG>&lt;== Current Position </STRONG></LI>
+ <LI>1.2.4 Subsubsection One-Two-Four</LI>
+ </UL>
+ </LI>
+ <LI>1.3 Subsection One-Three
+ <UL>
+ <LI>...</LI>
+ </UL>
+ </LI>
+ <LI>1.4 Subsection One-Four</LI>
+ </UL>
+ </LI>
+ </UL>
+
+<HR SIZE=1>
+<BR>
+<FONT SIZE="-1">
+This document was generated
+by <I>James LewisMoss</I> on <I>May, 6 2004</I>
+using <A HREF="http://texi2html.cvshome.org"><I>texi2html</I></A>
+</FONT>
+
+</BODY>
+</HTML>