同一编辑器的两个实例

问题描述:

我使用eclipse PDE创建了一个编辑器。同一编辑器的两个实例

每次我双击同一个文件时,它会打开我的编辑器的新实例,而不是只选择一个已经打开的文件(就像在.java文件中一样)。 我的编辑器输入实现了IEditorInput。 我该如何改变它?

从Eclipse的JavaDoc:

IEditorInput是一种重量轻的描述符编辑器的输入,像一个文件名,但更加抽象。这不是一个模型。它是对IEditorPart的模型来源的描述。

实现此编辑器输入接口的客户端应该重写Object.equals(Object)以对两个相同的输入回答true。 IWorbenchPage.openEditor API依赖于此来找到具有相同输入的编辑器。

IWorkbenchPage.openEditor()检查所有打开的编辑器是否相等,然后创建一个新的编辑器。