/* (non-Javadoc)
   * @see org.eclipse.jface.wizard.IWizard#performFinish()
   */
  public boolean performFinish() {
    boolean res = super.performFinish();
    if (res) {
      final IJavaScriptElement newElement = getCreatedElement();

      IWorkingSet[] workingSets = fFirstPage.getWorkingSets();
      WorkingSetConfigurationBlock.addToWorkingSets(newElement, workingSets);

      BasicNewProjectResourceWizard.updatePerspective(fConfigElement);
      selectAndReveal(fSecondPage.getJavaProject().getProject());

      Display.getDefault()
          .asyncExec(
              new Runnable() {
                public void run() {
                  PackageExplorerPart activePackageExplorer = getActivePackageExplorer();
                  if (activePackageExplorer != null) {
                    activePackageExplorer.tryToReveal(newElement);
                  }
                }
              });
    }
    return res;
  }
 /* (non-Javadoc)
  * @see org.eclipse.wst.jsdt.internal.ui.wizards.NewElementWizard#finishPage(org.eclipse.core.runtime.IProgressMonitor)
  */
 protected void finishPage(IProgressMonitor monitor) throws InterruptedException, CoreException {
   fSecondPage.performFinish(monitor); // use the full progress monitor
 }
 /* (non-Javadoc)
  * @see IWizard#performCancel()
  */
 public boolean performCancel() {
   fSecondPage.performCancel();
   return super.performCancel();
 }