public void setEventPhase(FacesEvent event) {
   if (event instanceof ItemChangeEvent) {
     AbstractPanelMenuItem actItm = (AbstractPanelMenuItem) ((ItemChangeEvent) event).getNewItem();
     if (isImmediate() || (actItm != null && actItm.isImmediate())) {
       event.setPhaseId(PhaseId.APPLY_REQUEST_VALUES);
     } else if (actItm != null && actItm.isBypassUpdates()) {
       event.setPhaseId(PhaseId.PROCESS_VALIDATIONS);
     } else {
       event.setPhaseId(PhaseId.UPDATE_MODEL_VALUES);
     }
   }
 }