Tk_GetColormap(3) Tk Library Procedures Tk_GetColormap(3)______________________________________________________________________________NAME
Tk_GetColormap, Tk_FreeColormap - allocate and free colormaps
Tk_GetColormap(interp, tkwin, string)
Tcl_Interp *interp (in) Interpreter to use for error reporting.
Tk_Window tkwin (in) Token for window in which colormap will
char *string (in) Selects a colormap: either new or the
name of a window with the same screen
and visual as tkwin.
Display *display (in) Display for which colormap was allo‐
Colormap colormap (in) Colormap to free; must have been
returned by a previous call to Tk_Get‐
Colormap or Tk_GetVisual.
These procedures are used to manage colormaps. Tk_GetColormap returns
a colormap suitable for use in tkwin. If its string argument is new
then a new colormap is created; otherwise string must be the name of
another window with the same screen and visual as tkwin, and the col‐
ormap from that window is returned. If string doesn't make sense, or
if it refers to a window on a different screen from tkwin or with a
different visual than tkwin, then Tk_GetColormap returns None and
leaves an error message in interp->result.
Tk_FreeColormap should be called when a colormap returned by Tk_GetCol‐
ormap is no longer needed. Tk maintains a reference count for each
colormap returned by Tk_GetColormap, so there should eventually be one
call to Tk_FreeColormap for each call to Tk_GetColormap. When a col‐
ormap's reference count becomes zero, Tk releases the X colormap.
Tk_GetVisual and Tk_GetColormap work together, in that a new colormap
created by Tk_GetVisual may later be returned by Tk_GetColormap. The
reference counting mechanism for colormaps includes both procedures, so
callers of Tk_GetVisual must also call Tk_FreeColormap to release the
colormap. If Tk_GetColormap is called with a string value of new then
the resulting colormap will never be returned by Tk_GetVisual; how‐
ever, it can be used in other windows by calling Tk_GetColormap with
the original window's name as string.
Tk 4.0 Tk_GetColormap(3)