Для моего плагина я пытаюсь получить доступ к выбранному коду в CompilationUnitEditor. Поэтому я добавил вклад в контекстное меню и использую следующий код:
public class ContextMenuHandler implements IEditorActionDelegate {
private IEditorPart editorPart;
@Override
public void setActiveEditor(IAction action, IEditorPart editorPart) {
this.editorPart = editorPart;
}
@Override
public void run(IAction action) {
JavaUI.getEditorInputJavaElement(editorPart.getEditorInput());
}
@Override
public void selectionChanged(IAction action, ISelection selection) {
if (selection instanceof TextSelection) {
TextSelection text = (TextSelection) selection;
System.out.println("Text: " + text.getText());
} else {
System.out.println(selection);
}
}
}
Теперь проблема в том, что метод selectionChanged (... )вызывается только тогда, когда я действительно что-то выбираю, чтобы я мог скопировать/вставить это. Но я хочу получить доступ к элементам кода, которые выделены вот так (Здесь я хотел бы получить "IEditorPart")
К сожалению, я понятия не имею, что мне искать.