|
What this is
Other links
The source code/* * Sun Public License Notice * * The contents of this file are subject to the Sun Public License * Version 1.0 (the "License"). You may not use this file except in * compliance with the License. A copy of the License is available at * http://www.sun.com/ * * The Original Code is NetBeans. The Initial Developer of the Original * Code is Sun Microsystems, Inc. Portions Copyright 1997-2004 Sun * Microsystems, Inc. All Rights Reserved. */ package org.netbeans.modules.java.project; import java.awt.Component; import java.io.IOException; import java.util.Collections; import java.util.HashSet; import java.util.Iterator; import java.util.NoSuchElementException; import java.util.Set; import javax.swing.JComponent; import javax.swing.event.ChangeEvent; import javax.swing.event.ChangeListener; import org.netbeans.api.java.project.JavaProjectConstants; import org.netbeans.api.project.Project; import org.netbeans.api.project.ProjectUtils; import org.netbeans.api.project.SourceGroup; import org.netbeans.api.project.Sources; import org.netbeans.spi.java.project.support.ui.templates.JavaTemplates; import org.netbeans.spi.project.ui.templates.support.Templates; import org.openide.WizardDescriptor; import org.openide.ErrorManager; import org.openide.filesystems.FileObject; import org.openide.filesystems.FileUtil; import org.openide.loaders.DataFolder; import org.openide.loaders.DataObject; /** * Wizard to create a new Java file. */ public class NewJavaFileWizardIterator implements WizardDescriptor.InstantiatingIterator { private static final long serialVersionUID = 1L; private boolean isPackage = false; /** Create a new wizard iterator. */ public NewJavaFileWizardIterator() {} private NewJavaFileWizardIterator( boolean isPackage ) { this.isPackage = isPackage; } public static NewJavaFileWizardIterator packageWizard() { return new NewJavaFileWizardIterator( true ); } private WizardDescriptor.Panel[] createPanels (WizardDescriptor wizardDescriptor) { // Ask for Java folders Project project = Templates.getProject( wizardDescriptor ); Sources sources = ProjectUtils.getSources(project); SourceGroup[] groups = sources.getSourceGroups(JavaProjectConstants.SOURCES_TYPE_JAVA); assert groups != null : "Cannot return null from Sources.getSourceGroups: " + sources; if (groups.length == 0) { groups = sources.getSourceGroups( Sources.TYPE_GENERIC ); return new WizardDescriptor.Panel[] { Templates.createSimpleTargetChooser( project, groups ), }; } else { if ( isPackage ) { return new WizardDescriptor.Panel[] { new JavaTargetChooserPanel( project, groups, null, true ), }; } else { return new WizardDescriptor.Panel[] { JavaTemplates.createPackageChooser( project, groups ), }; } } } private String[] createSteps(String[] before, WizardDescriptor.Panel[] panels) { assert panels != null; // hack to use the steps set before this panel processed int diff = 0; if (before == null) { before = new String[0]; } else if (before.length > 0) { diff = ("...".equals (before[before.length - 1])) ? 1 : 0; // NOI18N } String[] res = new String[ (before.length - diff) + panels.length]; for (int i = 0; i < res.length; i++) { if (i < (before.length - diff)) { res[i] = before[i]; } else { res[i] = panels[i - before.length + diff].getComponent ().getName (); } } return res; } public Set/* |
... this post is sponsored by my books ... | |
#1 New Release! |
FP Best Seller |
Copyright 1998-2021 Alvin Alexander, alvinalexander.com
All Rights Reserved.
A percentage of advertising revenue from
pages under the /java/jwarehouse
URI on this website is
paid back to open source projects.