Я студент, и в рамках ежегодного проекта я разрабатываю плагин Eclipse.
Я столкнулся со странной проблемой и пытаюсь исправить ее в течение 2 дней:
Я добавил 3 новых типа маркеров в plugin.xml
.
Для каждого маркера, который я добавил annotationTypes
, и для каждого annotationType
, который я добавил markerAnnotationSpecification
.
Моя цель - покрасить фоновые линии.
В каждом markerAnnotationSpecification
я положил разные значки и разные colorPreferenceValue
.
Странная вещь такова:
При создании маркеров все в порядке, и даже отображаются значки (разные значки для каждого маркера), но цвет фона линий одинаков для всех маркеров.
Я заметил, что последний markerAnnotationSpecification colorPreferenceValue
берется каждый раз.
Когда я изменил порядок markerAnnotationSpecification
в plugin.xml
, цвет изменился на последний.
Я не знаю, что делать?
Также я попал на страницу настроек и изменил там цвет типа аннотации - после применения я увидел, что он обновил цвет 3 типа аннотации до того же цвета.
Разве я не могу добавить больше одного (я так не думаю ...)
Можно ли программно управлять markerAnnotationSpecification.colorPreferenceValue
? Если да, то как?
Я добавляю свой код - возможно, вы увидите то, чего я не вижу:
<extension id="BatonPassing.diff_marker_b"
name="SiteBDiffMarker"
point="org.eclipse.core.resources.markers">
<super type="org.eclipse.core.resources.textmarker"/>
<persistent value="true"/>
</extension>
<extension
point="org.eclipse.ui.editors.annotationTypes">
<type
name="diffAnnotationB"
super="org.eclipse.ui.workbench.texteditor.info"
markerType="BatonPassing.diff_marker_b">
<!--markerSeverity="0"-->
</type>
</extension>
<extension
point="org.eclipse.ui.editors.markerAnnotationSpecification">
<specification
icon = "icons/il.gif"
annotationType="diffAnnotationB"
verticalRulerPreferenceKey="highlight.rulers.vertical"
textPreferenceKey="highlight.text"
colorPreferenceKey="highlight.color"
highlightPreferenceKey="highlight.background"
textPreferenceValue="true"
textStylePreferenceValue="BOX"
overviewRulerPreferenceKey="highlight.rulers.overview"
presentationLayer="4"
highlightPreferenceValue="true"
label="DiffSiteB"
symbolicIcon="warning"
colorPreferenceValue="255,0,0"
verticalRulerPreferenceValue="true"
overviewRulerPreferenceValue="true"
textStylePreferenceKey="highlight.text.style" >
</specification >
</extension>
Каждый код маркера одинаков, но идентификаторы, имена, colorPreferenceValue
не совпадают.
Пожалуйста, помогите мне. Большое спасибо
Hadas