Eclipse插件:将mulitPageEditorPart与导航器链接

时间:2019-01-18 13:33:54

标签: java eclipse eclipse-plugin eclipse-rcp

在Eclipse插件中,我有一个MultiPageEditorPart的实现,它与文件扩展名关联-我们称之为f

当我在标准Package Explorer中单击文件f时,将打开编辑器。到目前为止,一切正常。

但是不能正常工作的是,将此编辑器与Package Explorer链接在一起。假设某人有几个打开的编辑器,其中一个是自定义MultiPageEditorPart。如果通过选项卡(而不是Package Explorer)选择了自定义编辑器,则应该在Package Explorer中选择/标记相应的文件。

按照"link with editor" for FormEditor中的示例,我尝试使用ILinkHelper和扩展点org.eclipse.ui.navigator.LinkHelper来实现这一点,但是从未调用过它。

如何将ILinkHelperMultiPageEditorPart一起使用?

PS:我正在使用Eclipse Oxygen

1 个答案:

答案 0 :(得分:0)

MulitpageEditorPart(和其他编辑器)的IEditorInput拥有方法

<T> T getAdapter(Class<T> adapter)

如果使用IResource.classIFile.class调用此方法,则它应返回作为当前编辑器源的IResource。然后,Eclipse将其用于将编辑器与视图(包资源管理器)链接起来。

赞:

<T> T getAdapter(Class<T> adapter) {
   if (IResource.class.isAssignableFrom(adapter) {
       return (T) myFile;
   }
}