I have a UI in which when I select an item (in a tree) and then press a button "add", I get a new editor. With each item I can get an editor. (but all have the same ID)
My purpose is to close only the editor of item1, for example, when I press "save".
I'm able to close all the editors with:
getSite().getWorkbenchWindow().getActivePage().closeAllEditors(true);
But not only the one that I need to close.
I think, this problem might be solved using the IEditorreferences but don't know exactly how to do it! :( please help :)
List<IEditorReference> editors = new ArrayList<IEditorReference>();
for (IWorkbenchWindow window : PlatformUI.getWorkbench().getWorkbenchWindows()) {
for (IWorkbenchPage page : window.getPages()) {
for (IEditorReference editor : page.getEditorReferences()) {
editors.add(editor);
}
}
}
getSite().getWorkbenchWindow().getActivePage().closeEditor(editors.get(index)????,true);