2013-06-21 3 views
1

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

<menuContribution 
      allPopups="false" 
      locationURI="toolbar:test.ui.views.MyView"> 
     <command 
       commandId="test.ui.commands.Command1" 
       id="test.ui.commands.Command1.dropdown" 
       label="Command 1" 
       style="pulldown"> 
     </command> 
     </menuContribution> 

Тогда у меня есть несколько других команд вклад в Command1 раскрывающемся меню, как это:

<menuContribution 
     allPopups="false" 
     locationURI="menu:test.ui.commands.Command1.dropdown"> 
    <command 
      commandId="test.ui.commands.Command2" 
      label="Command 2" 
      style="push"> 
    </command> 
    <command 
      commandId="test.ui.commands.Command3" 
      label="Command 3" 
      style="push"> 
    </command> 
    </menuContribution> 

до сих пор все работает отлично, я могу увидеть этикетку Command1 на панели инструментов Просмотр и при нажатии на символ раскрывающегося списка рядом с ним , меню отображается с командами Command2 и Command3 - как и ожидалось.

Проблема:

То, что я хотел бы достичь сейчас, когда я нажимаю на элемент Command2, чтобы отобразить метку Command2 в раскрывающемся меню вместо выпадающих этикеток Command1.

Заранее благодарим за любую помощь!

ответ

2

У вас должен быть свой обработчик для команды 1 1 org.eclipse.ui.commands.IElementUpdater и в соответствующее время звоните org.eclipse.ui.commands.ICommandService.refreshElements(String, Map).

У вас есть возможность установить метку для UIElement (основной элемент инструмента).