在Eclipse插件中,我有一个MultiPageEditorPart
的实现,它与文件扩展名关联-我们称之为f
。
当我在标准Package Explorer中单击文件f
时,将打开编辑器。到目前为止,一切正常。
但是不能正常工作的是,将此编辑器与Package Explorer链接在一起。假设某人有几个打开的编辑器,其中一个是自定义MultiPageEditorPart
。如果通过选项卡(而不是Package Explorer)选择了自定义编辑器,则应该在Package Explorer中选择/标记相应的文件。
按照"link with editor" for FormEditor中的示例,我尝试使用ILinkHelper
和扩展点org.eclipse.ui.navigator.LinkHelper
来实现这一点,但是从未调用过它。
如何将ILinkHelper
与MultiPageEditorPart
一起使用?
PS:我正在使用Eclipse Oxygen
答案 0 :(得分:0)
MulitpageEditorPart
(和其他编辑器)的IEditorInput
拥有方法
<T> T getAdapter(Class<T> adapter)
如果使用IResource.class
或IFile.class
调用此方法,则它应返回作为当前编辑器源的IResource。然后,Eclipse将其用于将编辑器与视图(包资源管理器)链接起来。
赞:
<T> T getAdapter(Class<T> adapter) {
if (IResource.class.isAssignableFrom(adapter) {
return (T) myFile;
}
}