我有一个Eclipse RCP应用程序,它应该通过从Windows资源管理器中拖拽&拖放来打开文件。所以,我实现了这一点:来自外部资源管理器的Eclipse RCP拖放文件不被接受
public class ApplicationWorkbenchAdvisor extends WorkbenchAdvisor {
@Override
public WorkbenchWindowAdvisor createWorkbenchWindowAdvisor(IWorkbenchWindowConfigurer configurer) {
configurer.addEditorAreaTransfer(FileTransfer.getInstance());
configurer.configureEditorAreaDropListener(editorDropListener);
return new ApplicationWorkbenchWindowAdvisor(configurer);
}
[...]
}
editorDropListener
是DropTargetAdapter
类型,并且实现了drop()
方法。
现在,如果我从我的资源管理器拖动文件到我的应用程序,我得到该“Windows不可用”的鼠标图标,并放弃将无法正常工作。 editorDropListener.drop()
未被调用。
如果我拖累了与CTRL或ALT键按该文件,我得到的“窗口复制”鼠标图标。该放置工作并editorDropListener.drop()
被成功调用。
我在哪里可以配置,允许哪种类型的放置?
谢谢。最后,我想要不同的拖动与移位或Ctrl按或不。所以我总是最终找到将任何拖放事件作为副本进行硬编码的实现,以使其能够与eclipse一起使用。所以它是编辑器,我必须“配置”它接受多于复制:) – wuppi 2012-04-23 10:47:24