Copyright (c) 1993, 1994 X Consortium

Permission is hereby granted, free of charge, to any person obtaining a
copy of this software and associated documentation files (the "Software"),
to deal in the Software without restriction, including without limitation
the rights to use, copy, modify, merge, publish, distribute, sublicense,
and/or sell copies of the Software, and to permit persons to whom the
Software furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in
all copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
THE X CONSORTIUM BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF
OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.

Except as contained in this notice, the name of the X Consortium shall not
be used in advertising or otherwise to promote the sale, use or other
dealing in this Software without prior written authorization from the
X Consortium.

XtGetSelectionValueIncremental __libmansuffix__ __xorgversion__ "XT FUNCTIONS"
NAME
XtGetSelectionValueIncremental, XtGetSelectionValuesIncremental - obtain selection values
SYNTAX
#include <X11/Intrinsic.h>

void XtGetSelectionValueIncremental(Widget w, Atom selection, Atom target, XtSelectionCallbackProc callback, XtPointer client_data, Time time);

void XtGetSelectionValuesIncremental(Widget w, Atom selection, Atom *targets, int count, XtSelectionCallbackProc callback, XtPointer *client_data, Time time);

ARGUMENTS
callback 1i
Specifies the callback procedure that is to be called when the selection value has been obtained.
client_data 1i
Specifies the argument that is to be passed to the specified procedure when it is called.
client_data 1i
Specifies the client data (one for each target type) that is passed to the callback procedure when it is called for that target.
count 1i
Specifies the length of the targets and client_data lists.
selection 1i
Specifies the particular selection desired (that is, primary or secondary).
target 1i
Specifies the type of the information that is needed about the selection.
targets 1i
Specifies the types of information that is needed about the selection.
time 1i
Specifies the timestamp that indicates when the selection value is desired.
w 1i
Specifies the widget that is making the request.
DESCRIPTION
The XtGetSelectionValueIncremental function is similar to XtGetSelectionValue except that the selection_callback procedure will be called repeatedly upon delivery of multiple segments of the selection value. The end of the selection value is indicated when selection_callback is called with a non-NULL value of length zero, which must still be freed by the client. If the transfer of the selection is aborted in the middle of a transfer (for example, because to timeout), the selection_callback procedure is called with a type value equal to the symbolic constant XT_CONVERT_FAIL so that the requestor can dispose of the partial selection value it has collected up until that point. Upon receiving XT_CONVERT_FAIL , the requesting client must determine for itself whether or not a partially completed transfer is meaningful.

The XtGetSelectionValuesIncremental function is similar to XtGetSelectionValueIncremental 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 XtGetSelectionValueIncremental . The callback is called once with the corresponding client data for each target. XtGetSelectionValuesIncremental 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 XtGetSelectionValueIncremental repeatedly.

"SEE ALSO"

\*(xT

\*(xL