List of usage examples for org.eclipse.jface.action IContributionItem isDynamic
boolean isDynamic();
From source file:org.eclipse.ui.internal.dialogs.cpd.CustomizePerspectiveDialog.java
License:Open Source License
private void createMenuEntries(MMenu menu, DisplayItem parent) { Map<IContributionItem, IContributionItem> findDynamics = new HashMap<>(); DynamicContributionItem dynamicEntry = null; if (menu.getParent() != null) { // Search for any dynamic menu entries which will be handled later Object data = menuMngrRenderer.getManager(menu); if (data instanceof IContributionManager) { IContributionManager manager = (IContributionManager) data; IContributionItem[] items = manager.getItems(); for (int i = 0; i < items.length; i++) { IContributionItem ci = items[i]; if (ci.isDynamic()) { findDynamics.put(i > 0 ? items[i - 1] : null, ci); }/*from w w w .j a v a 2 s . c om*/ } // If there is an item with no preceding item, set it up to be // added first. if (findDynamics.containsKey(null)) { IContributionItem item = findDynamics.get(null); dynamicEntry = new DynamicContributionItem(item); dynamicEntry.setCheckState(getMenuItemIsVisible(dynamicEntry)); dynamicEntry.setActionSet(idToActionSet.get(getActionSetID(item))); parent.addChild(dynamicEntry); } } } for (MMenuElement menuItem : menu.getChildren()) { dynamicEntry = createMenuEntry(parent, findDynamics, dynamicEntry, menuItem); } }