在Eclipse RCP中通过拖放在视图之间传输项目



我的应用程序中有2个视图。在其中一个视图中,我可以看到一个包含自定义元素(如MDocument, MVersion…)的TreeStructure。

我希望能够将MVersion类型的项目从我的视图拖动到另一个视图,但我不知道如何声明传输类型或检查所选项目是否支持类型。

任何想法?

最简单的方法是使用LocalSelectionTransfer。一旦你为你的查看器添加了拖放支持…

设置在DragSourceListener.dragStart()方法中拖动的ISelection:

LocalSelectionTransfer.getTransfer().setSelection(selection);

DropTargetListener.drop()中,您检查是否支持类型并检索选择:

if (LocalSelectionTransfer.getTransfer().isSupportedType(event.currentDataType))
    ISelection sel = LocalSelectionTransfer.getTransfer().getSelection();
    ...

最新更新