private static boolean containsMatching(List<MToolBarElement> children, MToolBarElement me) { for (MToolBarElement element : children) { if (Util.equals(me.getElementId(), element.getElementId()) && element.getClass().isInstance(me) && (element instanceof MToolBarSeparator || element instanceof MToolBar)) { return true; } } return false; }
MToolBarSeparator findExistingSeparator(String id) { if (id == null) { return null; } for (MToolBarElement item : toolbarModel.getChildren()) { if (item instanceof MToolBarSeparator && id.equals(item.getElementId())) { return (MToolBarSeparator) item; } } return null; }
MToolBarSeparator findExistingSeparator(String id) { if (id == null) { return null; } for (MToolBarElement item : toolbarModel.getChildren()) { if (item instanceof MToolBarSeparator && id.equals(item.getElementId())) { return (MToolBarSeparator) item; } } return null; }
public static boolean processAddition(final MToolBar toolBarModel, MToolBarContribution toolBarContribution, List<MToolBarElement> contributions, HashSet<String> existingSeparatorNames) { int idx = getIndex(toolBarModel, toolBarContribution.getPositionInParent()); if (idx == -1) { return false; } for (MToolBarElement item : toolBarContribution.getChildren()) { if (item instanceof MToolBarSeparator && existingSeparatorNames.contains(item.getElementId())) { // skip this, it's already there continue; } MToolBarElement copy = (MToolBarElement) EcoreUtil.copy((EObject) item); if (DEBUG) { trace("addToolBarContribution " + copy, toolBarModel.getWidget(), toolBarModel); //$NON-NLS-1$ } toolBarModel.getChildren().add(idx++, copy); contributions.add(copy); if (copy instanceof MToolBarSeparator && copy.getElementId() != null) { existingSeparatorNames.add(copy.getElementId()); } } return true; }
HashSet<String> existingSeparatorNames = new HashSet<String>(); for (MToolBarElement child : toolbarModel.getChildren()) { String elementId = child.getElementId(); if (child instanceof MToolBarSeparator && elementId != null) { existingSeparatorNames.add(elementId);
if (copy instanceof MToolBarSeparator) { MToolBarSeparator shared = findExistingSeparator(copy .getElementId()); if (shared == null) { shared = (MToolBarSeparator) copy;
if (copy instanceof MToolBarSeparator) { MToolBarSeparator shared = findExistingSeparator(copy .getElementId()); if (shared == null) { shared = (MToolBarSeparator) copy;