XSetICValues(3) XLIB FUNCTIONS XSetICValues(3)

# [NAME](#NAME)

XSetICValues, XGetICValues - set and obtain XIC values

# [SYNTAX](#SYNTAX)

char * XSetICValues(XIC *ic*, ...);

char * XGetICValues(XIC *ic*, ...);

# [ARGUMENTS](#ARGUMENTS)

[*ic*](#ic)

Specifies the input context.

...

Specifies the variable length argument list to set or get XIC values.

# [DESCRIPTION](#DESCRIPTION)

The **XSetICValues** function returns NULL if no error occurred; otherwise, it returns the name of the first argument that could not be set. An argument might not be set for any of the following reasons:

- The argument is read-only (for example, **XNFilterEvents**).
- The argument name is not recognized.
- An implementation-dependent error occurs.

Each value to be set must be an appropriate datum, matching the data type imposed by the semantics of the argument.

The **XSetICValues** can generate **BadAtom**, **BadColor**, **BadCursor**, **BadPixmap**, and **BadWindow** errors.

The **XGetICValues** function returns NULL if no error occurred; otherwise, it returns the name of the first argument that could not be obtained. An argument could not be obtained for any of the following reasons:

- The argument name is not recognized.
- The input method encountered an implementation-dependent error.

Each IC attribute value argument (following a name) must point to a location where the IC value is to be stored. That is, if the IC value is of type T, the argument must be of type T\*. If T itself is a pointer type, then **XGetICValues** allocates memory to store the actual data, and the client is responsible for freeing this data by calling **XFree** with the returned pointer. The exception to this rule is for an IC value of type **XNVaNestedList** (for preedit and status attributes). In this case, the argument must also be of type **XVaNestedList**. Then, the rule of changing type T to T* and freeing the allocated data applies to each element of the nested list.

# [DIAGNOSTICS](#DIAGNOSTICS)

[**BadAtom**](#BadAtom)

A value for an Atom argument does not name a defined Atom.

[**BadColor**](#BadColor)

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

[**BadCursor**](#BadCursor)

A value for a Cursor argument does not name a defined Cursor.

[**BadPixmap**](#BadPixmap)

A value for a Pixmap argument does not name a defined Pixmap.

[**BadWindow**](#BadWindow)

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

# [SEE ALSO](#SEE_ALSO)

[**XCreateIC**(3)](/man/os/libx11/XCreateIC.3), [**XOpenIM**(3)](/man/os/libx11/XOpenIM.3), [**XSetICFocus**(3)](/man/os/libx11/XSetICFocus.3), [**XmbResetIC**(3)](/man/os/libx11/XmbResetIC.3)  
*Xlib - C Language X Interface*

libX11 1.8.14 X Version 11

---

Document: XGetICValues(3) from libx11 1.8.14-r1 (Chainguard OS)
Source: https://gitlab.freedesktop.org/xorg/lib/libx11.git
