Table of Contents


XRecolorCursor, XFreeCursor, XQueryBestCursor - manipulate cursors


int XRecolorCursor(Display *display, Cursor cursor, XColor
*foreground_color, XColor *background_color);
int XFreeCursor(Display *display, Cursor cursor);
Status XQueryBestCursor(Display *display, Drawable d,
unsigned int width, unsigned int height, unsigned int *width_return, unsigned int *height_return);


Specifies the RGB values for the background of the source.

Specifies the cursor.

Specifies the drawable, which indicates the screen.

Specifies the connection to the X server.

Specifies the RGB values for the foreground of the source.

Specify the width and height of the cursor that you want the size information for.

Return the best width and height that is closest to the specified width and height.


The XRecolorCursor function changes the color of the specified cursor, and if the cursor is being displayed on a screen, the change is visible immediately. The pixel members of the XColor structures are ignored; only the RGB values are used.

XRecolorCursor can generate a BadCursor error.

The XFreeCursor function deletes the association between the cursor resource ID and the specified cursor. The cursor storage is freed when no other resource references it. The specified cursor ID should not be referred to again.

XFreeCursor can generate a BadCursor error.

Some displays allow larger cursors than other displays. The XQueryBestCursor function provides a way to find out what size cursors are actually possible on the display. It returns the largest size that can be displayed. Applications should be prepared to use smaller cursors on displays that cannot support large ones.

XQueryBestCursor can generate a BadDrawable error.


A value for a Cursor argument does not name a defined Cursor.
A value for a Drawable argument does not name a defined Window or Pixmap.

See Also

XCreateColormap(3X11) , XCreateFontCursor(3X11) , XDefineCusor(3X11)
Xlib - C Language X Interface

Table of Contents