Я создал простое приложение Eclipse RCP, в котором я могу открывать несколько экземпляров редактора в зависимости от действий пользователя. У меня есть отдельное представление (ViewPart), где я слушаю изменения выбора в редакторе.
Проблема в том, что представление уведомляется только о выборках из последнего открытого редактора, другие редакторы, которые были открыты ранее, больше не предоставляют события / или, возможно, представление слушает только последний открытый редактор и ничего больше. Это происходит, даже если ранее открытые редакторы фокусируются.
Другими словами, только самый новый редактор в области редактора предоставляет события выбора. Я хочу, чтобы при нажатии на вкладках другого редактора я хотел видеть изменения в своем представлении, когда я щелкаю один из ранее открытых редакторов. .
На мой взгляд, я использую:
IWorkbench workbench = PlatformUI.getWorkbench();
workbench.getActiveWorkbenchWindow().getActivePage().addSelectionListener(DocumentsEditor.ID,(ISelectionListener)this);
где DocumentEditor - один из редакторов, открытых в области редактора приложения.