В одном из моих приложений eclipse e4 JMSToolBox некоторые данные отображаются в виде TableViewer
Контекстное меню определено в файле модели e4 (e4xmi
) и связано с TableViewer
следующим образом
menuService.registerContextMenu(tableViwere.getTable(), <name of the e4 part menu>);
Прикрепленный к контекстному меню в модели e4, «пункт меню» связан с классом "Dynamic Menu Contribution"
, который динамически добавляет пункты меню в меню:
public class VisualizerShowPayloadAsMenu {
@Inject private EModelService modelService;
@AboutToShow
public void aboutToShow(EModelService modelService, List<MMenuElement> items) {
// Not the real code..., illustrate adding a dynamic menu item to the contextual menu
MDirectMenuItem dynamicItem = modelService.createModelElement(MDirectMenuItem.class);
dynamicItem.setLabel(<name..>);
dynamicItem.setContributorURI(Constants.BASE_CORE_PLUGIN);// "platform:/plugin/org.titou10.jtb.core");
dynamicItem.setContributionURI(Constants.VISUALIZER_MENU_URI);// "bundleclass://org.titou10.jtb.core/org.titou10.jtb.visualizer.ui.VisualizerShowPayloadAsHandler");
items.add(dynamicItem);
}
Теперь я хочу захватить данные в базовой ячейке, где было активировано контекстное меню, и вернуть это значение обратно в метод, аннотированный "@AboutToShow"
, чтобы
добавить MDirectMenuItem
записи в контекстное меню с меткой, содержащей это значение
Q: как это сделать с помощью eclipse rcp e4?
На прикрепленном рисунке щелчок правой кнопкой мыши произошел в ячейке с содержимым = "ID:414d5120514d41414544202020202020ee4bb25612666920"
. Я хотел бы вернуть это значение обратно в метод @AboutToShow
и добавить пункты меню в меню "Open Payload as..."
на основе этого значения
Спасибо