XmDropTransfer - The DropTransfer widget class
#include <Xm/DragDrop.h>
DropTransfer provides a set of resources that identifies the procedures and associated information required by the toolkit in order to process and complete a drop transaction. Clients should not explicitly create a DropTransfer widget. Instead, a client initiates a transfer by calling XmDropTransferStart, which initializes and returns a DropTransfer widget. If this function is called within an XmNdropProc callback, the actual transfers are initiated after the callback returns. Even if no data needs to be transferred, XmDropTransferStart needs to be called (typically with no arguments, or just setting XmNtransferStatus) to finish the drag and drop transaction.
The XmNdropTransfers resource specifies a transfer list that describes the requested target types for the source data. A transfer list is an array of XmDropTransferEntryRec structures, each of which identifies a target type. The transfer list is analogous to the MULTIPLE selections capability defined in the Inter-Client Communication Conventions Manual (ICCCM).
The DropTransfer resource, XmNtransferProc, specifies a
transfer procedure of type XtSelectionCallbackProc that delivers the
requested selection data. This procedure operates in conjunction with
the underlying Xt selection capabilities and is called for each target
in the transfer list. Additional target types can be requested after a
transfer is initiated by calling the XmDropTransferAdd function.
Structures
An XmDropTransferEntry is a pointer to the following structure of type XmDropTransferEntryRec, which identifies a selection target associated with a given drop transaction:
typedef struct { XtPointer client_data; Atom target; } XmDropTransferEntryRec, *XmDropTransferEntry;
DropTransfer inherits behavior and a resource from Object.
The class pointer is xmDropTransferObjectClass.
The class name is XmDropTransfer.
The following table defines a set of widget resources used by the programmer to specify data. The programmer can also set the resource values for the inherited classes to set attributes for this widget. To reference a resource by name or by class in a .Xdefaults file, remove the XmN or XmC prefix and use the remaining letters. To specify one of the defined values for a resource in a .Xdefaults file, remove the Xm prefix and use the remaining letters (in either lowercase or uppercase, but include any underscores between words). The codes in the access column indicate if the given resource can be set at creation time (C), set by using XtSetValues (S), retrieved by using XtGetValues (G), or is not applicable (N/A).
Name | Class | Type | Default | Access |
---|---|---|---|---|
XmNdropTransfers | XmCDropTransfers | XmDropTransferEntryRec * | NULL | CG |
XmNincremental | XmCIncremental | Boolean | False | CSG |
XmNnumDropTransfers | XmCNumDropTransfers | Cardinal | 0 | CSG |
XmNtransferProc | XmCTransferProc | XtSelectionCallbackProc | NULL | CSG |
XmNtransferStatus | XmCTransferStatus | unsigned char | XmTRANSFER_SUCCESS | CSG |
DropTransfer inherits behavior and a resource from Object. For a complete description of this resource, refer to the Object reference page.
Name | Class | Type | Default | Access |
---|---|---|---|---|
XmNdestroyCallback | XmCCallback | XtCallbackList | NULL | C |
Object(3X), XmDisplay(3X), XmDragContext(3X), XmDragIcon(3X), XmDropSite(3X), XmDropTransferAdd(3X), and XmDropTransferStart(3X).