Как изменить значки папок (например, исходную папку) в обычном представлении навигатора в приложении eclipse-rcp?

Как вы можете видеть в заголовке этого поста, у меня есть вопрос, касающийся значков папок в обычном навигаторе, используемом приложением eclipse-rcp.

В принципе возможно ли изменить значок стандартной папки в представлении навигатора? Моя цель - изменить значок исходной папки созданного проекта. Важно отметить, что существует собственная созданная природа проекта.

Таким образом, каждый созданный проект с такой специфической природой должен иметь собственный значок для исходной папки, но на самом деле я понятия не имею, где я могу изменить этот значок.

Итак, вопрос: какая часть rcp-приложения отвечает за обработку этих значков? Поскольку существует конкретная природа проекта, я бы сказал, что природа должна добавить эти настройки, верно?

Значок папки, который я хотел бы изменить

Здесь вы можете увидеть структуру папок по умолчанию. Я хотел бы изменить значок папки src.

Любая помощь будет принята с благодарностью!

Ура!


Решение:

Для получения дополнительной информации, пожалуйста, перейдите по этой ссылке.

(1) Добавьте точку расширения:

<extension point="org.eclipse.ui.decorators">
<decorator
    id="at.fhjoanneum.segof.wsmleditor.natures.decorators.SourceFolderDecorator"
    label="Source Folder Decorator"
    state="true"
    class= "at.fhjoanneum.segof.wsmleditor.natures.decorators.SourceFolderDecorator"
  objectClass="org.eclipse.core.resources.IFolder"
    adaptable="true">
    <description>
      Source Folder Decorator
    </description>
  </decorator>
</extension>

(2) Создайте класс декоратора:

    public class SourceFolderDecorator extends LabelProvider implements ILabelDecorator {

        public SourceFolderDecorator() {
            super();
        }

        @Override
        public Image decorateImage(Image image, Object element) {
//return the image
            return null;
        }

Ура!

1 ответ

Решение

Чтобы изменить изображение любого объекта в навигаторе, вы можете использовать декоратор меток. Проверить org.eclipse.ui.decorators точка расширения.

Другие вопросы по тегам