Eclipse RCP: как зарегистрировать ISourceProviderListener - PullRequest
0 голосов
/ 29 июля 2011

сегодня я попробовал следующее:

У меня есть:

  • a Вид с формой ( FormView )
  • a AbstractSourceProvider ( Provider ), чтобы внести изменения в FormView в мире
  • a Представление ( ConsumerView ), которое должно получать информацию от Провайдера , который он реализует ISourceProviderListener

FormView обновляет поставщика , который запускает fireSourceChanged. Но как я могу зарегистрировать ConsumerView , чтобы он прослушивал изменения в Provider ?

Этот ответ здесь, на stackoverflow, на самом деле не объясняет, как это сделать: Как общаться между представлениями в Eclipse RCP?

Также часто упоминаются руководства Lars Vogels по командам RCP, но я не получаю их оттуда.

Заранее спасибо за помощь!

1 Ответ

0 голосов
/ 02 августа 2011

Изнутри ConsumerView createPartControl(..) метод:

ISourceProviderService service = (ISourceProviderService)getSite().getService(ISourceProviderService.class);

ISourceProvider yourProvider = service.getSourceProvider("yourSourceProviderName");

yourProvider.addSourceProviderListener(this);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...