|
Eclipse Platform Release 3.6 |
|||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
java.lang.Objectorg.eclipse.swt.dnd.Transfer
org.eclipse.swt.dnd.ByteArrayTransfer
org.eclipse.ui.part.EditorInputTransfer
public class EditorInputTransfer
The EditorInputTransfer class is used to transfer an
IEditorInput and corresponding editorId from one part to another
in a drag and drop operation. Only opening of internal editors is supported.
In every drag and drop operation there is a DragSource and a
DropTarget. When a drag occurs a Transfer is used
to marshall the drag data from the source into a byte array. If a drop
occurs another Transfer is used to marshall the byte array into
drop data for the target.
This class can be used for a Viewer or an SWT component directly.
A singleton is provided which may be serially reused (see getInstance).
For an implementor of IEditorInput to be supported by
EditorInputTransfer, it must provide a proper implementation of
IEditorInput.getPersistable. For further details,
consult the org.eclipse.ui.elementFactories extension point.
The data for a transfer is represented by the EditorInputData
class, and a convenience method createEditorInputData is
provided. A DragSource.dragSetData implementation
should set the data to an array of EditorInputData. In this
way, the dragging of multiple editor inputs is supported.
Below is an example of how to set the data for dragging a single editor
input using a EditorInputTransfer.
public void dragSetData(DragSourceEvent event) {
if (EditorInputTransfer.getInstance().isSupportedType(event.dataType)) {
EditorInputTransfer.EditorInputData data =
EditorInputTransfer.
createEditorInputData(EDITOR_ID, getEditorInput());
event.data = new EditorInputTransfer.EditorInputData [] {data};
}
}
StructuredViewer,
DropTarget,
DragSource,
IEditorInput,
IPersistableElement,
IElementFactory| Nested Class Summary | |
|---|---|
static class |
EditorInputTransfer.EditorInputData
|
| Method Summary | |
|---|---|
static EditorInputTransfer.EditorInputData |
createEditorInputData(java.lang.String editorId,
IEditorInput input)
|
static EditorInputTransfer |
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 java.lang.String[] |
getTypeNames()
Returns the platform specific names of the data types that can be converted using this transfer agent. |
void |
javaToNative(java.lang.Object data,
TransferData transferData)
This implementation of javaToNative converts a java
byte[] to a platform specific representation. |
java.lang.Object |
nativeToJava(TransferData transferData)
This implementation of nativeToJava converts a platform specific
representation of a byte array to a java byte[]. |
| Methods inherited from class org.eclipse.swt.dnd.ByteArrayTransfer |
|---|
getSupportedTypes, isSupportedType |
| Methods inherited from class org.eclipse.swt.dnd.Transfer |
|---|
registerType, validate |
| Methods inherited from class java.lang.Object |
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Method Detail |
|---|
public static EditorInputTransfer getInstance()
protected int[] getTypeIds()
Transfer
getTypeIds in class Transferprotected java.lang.String[] getTypeNames()
Transfer
getTypeNames in class Transfer
public void javaToNative(java.lang.Object data,
TransferData transferData)
ByteArrayTransferjavaToNative converts a java
byte[] to a platform specific representation.
javaToNative in class ByteArrayTransferdata - 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)public java.lang.Object nativeToJava(TransferData transferData)
ByteArrayTransfernativeToJava converts a platform specific
representation of a byte array to a java byte[].
nativeToJava in class ByteArrayTransfertransferData - the platform specific representation of the data to be converted
byte[] containing the converted data if the conversion was
successful; otherwise nullTransfer.javaToNative(java.lang.Object, org.eclipse.swt.dnd.TransferData)
public static EditorInputTransfer.EditorInputData createEditorInputData(java.lang.String editorId,
IEditorInput input)
|
Eclipse Platform Release 3.6 |
|||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
Guidelines for using Eclipse APIs.
Copyright (c) Eclipse contributors and others 2000, 2010. All rights reserved.