diff --git a/idea/src/org/jetbrains/jet/plugin/k2jsrun/K2JSConfigurationSettings.java b/idea/src/org/jetbrains/jet/plugin/k2jsrun/K2JSConfigurationSettings.java index 397a35e3a1e..a9a3802fe3c 100644 --- a/idea/src/org/jetbrains/jet/plugin/k2jsrun/K2JSConfigurationSettings.java +++ b/idea/src/org/jetbrains/jet/plugin/k2jsrun/K2JSConfigurationSettings.java @@ -37,7 +37,8 @@ public final class K2JSConfigurationSettings { private BrowsersConfiguration.BrowserFamily browserFamily = BrowsersConfiguration.getInstance().getActiveBrowsers().get(0); public K2JSConfigurationSettings(@NotNull Project project) { - generatedFilePath = project.getBasePath() + "/generated.js"; + String basePath = project.getBasePath(); + generatedFilePath = basePath != null ? basePath : ""; } public K2JSConfigurationSettings() { diff --git a/idea/src/org/jetbrains/jet/plugin/k2jsrun/K2JSRunConfiguration.java b/idea/src/org/jetbrains/jet/plugin/k2jsrun/K2JSRunConfiguration.java index 9ad75630352..88e0730ee9a 100644 --- a/idea/src/org/jetbrains/jet/plugin/k2jsrun/K2JSRunConfiguration.java +++ b/idea/src/org/jetbrains/jet/plugin/k2jsrun/K2JSRunConfiguration.java @@ -26,9 +26,8 @@ import com.intellij.execution.runners.ProgramRunner; import com.intellij.execution.runners.RunConfigurationWithSuppressedDefaultRunAction; import com.intellij.execution.ui.ExecutionConsole; import com.intellij.openapi.actionSystem.AnAction; -import com.intellij.openapi.module.Module; -import com.intellij.openapi.module.ModuleManager; import com.intellij.openapi.options.SettingsEditor; +import com.intellij.openapi.project.Project; import com.intellij.openapi.util.InvalidDataException; import com.intellij.openapi.util.JDOMExternalizable; import com.intellij.openapi.util.WriteExternalException; @@ -36,31 +35,17 @@ import com.intellij.util.xmlb.XmlSerializer; import org.jdom.Element; import org.jetbrains.annotations.NotNull; -import java.util.Arrays; -import java.util.Collection; - /** * @author Pavel Talanov */ -public final class K2JSRunConfiguration extends ModuleBasedConfiguration +public final class K2JSRunConfiguration extends RunConfigurationBase implements RunConfigurationWithSuppressedDefaultRunAction { @NotNull private K2JSConfigurationSettings settings = new K2JSConfigurationSettings(getProject()); - public K2JSRunConfiguration(String name, RunConfigurationModule runConfigurationModule, ConfigurationFactory factory) { - super(name, runConfigurationModule, factory); - runConfigurationModule.init(); - } - - @Override - public Collection getValidModules() { - return Arrays.asList(ModuleManager.getInstance(getProject()).getModules()); - } - - @Override - protected ModuleBasedConfiguration createInstance() { - return new K2JSRunConfiguration(getName(), getConfigurationModule(), getFactory()); + public K2JSRunConfiguration(String name, Project project, ConfigurationFactory factory) { + super(project, factory, name); } @Override @@ -68,13 +53,28 @@ public final class K2JSRunConfiguration extends ModuleBasedConfiguration getRunnerSettingsEditor(ProgramRunner runner) { + return null; + } + @Override public RunProfileState getState(@NotNull Executor executor, @NotNull ExecutionEnvironment executionEnvironment) throws ExecutionException { return new MyProfileState(); } - private class MyProfileState implements RunProfileState { + @Override + public void checkConfiguration() throws RuntimeConfigurationException { + //do nothing + } + + private final class MyProfileState implements RunProfileState { @Override public ExecutionResult execute(Executor executor, @NotNull ProgramRunner runner) throws ExecutionException { return new ExecutionResult() { diff --git a/idea/src/org/jetbrains/jet/plugin/k2jsrun/K2JSRunConfigurationEditor.form b/idea/src/org/jetbrains/jet/plugin/k2jsrun/K2JSRunConfigurationEditor.form index 574d1f33f9c..b95bc4af039 100644 --- a/idea/src/org/jetbrains/jet/plugin/k2jsrun/K2JSRunConfigurationEditor.form +++ b/idea/src/org/jetbrains/jet/plugin/k2jsrun/K2JSRunConfigurationEditor.form @@ -16,38 +16,42 @@ - + - - - - - - - + + + + - + - + + + + - + - + + + - + + + @@ -55,18 +59,28 @@ - + + + - + - + + + + + + + + + diff --git a/idea/src/org/jetbrains/jet/plugin/k2jsrun/K2JSRunConfigurationEditor.java b/idea/src/org/jetbrains/jet/plugin/k2jsrun/K2JSRunConfigurationEditor.java index f3988e1486e..ebe4e3f1bbf 100644 --- a/idea/src/org/jetbrains/jet/plugin/k2jsrun/K2JSRunConfigurationEditor.java +++ b/idea/src/org/jetbrains/jet/plugin/k2jsrun/K2JSRunConfigurationEditor.java @@ -44,6 +44,8 @@ public final class K2JSRunConfigurationEditor extends SettingsEditor