XSetWMColormapWindows(), XGetWMColormapWindows() - set or read a window's WM_COLORMAP_WINDOWS property
Status XSetWMColormapWindows (Display *display, Window w,
Window *colormap_windows, int count)
Status XGetWMColormapWindows (Display *display, Window w,
Window **colormap_windows_return,
int *count_return)
The XSetWMColormapWindows(3) function replaces the WM_COLORMAP_WINDOWS property on the specified window with the list of windows specified by the colormap_windows argument. It the property does not already exist, XSetWMColormapWindows(3) sets the WM_COLORMAP_WINDOWS property on the specified window to the list of windows specified by the colormap_windows argument. The property is stored with a type of WINDOW and a format of 32. If it cannot intern the WM_COLORMAP_WINDOWS atom, XSetWMColormapWindows(3) returns a zero status. Otherwise, it returns a nonzero status.
XSetWMColormapWindows(3) can generate BadAlloc and BadWindow errors.
The XGetWMColormapWindows(3) function returns the list of window identifiers stored in the WM_COLORMAP_WINDOWS property on the specified window. These identifiers indicate the colormaps that the window manager might need to install for this window. If the property exists, is of type WINDOW, is of format 32, and the atom WM_COLORMAP_WINDOWS can be interned, XGetWMColormapWindows(3) sets the windows_return argument to a list of window identifiers, sets the count_return argument to the number of elements in the list, and returns a nonzero status. Otherwise, it sets neither of the return arguments and returns a zero status. To release the list of window identifiers, use XFree(3).
XGetWMColormapWindows(3) can generate a BadWindow error.
Xlib