如果在项目浏览器

时间:2015-05-15 11:11:49

标签: eclipse-plugin eclipse-rcp

如果在项目浏览器中将其删除,我需要在编辑器中关闭一个打开的IFile。

据我所知 IResourceChangeListener 可用于侦听项目工作区中的更改,但如何获取已删除的相关文件。

event.getResource()返回似乎已更改的IP项目。

如何找到已删除的文件并在编辑器中打开该文件?

1 个答案:

答案 0 :(得分:0)

资源更改事件通常包含有关所有相关资源更改的信息。对于文件更改,这将是文件,父文件夹和项目。 getResource IResourceChangeEvent方法只返回已更改的最顶层资源。

IResourceDelta返回的getDelta包含资源更改事件涵盖的完整资源集:

IResourceDelta delta = event.getDelta();

您可以使用以下方法搜索特定文件的增量:

IResourceDelta fileDelta = delta.findMember(file.getFullPath());

您还可以使用accept方法呼叫访问者'在每个资源上。