hi,
I'm developing an Eclipse plugin with an object contribution (submenu called "New Submenu2") to a context menu of a third-party plugin. I'd like to add some menu items to my submenu dynamically. Unfortunately, I can't get my code to work. Here's my code and a part of plugin.xml. Any help would be greatly appreciated...
//////////////////////////////////////////
IMenuService menuService = (IMenuService)PlatformUI.getWorkbench().getService(IMenuService.class);
AbstractContributionFactory factory = new AbstractContributionFactory(
//"popup:org.eclipse.ui.popup.any?after=additions",null) {
"popup:psu.menu2?after=additions",Activator.PLUGIN_ID) {
public void createContributionItems(IServiceLocator serviceLocator, IContributionRoot additions) {
CommandContributionItemParameter itemParam = new CommandContributionItemParameter(
serviceLocator, "my.id","my.command",SWT.PUSH);
itemParam.label = "MyItem";
CommandContributionItem item = new CommandContributionItem(itemParam);
item.setVisible(true);
additions.addContributionItem(item,null);
}
public void releaseContributionItems(IMenuService menuService,List items) {}
};
menuService.addContributionFactory(factory);
//----------------------------------------------------------------------------
<extension point="org.eclipse.ui.popupMenus">
<objectContribution
id="psu.contextmenu.classeditpart"
objectClass="org.topcased.modeler.uml.classdiagram.edit.ClassEditPart">
<menu
id="psu.menu2"
label="New Submenu2"
path="additions">
<separator
name="group2">
</separator>
</menu>
<action
class="psu.popup.actions.NewAction2"
enablesFor="1"
id="psu.newAction2"
label="New Action2"
menubarPath="psu.menu2/group2">
</action>
</objectContribution>
</extension>