IDEA-115074 New Project Wizard: Grails: grails-specific settings are missing

This commit is contained in:
Dmitry Avdeev
2013-11-05 12:04:48 +04:00
parent 53ef1cf64d
commit 72ce296e54
13 changed files with 26 additions and 36 deletions
@@ -35,6 +35,7 @@ public class NewProjectWizard extends AbstractProjectWizard {
super("New Project", project, defaultPath);
// addStep();
// addStep(new ProjectSummaryStep(myWizardContext));
myWizardContext.setNewWizard(true);
mySequence = new StepSequence();
mySequence.addCommonStep(new ProjectTypeStep(myWizardContext, this, modulesProvider));
mySequence.addCommonFinishingStep(new ProjectSettingsStep(myWizardContext), null);
@@ -141,7 +141,7 @@ public class ProjectTypeStep extends ModuleWizardStep {
});
for (ProjectCategory category : map.values()) {
myWizard.getSequence().addStepsForBuilder(myBuilders.get(category), context, modulesProvider, true);
myWizard.getSequence().addStepsForBuilder(myBuilders.get(category), context, modulesProvider);
}
myFrameworksPanel = new AddSupportForFrameworksPanel(Collections.<FrameworkSupportInModuleProvider>emptyList(), model, true);
@@ -218,7 +218,7 @@ public class ProjectTypeStep extends ModuleWizardStep {
public void updateDataModel() {
ModuleBuilder builder = getSelectedBuilder();
assert builder != null;
myWizard.getSequence().addStepsForBuilder(builder, myContext, myModulesProvider, true);
myWizard.getSequence().addStepsForBuilder(builder, myContext, myModulesProvider);
}
@Override
@@ -55,11 +55,10 @@ public class StepSequence {
public void addStepsForBuilder(@NotNull AbstractModuleBuilder builder,
@NotNull WizardContext wizardContext,
@NotNull ModulesProvider modulesProvider,
boolean forNewWizard) {
@NotNull ModulesProvider modulesProvider) {
String id = builder.getBuilderId();
if (!mySpecificSteps.containsKey(id)) {
mySpecificSteps.put(id, Arrays.asList(builder.createWizardSteps(wizardContext, modulesProvider, forNewWizard)));
mySpecificSteps.put(id, Arrays.asList(builder.createWizardSteps(wizardContext, modulesProvider)));
}
}
@@ -63,7 +63,7 @@ public class CreateFromScratchMode extends WizardMode {
StepSequence sequence = new StepSequence();
for (ModuleBuilder builder : builders) {
sequence.addStepsForBuilder(builder, context, modulesProvider, false);
sequence.addStepsForBuilder(builder, context, modulesProvider);
}
return sequence;
}
@@ -108,7 +108,7 @@ public class CreateFromTemplateMode extends WizardMode {
MultiMap<TemplatesGroup, ProjectTemplate> map = getTemplatesMap(context, true);
StepSequence sequence = new StepSequence();
for (ProjectTemplate template : map.values()) {
sequence.addStepsForBuilder(template.createModuleBuilder(), context, modulesProvider, false);
sequence.addStepsForBuilder(template.createModuleBuilder(), context, modulesProvider);
}
mySelectTemplateStep = new SelectTemplateStep(context, sequence, map);
sequence.addCommonStep(mySelectTemplateStep);
@@ -84,17 +84,17 @@ public class JavaModuleType extends ModuleType<JavaModuleBuilder> {
@NotNull
@Override
public ModuleWizardStep[] createWizardSteps(@NotNull final WizardContext wizardContext, @NotNull final JavaModuleBuilder moduleBuilder,
@NotNull final ModulesProvider modulesProvider, boolean forNewWizard) {
@NotNull final ModulesProvider modulesProvider) {
final ProjectWizardStepFactory wizardFactory = ProjectWizardStepFactory.getInstance();
ArrayList<ModuleWizardStep> steps = new ArrayList<ModuleWizardStep>();
if (!forNewWizard) {
if (!wizardContext.isNewWizard()) {
final ModuleWizardStep supportForFrameworksStep = wizardFactory.createSupportForFrameworksStep(wizardContext, moduleBuilder, modulesProvider);
if (supportForFrameworksStep != null) {
steps.add(supportForFrameworksStep);
}
}
final ModuleWizardStep[] wizardSteps = steps.toArray(new ModuleWizardStep[steps.size()]);
return ArrayUtil.mergeArrays(wizardSteps, super.createWizardSteps(wizardContext, moduleBuilder, modulesProvider, forNewWizard));
return ArrayUtil.mergeArrays(wizardSteps, super.createWizardSteps(wizardContext, moduleBuilder, modulesProvider));
}
@Nullable
@@ -91,8 +91,8 @@ public class JavaModuleBuilder extends ModuleBuilder implements SourcePathsBuild
}
@Override
public ModuleWizardStep[] createWizardSteps(@NotNull WizardContext wizardContext, @NotNull ModulesProvider modulesProvider, boolean forNewWizard) {
return getModuleType().createWizardSteps(wizardContext, this, modulesProvider, forNewWizard);
public ModuleWizardStep[] createWizardSteps(@NotNull WizardContext wizardContext, @NotNull ModulesProvider modulesProvider) {
return getModuleType().createWizardSteps(wizardContext, this, modulesProvider);
}
public void setupRootModel(ModifiableRootModel rootModel) throws ConfigurationException {
@@ -33,11 +33,6 @@ public abstract class AbstractModuleBuilder extends ProjectBuilder {
public abstract ModuleWizardStep[] createWizardSteps(@NotNull WizardContext wizardContext, @NotNull ModulesProvider modulesProvider);
/** @deprecated Will be removed soon */
public ModuleWizardStep[] createWizardSteps(@NotNull WizardContext wizardContext, @NotNull ModulesProvider modulesProvider, boolean forNewWizard) {
return createWizardSteps(wizardContext, modulesProvider);
}
@Nullable
public ModuleWizardStep modifySettingsStep(@NotNull SettingsStep settingsStep) {
return null;
@@ -48,11 +48,20 @@ public class WizardContext extends UserDataHolderBase {
private ProjectBuilder myProjectBuilder;
private final List<Listener> myListeners = ContainerUtil.createLockFreeCopyOnWriteList();
private StorageScheme myProjectStorageFormat = StorageScheme.DIRECTORY_BASED;
private boolean myNewWizard;
public void setProjectStorageFormat(StorageScheme format) {
myProjectStorageFormat = format;
}
public boolean isNewWizard() {
return myNewWizard;
}
public void setNewWizard(boolean newWizard) {
myNewWizard = newWizard;
}
public interface Listener {
void buttonsUpdateRequested();
void nextStepRequested();
@@ -58,10 +58,6 @@ public abstract class ModuleType<T extends ModuleBuilder> {
@NotNull
public ModuleWizardStep[] createWizardSteps(@NotNull WizardContext wizardContext, @NotNull T moduleBuilder, @NotNull ModulesProvider modulesProvider) {
return createWizardSteps(wizardContext, moduleBuilder, modulesProvider, false);
}
public ModuleWizardStep[] createWizardSteps(@NotNull WizardContext wizardContext, @NotNull T moduleBuilder, @NotNull ModulesProvider modulesProvider, boolean forNewWizard) {
return ModuleWizardStep.EMPTY_ARRAY;
}
@@ -125,15 +125,7 @@ public class MavenModuleBuilder extends ModuleBuilder implements SourcePathsBuil
@Override
public ModuleWizardStep[] createWizardSteps(@NotNull WizardContext wizardContext, @NotNull ModulesProvider modulesProvider) {
return new ModuleWizardStep[]{
new MavenModuleWizardStep(this, wizardContext, true),
new SelectPropertiesStep(wizardContext.getProject(), this)
};
}
@Override
public ModuleWizardStep[] createWizardSteps(@NotNull WizardContext wizardContext, @NotNull ModulesProvider modulesProvider, boolean forNewWizard) {
return new ModuleWizardStep[]{
new MavenModuleWizardStep(this, wizardContext, !forNewWizard),
new MavenModuleWizardStep(this, wizardContext, !wizardContext.isNewWizard()),
new SelectPropertiesStep(wizardContext.getProject(), this)
};
}
@@ -48,8 +48,7 @@ public class PythonModuleBuilder extends PythonModuleBuilderBase implements Sour
@Override
public ModuleWizardStep[] createWizardSteps(@NotNull WizardContext wizardContext,
@NotNull ModulesProvider modulesProvider,
boolean forNewWizard) {
return getModuleType().createWizardSteps(wizardContext, this, modulesProvider, forNewWizard);
@NotNull ModulesProvider modulesProvider) {
return getModuleType().createWizardSteps(wizardContext, this, modulesProvider);
}
}
@@ -39,12 +39,11 @@ public class PythonModuleType extends PythonModuleTypeBase<PythonModuleBuilderBa
@Override
public ModuleWizardStep[] createWizardSteps(@NotNull final WizardContext wizardContext,
@NotNull final PythonModuleBuilderBase moduleBuilder,
@NotNull final ModulesProvider modulesProvider,
boolean forNewWizard) {
@NotNull final ModulesProvider modulesProvider) {
ArrayList<ModuleWizardStep> steps = new ArrayList<ModuleWizardStep>();
final Project project = getProject(wizardContext);
steps.add(new PythonSdkSelectStep(moduleBuilder, "reference.project.structure.sdk.python", project));
if (!forNewWizard) {
if (!wizardContext.isNewWizard()) {
final List<FrameworkSupportInModuleProvider> providers = FrameworkSupportUtil.getProviders(getInstance(), DefaultFacetsProvider.INSTANCE);
if (!providers.isEmpty()) {
steps.add(new SupportForFrameworksStep(wizardContext, moduleBuilder, LibrariesContainerFactory.createContainer(project)));