同一编辑器的两个实例
问题描述:
我使用eclipse PDE创建了一个编辑器。同一编辑器的两个实例
每次我双击同一个文件时,它会打开我的编辑器的新实例,而不是只选择一个已经打开的文件(就像在.java文件中一样)。 我的编辑器输入实现了IEditorInput。 我该如何改变它?
答
从Eclipse的JavaDoc:
IEditorInput是一种重量轻的描述符编辑器的输入,像一个文件名,但更加抽象。这不是一个模型。它是对IEditorPart的模型来源的描述。
实现此编辑器输入接口的客户端应该重写Object.equals(Object)以对两个相同的输入回答true。 IWorbenchPage.openEditor API依赖于此来找到具有相同输入的编辑器。
IWorkbenchPage.openEditor()检查所有打开的编辑器是否相等,然后创建一个新的编辑器。