有什么办法可以获取所有可用的编辑器,而不仅仅是窗口中当前打开的编辑器。
请帮助
答案 0 :(得分:0)
编辑器注册表中有许多API,它们会告诉您可用的编辑器。
通过以下方式获取注册表:
IEditorRegistry registry = PlatformUI.getWorkbench().getEditorRegistry();
您可以通过以下方式找到可用于文件的所有编辑器:
IEditorDescriptor[] editors = registry.getEditors("filename.ext");
或者您可以找到具有给定ID的编辑器:
IEditorDescriptor editor = registry.findEditor("editor id");
没有什么可以列出注册表已知的每个编辑器。
org.eclipse.ui.ide.IDE
类还具有许多获取编辑器描述符和打开编辑器的方法。
要使用特定的编辑器打开文件,请使用:
IDE.openEditor(page, file, "editor id");
其中page
是IWorkbenchPage
,而file
是要打开的IFile
。这等效于:
page.openEditor(new FileEditorInput(file), "editor id");