/** {@inheritDoc} */
 public void dispose() {
   if (fActions != null) {
     final ISelectionProvider provider = fSite.getSelectionProvider();
     for (Iterator iter = fActions.iterator(); iter.hasNext(); ) {
       Action action = (Action) iter.next();
       if (action instanceof ISelectionChangedListener)
         provider.removeSelectionChangedListener((ISelectionChangedListener) action);
     }
   }
   fActions = null;
   super.dispose();
 }
  private GenerateIncludePathActionGroup(IWorkbenchSite site) {
    fSite = site;
    fActions = new ArrayList();

    final RemoveFromIncludepathAction remove = new RemoveFromIncludepathAction(site);
    fActions.add(remove);

    final ConfigurePHPIncludePathAction configure = new ConfigurePHPIncludePathAction(site);
    fActions.add(configure);

    final ISelectionProvider provider = fSite.getSelectionProvider();
    for (Iterator iter = fActions.iterator(); iter.hasNext(); ) {
      Action action = (Action) iter.next();
      if (action instanceof ISelectionChangedListener) {
        provider.addSelectionChangedListener((ISelectionChangedListener) action);
      }
    }
  }