Восстановите страницу приветствия Eclipse с помощью плагина

#eclipse #eclipse-plugin #eclipse-rcp #eclipse-cdt #menubar

Вопрос:

У меня есть настроенная установка eclipse, в которой нет Help -> Welcome опции. Какой-то плагин скрыл его из меню.

Есть ли способ вернуть эту опцию, заменив какой-либо плагин или добавив в меню с помощью org.eclipse.ui.menus точки расширения?

До сих пор я пытался следовать, расширяя WorkbenchWindowAdvisor , чтобы сделать видимыми все меню, но это эффективно только для тех меню, которые уже есть.

 @Override
public void postWindowOpen() { 
    IWorkbenchWindow workbenchWindow =  PlatformUI.getWorkbench().getActiveWorkbenchWindow();
    IContributionItem[] items = ((WorkbenchWindow)workbenchWindow).getMenuBarManager().getItems();
    for (IContributionItem item : items) {
            item.setVisible(false);
    }
}
 

Наиболее вероятным плагином, по-видимому, является org.eclipse.ui.workbench

Комментарии:

1. Вы уверены, что страница приветствия правильно включена в вашем продукте RCP ? Что вы подразумеваете под «Какой-то плагин скрыл его из меню» ? Какой плагин скрыл пункт меню Справка > Приветствие> ?

2. Когда я нажимаю кнопку «Справка», я не вижу опции «Приветствие» в подменю. Я не уверен, какой плагин в установке скрыл это. Я ищу способы снова сделать это видимым.

3. Плагин org.eclipse.ui.intro.universal используется в установке eclipse, которая обычно является базовым плагином для универсального приветствия.

4. Если ваше предположение верно, страницу приветствия все еще можно открыть с помощью Ctrl 3, введя welcome и нажав Enter. Можете ли вы подтвердить, что это правда?

5. Идентификатор продукта по умолчанию указан в configuration/config.ini файле как eclipse.product=<product ID> (который можно переопределить в eclipse.ini (или в вашем RCP <app name>.ini ) или в командной строке через -product <product ID> ).

Ответ №1:

После детальной отладки в моей установке был плагин, который неправильно использовал productID org.eclipse.ui.intro расширение, поэтому опция страницы приветствия не была видна.

    <extension
         point="org.eclipse.ui.intro">
      <introProductBinding
            introId="org.eclipse.ui.intro.universal"
            productId="com.xyz.ide">
      </introProductBinding>
   </extension>