如果在项目浏览器中将其删除,我需要在编辑器中关闭一个打开的IFile。
据我所知 IResourceChangeListener 可用于侦听项目工作区中的更改,但如何获取已删除的相关文件。
如
event.getResource()
返回似乎已更改的IP项目。
如何找到已删除的文件并在编辑器中打开该文件?
答案 0 :(得分:0)
资源更改事件通常包含有关所有相关资源更改的信息。对于文件更改,这将是文件,父文件夹和项目。 getResource
IResourceChangeEvent
方法只返回已更改的最顶层资源。
IResourceDelta
返回的getDelta
包含资源更改事件涵盖的完整资源集:
IResourceDelta delta = event.getDelta();
您可以使用以下方法搜索特定文件的增量:
IResourceDelta fileDelta = delta.findMember(file.getFullPath());
您还可以使用accept
方法呼叫访问者'在每个资源上。