creating module from template

This commit is contained in:
Dmitry Avdeev
2012-10-09 15:36:15 +04:00
parent 5a9bb9af18
commit f7fd29bb31
6 changed files with 25 additions and 9 deletions
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
<form xmlns="http://www.intellij.com/uidesigner/form/" version="1" bind-to-class="com.intellij.ide.util.newProjectWizard.ProjectNameWithTypeStep">
<form xmlns="http://www.intellij.com/uidesigner/form/" version="1" bind-to-class="com.intellij.ide.util.newProjectWizard.ProjectNameWithModuleStep">
<grid id="807b" binding="myModulePanel" layout-manager="GridBagLayout">
<constraints>
<xy x="20" y="20" width="707" height="453"/>
@@ -55,7 +55,7 @@ import java.awt.event.MouseEvent;
import java.io.File;
import java.util.List;
public class ProjectNameWithTypeStep extends ProjectNameStep {
public class ProjectNameWithModuleStep extends ProjectNameStep {
private JEditorPane myModuleDescriptionPane;
private JList myTypesList;
protected JCheckBox myCreateModuleCb;
@@ -82,7 +82,7 @@ public class ProjectNameWithTypeStep extends ProjectNameStep {
private final StepSequence mySequence;
public ProjectNameWithTypeStep(final WizardContext wizardContext, StepSequence sequence, final WizardMode mode) {
public ProjectNameWithModuleStep(final WizardContext wizardContext, StepSequence sequence, final WizardMode mode) {
super(wizardContext, mode);
mySequence = sequence;
myAdditionalContentPanel.add(myModulePanel,
@@ -94,7 +94,7 @@ public class StepSequence {
mySelectedSteps = null;
}
public void setType(@NonNls final String type) {
public void setType(@Nullable @NonNls final String type) {
setTypes(Collections.singletonList(type == null ? ModuleType.EMPTY.getId() : type));
}
@@ -20,7 +20,7 @@
*/
package com.intellij.ide.util.newProjectWizard.modes;
import com.intellij.ide.util.newProjectWizard.ProjectNameWithTypeStep;
import com.intellij.ide.util.newProjectWizard.ProjectNameWithModuleStep;
import com.intellij.ide.util.newProjectWizard.StepSequence;
import com.intellij.ide.util.projectWizard.EmptyModuleBuilder;
import com.intellij.ide.util.projectWizard.ModuleBuilder;
@@ -54,7 +54,7 @@ public class CreateFromScratchMode extends WizardMode {
@Nullable
protected StepSequence createSteps(final WizardContext context, @NotNull final ModulesProvider modulesProvider) {
final StepSequence sequence = new StepSequence();
sequence.addCommonStep(new ProjectNameWithTypeStep(context, sequence, this));
sequence.addCommonStep(new ProjectNameWithModuleStep(context, sequence, this));
for (ModuleBuilder builder : ModuleBuilder.getAllBuilders()) {
addModuleBuilder(builder, context, modulesProvider, sequence);
}
@@ -15,7 +15,7 @@
*/
package com.intellij.ide.util.newProjectWizard.modes;
import com.intellij.ide.util.newProjectWizard.ProjectNameStep;
import com.intellij.ide.util.newProjectWizard.ProjectNameWithModuleStep;
import com.intellij.ide.util.newProjectWizard.SelectTemplateStep;
import com.intellij.ide.util.newProjectWizard.StepSequence;
import com.intellij.ide.util.projectWizard.ProjectBuilder;
@@ -56,7 +56,9 @@ public class CreateFromTemplateMode extends WizardMode {
@Override
protected StepSequence createSteps(WizardContext context, @NotNull ModulesProvider modulesProvider) {
mySelectTemplateStep = new SelectTemplateStep(context);
return new StepSequence(mySelectTemplateStep, new ProjectNameStep(context, this));
StepSequence sequence = new StepSequence(mySelectTemplateStep);
sequence.addCommonStep(new ProjectNameWithModuleStep(context, sequence, this));
return sequence;
}
@Nullable
@@ -16,12 +16,16 @@
package com.intellij.platform.templates;
import com.intellij.ide.util.newProjectWizard.modes.ImportImlMode;
import com.intellij.ide.util.projectWizard.ModuleBuilder;
import com.intellij.ide.util.projectWizard.ProjectBuilder;
import com.intellij.ide.util.projectWizard.WizardContext;
import com.intellij.openapi.module.ModifiableModuleModel;
import com.intellij.openapi.module.Module;
import com.intellij.openapi.module.ModuleType;
import com.intellij.openapi.options.ConfigurationException;
import com.intellij.openapi.progress.ProgressManager;
import com.intellij.openapi.project.Project;
import com.intellij.openapi.roots.ModifiableRootModel;
import com.intellij.openapi.roots.ui.configuration.ModulesProvider;
import com.intellij.openapi.util.Condition;
import com.intellij.openapi.util.io.StreamUtil;
@@ -87,7 +91,17 @@ public class ArchivedProjectTemplate implements ProjectTemplate {
@NotNull
@Override
public ProjectBuilder createModuleBuilder() {
return new ProjectBuilder() {
return new ModuleBuilder() {
@Override
public void setupRootModel(ModifiableRootModel modifiableRootModel) throws ConfigurationException {
}
@Override
public ModuleType getModuleType() {
return null;
}
@Nullable
@Override
public List<Module> commit(Project project, ModifiableModuleModel model, ModulesProvider modulesProvider) {