Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
XCreateColormap(3)		XLIB FUNCTIONS		    XCreateColormap(3)

NAME
       XCreateColormap,	XCopyColormapAndFree, XFreeColormap, XColor - create,
       copy, or	destroy	colormaps and color structure

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

       Colormap	XCopyColormapAndFree(Display *display, Colormap	colormap);

       int XFreeColormap(Display *display, 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 visual type supported on the screen.  If the vis-
		 ual type is not one supported by the screen, a	BadMatch error
		 results.

       w	 Specifies the window on whose screen you want to create 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, Stat-
       icColor,	and TrueColor, the entries have	defined	values,	but those val-
       ues are specific	to the visual and are not defined by X.	 For Stat-
       icGray, StaticColor, and	TrueColor, alloc must be AllocNone, or a Bad-
       Match error results.  For the other visual classes, if alloc is Alloc-
       None, 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	corre-
       sponding	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 BadWin-
       dow 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 cre-
       ated 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,	XAl-
       locNamedColor, 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 no effect on the default colormap for a screen.  If
       the specified colormap is an installed map for a	screen,	it is unin-
       stalled (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.

STRUCTURES
       The XColor structure contains:

       typedef struct {
	       unsigned	long pixel;    /* pixel	value */
	       unsigned	short red, green, blue;	       /* rgb values */
	       char flags;     /* DoRed, DoGreen, DoBlue */
	       char pad;
       } XColor;

       The red,	green, and blue	values are always in the range 0 to 65535 in-
       clusive,	independent of the number of bits actually used	in the display
       hardware.  The server scales these values down to the range used	by the
       hardware.  Black	is represented by (0,0,0), and white is	represented by
       (65535,65535,65535).  In	some functions,	the flags member controls
       which of	the red, green,	and blue members is used and can be the	inclu-
       sive OR of zero or more of DoRed, DoGreen, and DoBlue.

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 Col-
		 ormap.

       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(3), XChangeWindowAttributes(3), XCreateWindow(3), XQuery-
       Color(3), XStoreColors(3)
       Xlib - C	Language X Interface

X Version 11			 libX11	1.6.5		    XCreateColormap(3)

NAME | SYNTAX | ARGUMENTS | DESCRIPTION | STRUCTURES | DIAGNOSTICS | SEE ALSO

Want to link to this manual page? Use this URL:
<https://www.freebsd.org/cgi/man.cgi?query=XCreateColormap&sektion=3&manpath=FreeBSD+12.0-RELEASE+and+Ports>

home | help