2014-11-17 6 views
0

Эй, ребята, я пару раз начинал разрабатывать материал на основе RCP, и, откровенно говоря, я столкнулся с несколькими проблемами, так как я не нашел столько онлайн, а концепций программирования RCP (на меньше всего для меня) не являются такими линейными.Eclipse RCP Extension Points

Прежде всего позвольте мне сказать, что я использую структуру E4 (модель приложения), и я хочу заполнить две части (части пользовательского интерфейса), где их определения в основном определены во внешнем подключаемом модуле.

Например: - Часть 1 (определенная в Приложении e4) реализует Class1 (определенный в Плагине под названием ExtPlugin).
- Part2 (определенный в Приложении e4) реализует Class2 (определенный в Плагине под названием ExtPlugin).

Как это сделать, используя точки расширения и расширения?

Благодаря

ответ

0

Каждый из ваших плагинов можно использовать модель приложения fragment.e4xmi, чтобы объявить часть и класс.

Используйте точку расширения org.eclipse.e4.workbench.model, чтобы рассказать e4 о фрагменте.

Если вы используете 'File> New> Other ...> Eclipse 4> Model> New Model Fragment', это создаст файл фрагмента.e4xmi и точку расширения plugin.xml.

В файле фрагмент.e4xml вы создаете «Фрагмент модели». В этом фрагменте «Идентификатор элемента» является идентификатором того, что вы расширяете - для частей это часто будет идентификатором стека деталей, определенного в Application.e4xmi. «Имя функции» часто будет «детьми». Добавьте свою часть в фрагмент модели.

Больше here

+0

Ну, в принципе, насколько я понял, для элементов пользовательского интерфейса (например, части), лучше полагаться на фрагментах, а не определение интерфейса и реализовать «@Override класс» для этого интерфейса: HTTP: //www.vogella.com/tutorials/EclipseExtensionPoint/article.html. – unclejohn00

+0

'@Override' не имеет ничего общего с определениями деталей. –

+0

Я имел в виду шаг, когда метод greet() был «переопределен» для реализации его немецкой версии (см. Учебник). Кстати, использование фрагмента модели должно обеспечить достаточную «модульность» для моего кода? – unclejohn00