1 /*******************************************************************************
2 * Copyright (c) 2000, 2011 IBM Corporation and others.
3 * All rights reserved. This program and the accompanying materials
4 * are made available under the terms of the Eclipse Public License v1.0
5 * which accompanies this distribution, and is available at
6 * http://www.eclipse.org/legal/epl-v10.html
9 * IBM Corporation - initial API and implementation
10 *******************************************************************************/
11 package org.eclipse.jdt.internal.ui.wizards;
13 import org.eclipse.core.runtime.CoreException;
14 import org.eclipse.core.runtime.IProgressMonitor;
16 import org.eclipse.core.resources.IFile;
17 import org.eclipse.core.resources.IResource;
19 import org.eclipse.jdt.core.IJavaElement;
21 import org.eclipse.jdt.ui.wizards.NewEnumWizardPage;
23 import org.eclipse.jdt.internal.ui.JavaPlugin;
24 import org.eclipse.jdt.internal.ui.JavaPluginImages;
26 public class NewEnumCreationWizard extends NewElementWizard {
28 private NewEnumWizardPage fPage;
29 private boolean fOpenEditorOnFinish;
31 public NewEnumCreationWizard() {
35 public NewEnumCreationWizard(NewEnumWizardPage page, boolean openEditorOnFinish) {
36 setDefaultPageImageDescriptor(JavaPluginImages.DESC_WIZBAN_NEWENUM);
37 setDialogSettings(JavaPlugin.getDefault().getDialogSettings());
38 setWindowTitle(NewWizardMessages.NewEnumCreationWizard_title);
41 fOpenEditorOnFinish= openEditorOnFinish;
45 * @see Wizard#addPages
48 public void addPages() {
51 fPage= new NewEnumWizardPage();
52 fPage.init(getSelection());
58 * @see org.eclipse.jdt.internal.ui.wizards.NewElementWizard#canRunForked()
61 protected boolean canRunForked() {
62 return !fPage.isEnclosingTypeSelected();
66 * @see org.eclipse.jdt.internal.ui.wizards.NewElementWizard#finishPage(org.eclipse.core.runtime.IProgressMonitor)
69 protected void finishPage(IProgressMonitor monitor) throws InterruptedException, CoreException {
70 fPage.createType(monitor); // use the full progress monitor
74 * @see org.eclipse.jface.wizard.IWizard#performFinish()
77 public boolean performFinish() {
78 warnAboutTypeCommentDeprecation();
79 boolean res= super.performFinish();
81 IResource resource= fPage.getModifiedResource();
82 if (resource != null) {
83 selectAndReveal(resource);
84 if (fOpenEditorOnFinish) {
85 openResource((IFile) resource);
93 * @see org.eclipse.jdt.internal.ui.wizards.NewElementWizard#getCreatedElement()
96 public IJavaElement getCreatedElement() {
97 return fPage.getCreatedType();