DtNewDnDTransaction(3Dt) DtNewDnDTransaction(3Dt)
NAME
DtNewDnDTransaction - initiate a drag and drop transaction
SYNOPSIS
#include <Dt/Desktop.h>
DtDnDSendPtr DtNewDnDTransaction(
Widget w,
char **files,
DtAttrs options,
Position root_x,
Position root_y,
Time timestamp,
Window dst_window,
int dnd_hint,
XtCallbackProc del_proc,
XtCallbackProc done_proc,
XtPointer client_data
);
DESCRIPTION
The DtNewDnDTransaction function initiates a drag and drop
transaction with a drop site, and transmits a list of
filenames to the drop site. Typically, this routine is called
from within a XtNdropProc callback [see FlatList(3Olit)].
w widget ID of the widget initiating the drag
and drop transaction
files a NULL terminated list of filenames.
options two options are currently supported:
DT_B_STATIC_LIST
the files is a static list. Thus it should
not be freed after the completion of the
transaction.
If this option is not used, then the list
will be freed automatically upon returning
from the done_proc callback.
DT_B_SEND_EVENT
perform a ``simulated'' drop on a drop site.
root_x x coordinate, relative to the root window, of
the drop point. This value is ignored if
DT_SEND_EVENT option is set.
Copyright 1994 Novell, Inc. Page 1
DtNewDnDTransaction(3Dt) DtNewDnDTransaction(3Dt)
root_y y coordinate, relative to the root window, of
the drop point. This value is ignored if
DT_SEND_EVENT option is set.
timestamp time stamp of the event that triggers the drag
and drop transaction.
dst_window
destination window. This is only used if
DT_SEND_EVENT option is set.
dnd_hint The are possible values: DT_COPY_OP,
DT_MOVE_OP, and DT_LINK_OP. These values
correspond to values of OlDnDTriggerOperation.
del_proc invoke this callback on receiving a DELETE
conversion request within the drag and drop
transaction. The call data is the name of the
file being deleted.
done_proc invoke this callback when the transaction is
terminated. The call data is a pointer to a
DtDnDSendInfo structure. If the
DT_B_STATIC_LIST option is not set, then the
files list will be freed upon returning from
the callback.
client_data
client data for the del_proc and done_proc
callbacks.
The DtDnDSend structure, and the associated DtDnDSendPtr
pointer, includes the following members:
char **files; /* accumulated list of file names */
DtAttrs attrs; /* attributes */
Widget widget; /* owner widget */
Atom selection; /* DnD transaction ID */
char **fp; /* current file name */
Time drop_timestamp; /* timestamp of drop action */
int hint; /* DnD hint */
RETURN VALUES
On success, DtNewDnDTransaction returns a DtDnDSendPtr.
Copyright 1994 Novell, Inc. Page 2
DtNewDnDTransaction(3Dt) DtNewDnDTransaction(3Dt)
On failure, DtNewDnDTransaction returns NULL.
REFERENCES
FlatList(3Olit), OlDnDTriggerOperation(3DnD)
Copyright 1994 Novell, Inc. Page 3