У меня проблемы с пользовательскими быстрыми исправлениями, которые я хочу предоставить в своем плагине Eclipse, и я надеюсь, что у кого-то более опытного, чем я, в Eclipse PDE, будут какие-то подсказки для меня по этому вопросу.
Как я понял, я могу предоставить пользовательские так называемые "быстрые исправления" (или "разрешения" в Eclipse внутри терминологии), расширяя точку расширения org.eclipse.ui.ide.markerResolution для определенного идентификатора маркера, такого как, например, некоторый маркер Eclipse по умолчанию, org.eclipse.core.resources.problemmarker .
Это работает для меня для типов маркеров по умолчанию и для пользовательских типов маркеров, НО :
Быстрые исправления, которые предоставляет мой IMarkerResolutionGenerator , доступны только из представления «Проблемы», но не из редактора, в котором отображаются мои маркеры.
Что у меня есть : я создаю маркеры в текстовом редакторе по умолчанию, в результате чего (1) значок с сообщением всплывающей подсказки маркеров отображается на левой линейке редактора в строке, которой является маркер (2) маркер в правой части редактора, (3) некоторые подчеркнутые символы в редакторе и (4) запись в представлении «Проблемы».
Что я хочу : Точно так же, как в поддержке Java IDE, я хочу нажать Strg + 1 или Context-Menu-> Quick Fix, или щелкнуть по значку ошибки на левой стороне- линейка, чтобы увидеть доступные быстрые исправления и выбрать один.
Однако : только в окне «Просмотр проблем» я могу получить быстрые исправления, нажав Strg + 1 или из контекстного меню.
Это нормальное поведение, и мне нужно обращаться к другой точке расширения или к определенным функциям редакторов, чтобы подключить к ним мои быстрые исправления? Я не нашел ничего подробного об этом, кроме того, что все, кажется, очень довольны этой единственной точкой расширения, о которой я упоминал выше. Чего мне не хватает?
Для завершения вот мое определение точки расширения:
<extension point="org.eclipse.ui.ide.markerResolution">
<markerResolutionGenerator
class="com.markers.test.MarkerResolutionGenerator"
markerType="org.eclipse.core.resources.problemmarker">
</markerResolutionGenerator>
</extension>