Пользовательский помощник по содержимому для редактора Java по умолчанию в Eclipse
В настоящее время я пытаюсь разработать плагин Eclipse для поддержки замены кода, например, как это делается в Eclipse. Я хочу реализовать что-то вроде "автоматически вставлять имена аргументов при завершении метода с визуализированным полем вокруг аргумента", и я могу "использовать клавишу Tab для навигации между вставленными именами" и "во время навигации, список необязательных переменных для текущего аргумента". может отображаться и быть выбранным ".
Короче говоря, речь идет о двух вопросах:
- Как добавить визуализированное поле вокруг уже существующей переменной или даже ключевых слов Java, которые нуждаются в замене? А пока я могу использовать клавишу Tab для переключения между этими полями.
- Как отобразить список кандидатов для выбора при запуске на поле?
К настоящему времени я только выясняю точку расширения: org.eclipse.jdt.ui.javaCompletionProposalComputer может быть полезным, но я не знаю, с чего начать? Заранее спасибо.
1 ответ
О, наконец я решил это сам...
Для "коробки" это должен быть LinkedModeModel, этот класс должен работать с LinkedPositionGroup и LinkedPosition, чтобы добавить несколько блоков. И мы должны использовать LinkedModeUI, чтобы настроить его.
Для помощника по контенту нет необходимости использовать точку расширения. Существует класс ProposalPosition, который расширяет LinkedPosition, чтобы вы могли добавить свои предложения для "ящика" в его конструктор. И мы можем просто использовать CompletionProposal для создания массива ICompletionProposal в качестве аргумента конструктора ProposalPosition.