В классе помощника по работе с окнами WCP вашего RCP вам необходимо настроить типы переноса / отбрасывания области редактора и адаптер отбрасывания в методе preWindowOpen
.
Например, в самом Eclipse используются:
public void preWindowOpen() {
IWorkbenchWindowConfigurer configurer = getWindowConfigurer();
configurer.addEditorAreaTransfer(EditorInputTransfer.getInstance());
configurer.addEditorAreaTransfer(ResourceTransfer.getInstance());
configurer.addEditorAreaTransfer(FileTransfer.getInstance());
configurer.addEditorAreaTransfer(MarkerTransfer.getInstance());
configurer.configureEditorAreaDropListener(new EditorAreaDropAdapter(
configurer.getWindow()));
Обратите внимание, что EditorAreaDropAdapter
является внутренним классом, поэтому вы не можете его использовать, вам придется написать свой собственный адаптер перетаскивания.Это, вероятно, в конечном итоге вызовет IWorbenchPage.openEditor