Eclipse RCP: избавиться от сообщения «Сброс перспективы» - PullRequest
0 голосов
/ 01 октября 2010

В приложении RCP мы динамически загружаем плагины, и наше приложение может добавлять новые плагины.Когда мы создаем новый плагин, мы затем загружаем его с:

newBundle = Activator.getDefault().getBundleContext().installBundle(location);
newBundle.start(); 

Это вызывает диалоговое окно подтверждения с сообщением «Изменения в установленных плагинах повлияли на эту перспективу. Вы хотите сбросить эту перспективупринять эти изменения? "

Есть ли способ избавиться от этого диалога, чтобы вмешательство пользователя здесь не требовалось?

1 Ответ

1 голос
/ 13 декабря 2010

Я кратко рассмотрел реализацию, и не похоже, что существует простой способ убедиться, что сообщение не существует.Вы можете найти реализацию, посмотрев на исходный код org.eclipse.ui.internal.WorkbenchPage.suggestReset().

Однако есть несколько вещей, которые вы можете попробовать:

  1. , поскольку вы создаете приложение RCP и, предположительно, имеете контроль над тем, какие пользователи устанавливают, вы можете отправить свое приложение сфункциональный патч для плагина org.eclipse.ui.workbench и перезаписи WorkbenchPage с вашей реализацией, которая по-разному реализует предложитьReset.
  2. Вы можете вызвать ошибку для этого в bugzilla Eclipse и прикрепить патч.Еще не поздно получить исправление в 3.7 (хотя время истекает).
  3. Вы можете отправить свое приложение RCP с измененной формой WorkbenchPage, которая ведет себя так, как вам нужно.

Я бы предложил # 2 независимо от того, что именно, а затем определил, является ли # 1 или # 3 лучшим способом, пока ваш патч не будет принят.

...