XSetICValues(3)

✨ NAME ✨

XSetICValues, XGetICValues β€” set and obtain XIC values πŸ’–

This page is XSetICValues(3) from the XLIB FUNCTIONS manual, and we're about to get into all the IC value-setting and getting tea. 🫢


🌸 SYNTAX 🌸

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

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

πŸŽ€ ARGUMENTS πŸŽ€

  • ic β€” Specifies the input context.
  • ... β€” Specifies the variable length argument list to set or get XIC values.

πŸ’… DESCRIPTION πŸ’…

Okay so XSetICValues is the setter bestie. It 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.

XGetICValues is the getter bestie. It 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 πŸ¦‹

  • BadAtom β€” A value for an Atom argument does not name a defined Atom.
  • BadColor β€” A value for a Colormap argument does not name a defined Colormap.
  • BadCursor β€” A value for a Cursor argument does not name a defined Cursor.
  • BadPixmap β€” A value for a Pixmap argument does not name a defined Pixmap.
  • BadWindow β€” A value for a Window argument does not name a defined Window.

🌈 SEE ALSO 🌈


πŸ’– that's the whole vibe, signed off with X Version 11, libX11 1.8.14, and the XSetICValues(3) page β€” the footer doesn't list a date, so no made-up date tea here, periodt πŸ’–

πŸ“¦ where this page comes from