我构建了一个简单的Eclipse插件,用户可以使用TableViewer
数据库资源在任何这些资源上打开编辑器.
因此,用户可能没有正常运行的编辑器实例.
是否有可用于获取这些编辑器实例列表的API?
您可以通过以下方式获取所有开放编辑器的参考:
PlatformUI.getWorkbench().getActiveWorkbenchWindow() .getActivePage().getEditorReferences();
然后检查这些以选择引用编辑器类型实例的那些.
据的Javadoc的API工作台可以有多个窗口,一个窗口可以有几页,而它们不共享编辑器.
因此,为了获得所有开放式编辑器,您应该按照以下方式执行某些操作(排除错误检查等):
Listeditors = new ArrayList (); for (IWorkbenchWindow window : PlatformUI.getWorkbench().getWorkbenchWindows()) { for (IWorkbenchPage page : window.getPages()) { for (IEditorReference editor : page.getEditorReferences()) { editors.add(editor); } } }