---
name: "XtGetSelectionValue"
section: "3"
platform: "linux"
package: "libxt"
version: "1.3.1-1"
release: "Arch Linux 2026-11-01"
platforms: ["linux"]
url: "https://new.carta.tech/XtGetSelectionValue"
---

# XtGetSelectionValue(3)

obtain selection values

## NAME

XtGetSelectionValue, XtGetSelectionValues - obtain selection values

## SYNTAX

\#include \<X11/Intrinsic.h\>

void XtGetSelectionValue(Widget *w*, Atom *selection*, Atom *target*, XtSelectionCallbackProc *callback*, XtPointer *client\_data*, Time *time*);

void XtGetSelectionValues(Widget *w*, Atom *selection*, Atom \**targets*, int *count*, XtSelectionCallbackProc *callback*, XtPointer \**client\_data*, Time *time*);

## ARGUMENTS

- *callback*

  Specifies the callback procedure that is to be called when the selection value has been obtained.

- *client\_data*

  Specifies the argument that is to be passed to the specified procedure when it is called.

- *client\_data*

  Specifies the client data (one for each target type) that is passed to the callback procedure when it is called for that target.

- *count*

  Specifies the length of the targets and client\_data lists.

- *selection*

  Specifies the particular selection desired (that is, primary or secondary).

- *target*

  Specifies the type of the information that is needed about the selection.

- *targets*

  Specifies the types of information that is needed about the selection.

- *time*

  Specifies the timestamp that indicates when the selection value is desired.

- *w*

  Specifies the widget that is making the request.

## DESCRIPTION

The **XtGetSelectionValue** function requests the value of the selection that has been converted to the target type. The specified callback will be called some time after **XtGetSelectionValue** is called; in fact, it may be called before or after **XtGetSelectionValue** returns.

The **XtGetSelectionValues** function is similar to **XtGetSelectionValue** except that it takes a list of target types and a list of client data and obtains the current value of the selection converted to each of the targets. The effect is as if each target were specified in a separate call to **XtGetSelectionValue**. The callback is called once with the corresponding client data for each target. **XtGetSelectionValues** does guarantee that all the conversions will use the same selection value because the ownership of the selection cannot change in the middle of the list, as would be when calling **XtGetSelectionValue** repeatedly.

## SEE ALSO

[XtAppGetSelectionTimeout(3)](/XtAppGetSelectionTimeout/3.md), [XtOwnSelection(3)](/XtOwnSelection/3.md)\
 *X Toolkit Intrinsics - C Language Interface*\
 *Xlib - C Language X Interface*
