public class ResourceTransfer extends ByteArrayTransfer
ResourceTransfer
class is used to transfer an
array of IResource
s from one part to another in a
drag and drop operation or a cut, copy, paste action.
In every drag and drop operation there is a DragSource
and
a DropTarget
. When a drag occurs a Transfer
is
used to marshal the drag data from the source into a byte array. If a drop
occurs another Transfer
is used to marshal the byte array into
drop data for the target.
When a CutAction
or a CopyAction
is performed,
this transfer is used to place references to the selected resources
on the Clipboard
. When a PasteAction
is performed, the
references on the clipboard are used to move or copy the resources
to the selected destination.
This class can be used for a Viewer
or an SWT component directly.
A singleton is provided which may be serially reused (see
getInstance
).
It is not intended to be subclassed.
The amount of resources which can be transferred is limited to MAX_RESOURCES_TO_TRANSFER
elements.
StructuredViewer
,
DropTarget
,
DragSource
Modifier and Type | Method and Description |
---|---|
static ResourceTransfer |
getInstance()
Returns the singleton instance.
|
protected int[] |
getTypeIds()
Returns the platform specific ids of the data types that can be converted using
this transfer agent.
|
protected String[] |
getTypeNames()
Returns the platform specific names of the data types that can be converted
using this transfer agent.
|
protected void |
javaToNative(Object data,
TransferData transferData)
This implementation of
javaToNative converts a java
byte[] to a platform specific representation. |
protected Object |
nativeToJava(TransferData transferData)
This implementation of
nativeToJava converts a platform specific
representation of a byte array to a java byte[] . |
getSupportedTypes, isSupportedType
registerType, validate
public static ResourceTransfer getInstance()
protected int[] getTypeIds()
Transfer
getTypeIds
in class Transfer
protected String[] getTypeNames()
Transfer
getTypeNames
in class Transfer
protected void javaToNative(Object data, TransferData transferData)
ByteArrayTransfer
javaToNative
converts a java
byte[]
to a platform specific representation.javaToNative
in class ByteArrayTransfer
data
- a java byte[]
containing the data to be convertedtransferData
- an empty TransferData
object that will
be filled in on return with the platform specific format of the dataTransfer.nativeToJava(org.eclipse.swt.dnd.TransferData)
protected Object nativeToJava(TransferData transferData)
ByteArrayTransfer
nativeToJava
converts a platform specific
representation of a byte array to a java byte[]
.nativeToJava
in class ByteArrayTransfer
transferData
- the platform specific representation of the data to be convertedbyte[]
containing the converted data if the conversion was
successful; otherwise nullTransfer.javaToNative(java.lang.Object, org.eclipse.swt.dnd.TransferData)
Copyright (c) 2000, 2015 Eclipse Contributors and others. All rights reserved.Guidelines for using Eclipse APIs.