public void cleanUpCopy(ToolBarContributionRecord record, MToolBarElement copy) { modelContributionToRecord.remove(copy); IContributionItem ici = getContribution(copy); clearModelToContribution(copy, ici); if (ici != null) { record.getManagerForModel().remove(ici); } }
/** * @param model * @param item */ public void clearModelToContribution(MToolBarElement model, IContributionItem item) { if (model instanceof MToolBar) { for (MToolBarElement element : ((MToolBar) model).getChildren()) { IContributionItem ici = getContribution(element); clearModelToContribution(element, ici); } } modelToContribution.remove(model); contributionToModel.remove(item); if (Policy.DEBUG_RENDERER) { logger.debug( "\nTBMR:clearModelToContribution: modelToContribution size = {0}, contributionToModel size = {1}", //$NON-NLS-1$ modelToContribution.size(), contributionToModel.size()); } }
/** * @param record * @param copy */ public void cleanUpCopy(ToolBarContributionRecord record, MToolBarElement copy) { modelContributionToRecord.remove(copy); IContributionItem ici = getContribution(copy); clearModelToContribution(copy, ici); if (ici != null) { record.getManagerForModel().remove(ici); } }
public static void clearOpaqueToolBarItems(ToolBarManagerRenderer tbmr, MToolBar toolbar) { // remove opaque mappings for (Iterator<MToolBarElement> it = toolbar.getChildren().iterator(); it.hasNext();) { MToolBarElement element = it.next(); IContributionItem contribution = tbmr.getContribution(element); if (contribution != null) { tbmr.clearModelToContribution(element, contribution); } if (OpaqueElementUtil.isOpaqueToolItem(element)) { // clear the reference OpaqueElementUtil.clearOpaqueItem(element); // remove the opaque item it.remove(); } } }
/** * @param model * @param manager */ public void clearModelToManager(MToolBar model, ToolBarManager manager) { for (MToolBarElement element : model.getChildren()) { if (element instanceof MToolBar) { clearModelToManager((MToolBar) element, getManager((MToolBar) element)); } IContributionItem ici = getContribution(element); clearModelToContribution(element, ici); } ToolBarManager removed = modelToManager.remove(model); if (manager == null) { managerToModel.remove(removed); } else { managerToModel.remove(manager); } if (Policy.DEBUG_RENDERER) { logger.debug("\nTBMR:clearModelToManager: modelToManager size = {0}, managerToModel size = {1}", //$NON-NLS-1$ modelToManager.size(), managerToModel.size()); } }
@Override public IContributionItem remove(IContributionItem item) { final List<MToolBar> children = modelService.findElements(window, null, MToolBar.class, null); for (int i = 0; i < children.size(); i++) { final MToolBar child = children.get(i); final Object obj = child.getTransientData().get(OBJECT); if (obj != null && obj.equals(item)) { if (child instanceof MToolBarElement) { renderer.clearModelToContribution((MToolBarElement) child, item); } if (item instanceof IToolBarContributionItem) { IToolBarManager parent = ((IToolBarContributionItem) item).getToolBarManager(); if (parent instanceof ToolBarManager) { renderer.clearModelToManager(child, (ToolBarManager) parent); } } workbenchTrimElements.remove(child); child.setToBeRendered(false); child.getParent().getChildren().remove(child); return (IContributionItem) obj; } if (item.getId() != null && item.getId().equals(child.getElementId())) { throw new IllegalStateException(); } } return null; }
modelChildren.removeAll(oldModelItems); for (MOpaqueToolItem model : oldModelItems) { clearModelToContribution(model, (IContributionItem) model.getOpaqueItem());
for (MToolItem model : oldModelItems) { Object obj = OpaqueElementUtil.getOpaqueItem(model); clearModelToContribution(model, (IContributionItem) obj);