Museum

Home

Lab Overview

Retrotechnology Articles

Online Manuals

⇒ () — MultiPersonal System R32V2

Media Vault

Software Library

Restoration Projects

Artifacts Sought



     XCreateColormap(3X)                      XCreateColormap(3X)



     NAME
          XCreateColormap, XCopyColormapAndFree, XFreeColormap,
          XSetWindowColormap - create, copy, or destroy colormaps

     SYNOPSIS
          Colormap XCreateColormap(display, w, visual, alloc)
                Display *display;
                Window w;
                Visual *visual;
                int alloc;

          Colormap XCopyColormapAndFree(display, colormap)
                Display *display;
                Colormap colormap;

          XFreeColormap(display, colormap)
                Display *display;
                Colormap colormap;

          XSetWindowColormap(display, w, colormap)
                Display *display;
                Window w;
                Colormap colormap;

     ARGUMENTS
          alloc     Specifies the colormap entries to be
                    allocated.  You can pass AllocNone or
                    AllocAll.

          colormap  Specifies the colormap that you want to
                    create, copy, set, or destroy.

          display   Specifies the connection to the X server.

          visual    Specifies a pointer to a visual type
                    supported on the screen.  If the visual type
                    is not one supported by the screen, a
                    BadMatch error results.

          w         Specifies the window for which you want to
                    create or set a colormap .

     DESCRIPTION
          The XCreateColormap function creates a colormap of the
          specified visual type for the screen on which the
          specified window resides and returns the colormap ID
          associated with it.  Note that the specified window is
          only used to determine the screen.

          The initial values of the colormap entries are
          undefined for the visual classes GrayScale,
          PseudoColor, and DirectColor.  For StaticGray,



                                - 1 -





     XCreateColormap(3X)                      XCreateColormap(3X)



          StaticColor, and TrueColor, the entries have defined
          values, but those values are specific to the visual and
          are not defined by X.  For StaticGray, StaticColor, and
          TrueColor, alloc must be AllocNone, or a BadMatch error
          results.  For the other visual classes, if alloc is
          AllocNone, the colormap initially has no allocated
          entries, and clients can allocate them.  For
          information about the visual types, see section 3.1.

          If alloc is AllocAll, the entire colormap is allocated
          writable.  The initial values of all allocated entries
          are undefined.  For GrayScale and PseudoColor, the
          effect is as if an XAllocColorCells call returned all
          pixel values from zero to N - 1, where N is the
          colormap entries value in the specified visual.  For
          DirectColor, the effect is as if an XAllocColorPlanes
          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.  However, in all cases, none of these entries
          can be freed by using XFreeColors.

          XCreateColormap can generate BadAlloc, BadMatch,
          BadValue, and BadWindow errors.

          The XCopyColormapAndFree function creates a colormap of
          the same visual type and for the same screen as the
          specified colormap and returns the new colormap ID.  It
          also moves all of the client's existing allocation from
          the specified colormap 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
          AllocAll, the new colormap is also created with
          AllocAll, all color values for all entries are copied
          from the specified colormap, and then all entries in
          the specified colormap are freed.  If the specified
          colormap was not created by the client with AllocAll,
          the allocations to be moved are all those pixels and
          planes that have been allocated by the client using
          XAllocColor, XAllocNamedColor, XAllocColorCells, or
          XAllocColorPlanes and that have not been freed since
          they were allocated.

          XCopyColormapAndFree can generate BadAlloc and BadColor
          errors.

          The XFreeColormap function deletes the association
          between the colormap resource ID and the colormap and
          frees the colormap storage.  However, this function has



                                - 2 -





     XCreateColormap(3X)                      XCreateColormap(3X)



          no effect on the default colormap for a screen.  If the
          specified colormap is an installed map for a screen, it
          is uninstalled (see XUninstallColormap).  If the
          specified colormap is defined as the colormap for a
          window (by XCreateWindow, XSetWindowColormap, or
          XChangeWindowAttributes), XFreeColormap changes the
          colormap associated with the window to None and
          generates a ColormapNotify event.  X does not define
          the colors displayed for a window with a colormap of
          None.

          XFreeColormap can generate a BadColor error.

          The XSetWindowColormap function sets the specified
          colormap of the specified window.  The colormap must
          have the same visual type as the window, or a BadMatch
          error results.

          XSetWindowColormap can generate BadColor, BadMatch, and
          BadWindow errors.

     DIAGNOSTICS
          BadAlloc  The server failed to allocate the requested
                    resource or server memory.

          BadColor  A value for a Colormap argument does not name
                    a defined Colormap.

          BadMatch  An InputOnly window is used as a Drawable.

          BadMatch  Some argument or pair of arguments has the
                    correct type and range but fails to match in
                    some other way required by the request.

          BadValue  Some numeric value falls outside the range of
                    values accepted by the request.  Unless a
                    specific range is specified for an argument,
                    the full range defined by the argument's type
                    is accepted.  Any argument defined as a set
                    of alternatives can generate this error.

          BadWindow A value for a Window argument does not name a
                    defined Window.

     SEE ALSO
          XAllocColor(3X11), XQueryColor(3X11),
          XStoreColors(3X11)
          Xlib Programming Manual







                                - 3 -



Typewritten Software • bear@typewritten.org • Edmonds, WA 98026