Захватите выделенный текст от редактора Java Eclipse

Я разрабатываю плагин Eclipse, где после нажатия кнопки, плагин берет выделенный текст в редакторе Java и вставляет текстовое поле, которое появляется.

Мой код похож на это: Я получил его отсюда: http://dev.eclipse.org/newslists/news.eclipse.newcomer/msg02200.html

private ITextSelection getSelection(ITextEditor editor) {
     ISelection selection = editor.getSelectionProvider()
            .getSelection();
     return (ITextSelection) selection;
}

private String getSelectedText(ITextEditor editor) {
     return getSelection(editor).getText();
}

Проблема состоит в том, как я доберусь ITextEditor из отображаемого редактора Java. По совпадению это - следующий вопрос в потоке в ссылке, которую я отправил, но это является оставшимся без ответа :(

6
задан Lii 6 May 2016 в 08:42
поделиться

1 ответ

Вы можете запросить ActiveEditor , как в этой ветке :

IEditorPart part;

part =
PlatformUI.getWorkbench().getActiveWorkbenchWindow().getActivePage().get
ActiveEditor();

if(part instanceof ITextEditor){
    ITextEditor editor = (ITextEditor)part;
    IDocumentProvider provider = editor.getDocumentProvider();
    IDocument document = provider.getDocument(editor.getEditorInput());

OP Krt_Malta упоминает эту запись в блоге «Программно запрашивать текущий выделенный текст» , которая аналогична этому другому ответу SO (написанному перед записью в блоге) «Заменить выбранный код из редактора eclipse через команда плагина ".

7
ответ дан 16 December 2019 в 21:38
поделиться
Другие вопросы по тегам:

Похожие вопросы: