public void clearModelToContribution(MMenuElement model, IContributionItem item) { if (model instanceof MMenu) { for (MMenuElement element : ((MMenu) model).getChildren()) { IContributionItem ici = getContribution(element); clearModelToContribution(element, ici); } } modelToContribution.remove(model); contributionToModel.remove(item); if (Policy.DEBUG_RENDERER) { logger.debug( "\nMMR:clearModelToContribution: modelToContribution size = {0}, contributionToModel size = {1}", //$NON-NLS-1$ modelToContribution.size(), contributionToModel.size()); } }
/** * @param event * @param element */ private void handleLabelOfMenuItem(Event event, Object element) { String attName = (String) event.getProperty(UIEvents.EventTags.ATTNAME); MMenuItem itemModel = (MMenuItem) element; IContributionItem ici = getContribution(itemModel); if (ici == null) { return; } if (UIEvents.UILabel.LABEL.equals(attName) || UIEvents.UILabel.LOCALIZED_LABEL.equals(attName)) { ici.update(); } else if (UIEvents.UILabel.ICONURI.equals(attName)) { ici.update(); } else if (UIEvents.UILabel.TOOLTIP.equals(attName) || UIEvents.UILabel.LOCALIZED_TOOLTIP.equals(attName)) { ici.update(); } }
public void clearModelToManager(MMenu model, MenuManager manager) { for (MMenuElement element : model.getChildren()) { if (element instanceof MMenu) { clearModelToManager((MMenu) element, getManager((MMenu) element)); } IContributionItem ici = getContribution(element); clearModelToContribution(element, ici); } MenuManager remove = modelToManager.remove(model); if (manager == null) { managerToModel.remove(remove); } else { managerToModel.remove(manager); } if (Policy.DEBUG_RENDERER) { logger.debug("\nMMR:clearModelToManager: modelToManager size = {0}, managerToModel size = {1}", //$NON-NLS-1$ modelToManager.size(), managerToModel.size()); } }
public void handleEvent(Event event) { // Ensure that this event is for a MMenuItem if (!(event.getProperty(UIEvents.EventTags.ELEMENT) instanceof MMenuItem)) return; MMenuItem itemModel = (MMenuItem) event .getProperty(UIEvents.EventTags.ELEMENT); IContributionItem ici = getContribution(itemModel); if (ici != null) { ici.update(); } } };
public void handleEvent(Event event) { // Ensure that this event is for a MToolItem if (!(event.getProperty(UIEvents.EventTags.ELEMENT) instanceof MMenuItem)) return; MMenuItem itemModel = (MMenuItem) event .getProperty(UIEvents.EventTags.ELEMENT); IContributionItem ici = getContribution(itemModel); if (ici != null) { ici.update(); } } };
@Inject @Optional private void subscribeItemEnabledUpdate(@UIEventTopic(UIEvents.Item.TOPIC_ENABLED) Event event) { Object element = event.getProperty(UIEvents.EventTags.ELEMENT); if (!(element instanceof MMenuItem)) { return; } MMenuItem itemModel = (MMenuItem) element; IContributionItem ici = getContribution(itemModel); if (ici != null) { ici.update(); } }
/** * @param menuManager * @param itemModel */ private void processDynamicMenuContribution(MenuManager menuManager, MDynamicMenuContribution itemModel) { IContributionItem ici = getContribution(itemModel); if (ici != null) { return; } DynamicContributionContributionItem ci = new DynamicContributionContributionItem( itemModel); addToManager(menuManager, itemModel, ci); linkModelToContribution(itemModel, ci); }
public void handleEvent(Event event) { // Ensure that this event is for a MMenuItem if (!(event.getProperty(UIEvents.EventTags.ELEMENT) instanceof MMenuItem)) return; MMenuItem itemModel = (MMenuItem) event .getProperty(UIEvents.EventTags.ELEMENT); IContributionItem ici = getContribution(itemModel); if (ici == null) { return; } String attName = (String) event .getProperty(UIEvents.EventTags.ATTNAME); if (UIEvents.UILabel.LABEL.equals(attName)) { ici.update(); } else if (UIEvents.UILabel.ICONURI.equals(attName)) { ici.update(); } } };
/** * @param menuManager * @param itemModel */ private void processDynamicMenuContribution(MenuManager menuManager, MDynamicMenuContribution itemModel) { IContributionItem ici = getContribution(itemModel); if (ici != null) { return; } itemModel.setRenderer(this); DynamicContributionContributionItem ci = new DynamicContributionContributionItem(itemModel); addToManager(menuManager, itemModel, ci); linkModelToContribution(itemModel, ci); }
private void unlinkMenu(MMenu menu) { List<MMenuElement> children = menu.getChildren(); for (MMenuElement child : children) { if (child instanceof MMenu) unlinkMenu((MMenu) child); else { IContributionItem contribution = getContribution(child); clearModelToContribution(child, contribution); } } MenuManager mm = getManager(menu); clearModelToManager(menu, mm); }
void processOpaqueItem(MenuManager parentManager, MOpaqueMenuItem itemModel) { IContributionItem ici = getContribution(itemModel); if (ici != null) { return; } Object obj = itemModel.getOpaqueItem(); if (obj instanceof IContributionItem) { ici = (IContributionItem) obj; } else { return; } ici.setVisible(itemModel.isVisible()); addToManager(parentManager, itemModel, ici); linkModelToContribution(itemModel, ici); }
/** * Clean dynamic menu contributions provided by * {@link MDynamicMenuContribution} application model elements * * @param menuManager * @param menuModel * @param dump */ public void removeDynamicMenuContributions(MenuManager menuManager, MMenu menuModel, ArrayList<MMenuElement> dump) { removeMenuContributions(menuModel, dump); for (MMenuElement mMenuElement : dump) { IContributionItem ici = getContribution(mMenuElement); if (ici == null && mMenuElement instanceof MMenu) { MMenu menuElement = (MMenu) mMenuElement; ici = getManager(menuElement); clearModelToManager(menuElement, (MenuManager) ici); } else { clearModelToContribution(menuModel, ici); } menuManager.remove(ici); } } }
void processOpaqueItem(MenuManager parentManager, MMenuItem itemModel) { IContributionItem ici = getContribution(itemModel); if (ici != null) { return; } itemModel.setRenderer(this); Object obj = OpaqueElementUtil.getOpaqueItem(itemModel); if (obj instanceof IContributionItem) { ici = (IContributionItem) obj; } else { return; } ici.setVisible(itemModel.isVisible()); addToManager(parentManager, itemModel, ici); linkModelToContribution(itemModel, ici); }
public void cleanUpCopy(ContributionRecord record, MMenuElement copy) { modelContributionToRecord.remove(copy); if (copy instanceof MMenu) { MMenu menuCopy = (MMenu) copy; cleanUp(menuCopy); MenuManager copyManager = getManager(menuCopy); clearModelToManager(menuCopy, copyManager); if (copyManager != null) { record.getManagerForModel().remove(copyManager); copyManager.dispose(); } } else { IContributionItem ici = getContribution(copy); clearModelToContribution(copy, ici); if (ici != null) { record.getManagerForModel().remove(ici); } } }
public void cleanUpCopy(ContributionRecord record, MMenuElement copy) { modelContributionToRecord.remove(copy); if (copy instanceof MMenu) { MMenu menuCopy = (MMenu) copy; cleanUp(menuCopy); MenuManager copyManager = getManager(menuCopy); clearModelToManager(menuCopy, copyManager); if (copyManager != null) { record.getManagerForModel().remove(copyManager); copyManager.dispose(); } } else { IContributionItem ici = getContribution(copy); clearModelToContribution(copy, ici); if (ici != null) { record.getManagerForModel().remove(ici); } } }
/** * @param parentManager * @param itemModel * @param id */ void processDirectItem(MenuManager parentManager, MDirectMenuItem itemModel, String id) { IContributionItem ici = getContribution(itemModel); if (ici != null) { return; } final IEclipseContext lclContext = getContext(itemModel); DirectContributionItem ci = ContextInjectionFactory.make( DirectContributionItem.class, lclContext); ci.setModel(itemModel); ci.setVisible(itemModel.isVisible()); addToManager(parentManager, itemModel, ci); linkModelToContribution(itemModel, ci); }
/** * @param parentManager * @param itemModel */ void processHandledItem(MenuManager parentManager, MHandledMenuItem itemModel) { IContributionItem ici = getContribution(itemModel); if (ici != null) { return; } final IEclipseContext lclContext = getContext(itemModel); HandledContributionItem ci = ContextInjectionFactory.make( HandledContributionItem.class, lclContext); ci.setModel(itemModel); ci.setVisible(itemModel.isVisible()); addToManager(parentManager, itemModel, ci); linkModelToContribution(itemModel, ci); }
/** * @param parentManager * @param itemModel */ void processHandledItem(MenuManager parentManager, MHandledMenuItem itemModel) { IContributionItem ici = getContribution(itemModel); if (ici != null) { return; } itemModel.setRenderer(this); final IEclipseContext lclContext = getContext(itemModel); HandledContributionItem ci = ContextInjectionFactory.make(HandledContributionItem.class, lclContext); ci.setModel(itemModel); ci.setVisible(itemModel.isVisible()); addToManager(parentManager, itemModel, ci); linkModelToContribution(itemModel, ci); }
/** * @param parentManager * @param itemModel * @param id */ void processDirectItem(MenuManager parentManager, MDirectMenuItem itemModel, String id) { IContributionItem ici = getContribution(itemModel); if (ici != null) { return; } itemModel.setRenderer(this); final IEclipseContext lclContext = getContext(itemModel); DirectContributionItem ci = ContextInjectionFactory.make(DirectContributionItem.class, lclContext); ci.setModel(itemModel); ci.setVisible(itemModel.isVisible()); addToManager(parentManager, itemModel, ci); linkModelToContribution(itemModel, ci); }
/** * @param menuManager * @param itemModel */ private void processSeparator(MenuManager menuManager, MMenuSeparator itemModel) { IContributionItem ici = getContribution(itemModel); if (ici != null) { return; } itemModel.setRenderer(this); AbstractGroupMarker marker = null; if (itemModel.getTags().contains(GROUP_MARKER) || !itemModel.isVisible()) { if (itemModel.getElementId() != null) { marker = new GroupMarker(itemModel.getElementId()); } } else { marker = new Separator(); marker.setId(itemModel.getElementId()); } if (marker == null) { return; } addToManager(menuManager, itemModel, marker); linkModelToContribution(itemModel, marker); }