private void processGroups(String idContrib, ArrayList<MMenuContribution> contributions, IConfigurationElement element) { MMenuContribution menuContribution = MenuFactoryImpl.eINSTANCE.createMenuContribution(); menuContribution.setVisibleWhen(createVisibleWhen()); menuContribution.getTags().add(ContributionsAnalyzer.MC_MENU); menuContribution.getTags().add("scheme:menu"); //$NON-NLS-1$ final String elementId = MenuHelper.getId(element); if (idContrib != null && idContrib.length() > 0) { menuContribution.setElementId(idContrib + "/" + elementId + ".groups"); //$NON-NLS-1$ //$NON-NLS-2$ } else { menuContribution.setElementId(elementId + ".groups"); //$NON-NLS-1$ } menuContribution.setParentId(elementId); menuContribution.setPositionInParent("after=additions"); //$NON-NLS-1$ IConfigurationElement[] children = element.getChildren(); for (IConfigurationElement sepAddition : children) { String name = sepAddition.getAttribute(IWorkbenchRegistryConstants.ATT_NAME); String tag = sepAddition.getName(); MMenuElement sep = MenuFactoryImpl.eINSTANCE.createMenuSeparator(); sep.setElementId(name); if ("groupMarker".equals(tag)) { //$NON-NLS-1$ sep.setVisible(false); sep.getTags().add(MenuManagerRenderer.GROUP_MARKER); } menuContribution.getChildren().add(sep); } if (menuContribution.getChildren().size() > 0) { contributions.add(menuContribution); } }
/** * @param menuContributions * @param filter */ private void processMenuChildren(ArrayList<MMenuContribution> menuContributions, IConfigurationElement element, String filter) { IConfigurationElement[] menus = element.getChildren(IWorkbenchRegistryConstants.TAG_MENU); if (menus.length == 0) { return; } for (IConfigurationElement menu : menus) { MMenuContribution menuContribution = MenuFactoryImpl.eINSTANCE.createMenuContribution(); String idContrib = MenuHelper.getId(menu); if (idContrib != null && idContrib.length() > 0) { menuContribution.setElementId(idContrib); } menuContribution.setParentId(idContrib); menuContribution.setPositionInParent(AFTER_ADDITIONS); menuContribution.getTags().add("scheme:" + location.getScheme()); //$NON-NLS-1$ menuContribution.getTags().add(filter); menuContribution.setVisibleWhen(MenuHelper.getVisibleWhen(menu)); addMenuChildren(menuContribution, menu, filter); menuContributions.add(menuContribution); processMenuChildren(menuContributions, menu, filter); } }
final String elementId = MenuHelper.getId(element); if (idContrib != null && idContrib.length() > 0) { menuContribution.setElementId(idContrib + "/" + elementId); //$NON-NLS-1$ } else { menuContribution.setElementId(elementId);
String idContrib = MenuHelper.getId(configElement); if (idContrib != null && idContrib.length() > 0) { menuContribution.setElementId(idContrib);
menuContribution.setElementId(factory.getNamespace() + ":" + factory.hashCode()); //$NON-NLS-1$
String idContrib = MenuHelper.getId(configElement); if (idContrib != null && idContrib.length() > 0) { menuContribution.setElementId(idContrib);