Как я могу получить выбранный код в Eclipse?

Для моего плагина я пытаюсь получить доступ к выбранному коду в 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")

enter image description here

К сожалению, я понятия не имею, что мне искать.

6
задан 4 May 2012 в 17:40
поделиться