/**
  * @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);
 }
 public void updateContributionItems(Selector selector) {
   for (final HandledContributionItem hci : itemsToCheck) {
     if (hci.model != null && hci.model.getParent() != null && selector.select(hci.model)) {
       hci.updateItemEnablement();
     } else {
       orphanedToolItems.add(hci);
     }
   }
   if (!orphanedToolItems.isEmpty()) {
     itemsToCheck.removeAll(orphanedToolItems);
     orphanedToolItems.clear();
   }
 }