Eclipse Navigator contextMenu - PullRequest
       20

Eclipse Navigator contextMenu

0 голосов
/ 14 марта 2011

Я разрабатываю продукт Eclipse. Я добавил навигатор в плагин, и теперь я хотел бы настроить его контекстное меню, удалив некоторые действия по умолчанию и добавив некоторые пользовательские действия.

Как удалить действия из меню? И как я могу добавить свои действия?

Можно ли вообще создать контекстное меню?

Ответы [ 3 ]

2 голосов
/ 22 марта 2011

В конце я решил так:

  • Я создал навигатор для просмотра, который расширить o.e.ui.navigator.viewer, и я предоставить всплывающее меню с указанием msgstr "allowPlatformContributions = false". Затем я создал как можно больше inserttionPoint как мне нужно для моего контекстного меню. действия, которые я хочу обеспечить в затмении контекстное меню содержится в group.new, group.edit, group.reorganize. Полученный xml:

    <extension
         point="org.eclipse.ui.navigator.viewer">
     .....
      <viewer viewerId="...">
         <popupMenu
               allowsPlatformContributions="false">
            <insertionPoint
                  name="group.xvr.management"
                  separator="true">
            </insertionPoint>
            <insertionPoint
                  name="group.new"
                  separator="true">
            </insertionPoint>
            <insertionPoint
                  name="group.edit"
                  separator="true">
            </insertionPoint>
            <insertionPoint
                  name="group.reorganize">
            </insertionPoint>
            <insertionPoint
                  name="group.xvr.launch"
                  separator="true">
            </insertionPoint>
         </popupMenu>
         </viewer>
         ...
         </extension>
    

    другие две группы имен, group.xvr.launch и group.xvr.management, пользовательские заполнитель для моих действий.

  • тогда я продлил o.e.ui.navigator.navigatorContent создавая свой собственный контент, который я привязать к зрителю. Я добавил в содержание навигатора как можно больше actionProvider, как мне нужно. В каждом из них я переопределяю метод fillContextMenu для предоставления пользовательских действие в контекстном меню.

    @Override
    public void fillContextMenu(IMenuManager menu) {
        menu.appendToGroup("group.xvr.launch", new CommandContributionItem(new CommandContributionItemParameter(...)));
    menu.appendToGroup("group.xvr.launch", new CommandContributionItem(new CommandContributionItemParameter(...)));
    }
    
1 голос
/ 21 марта 2011

Вам необходимо расширить o.e.ui.navigator.navigatorContent и предоставить actionProvider.

0 голосов
/ 14 марта 2011

Вы должны расширить представление навигатора и переопределить контекстное меню (должен быть метод createPartControl). сейчас у меня нет доступа к источнику затмения.

надеюсь, это поможет.

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