diff --git a/java/execution/impl/src/com/intellij/execution/applet/AppletConfigurable.java b/java/execution/impl/src/com/intellij/execution/applet/AppletConfigurable.java
index d0b27f065425..7e5fd2bc54ff 100644
--- a/java/execution/impl/src/com/intellij/execution/applet/AppletConfigurable.java
+++ b/java/execution/impl/src/com/intellij/execution/applet/AppletConfigurable.java
@@ -17,9 +17,9 @@ package com.intellij.execution.applet;
import com.intellij.execution.ExecutionBundle;
import com.intellij.execution.impl.CheckableRunConfigurationEditor;
-import com.intellij.execution.junit2.configuration.ClassBrowser;
-import com.intellij.execution.junit2.configuration.ConfigurationModuleSelector;
import com.intellij.execution.ui.AlternativeJREPanel;
+import com.intellij.execution.ui.ClassBrowser;
+import com.intellij.execution.ui.ConfigurationModuleSelector;
import com.intellij.openapi.fileChooser.FileChooserDescriptorFactory;
import com.intellij.openapi.options.SettingsEditor;
import com.intellij.openapi.project.Project;
diff --git a/java/execution/impl/src/com/intellij/execution/application/ApplicationConfigurable2.form b/java/execution/impl/src/com/intellij/execution/application/ApplicationConfigurable2.form
index 2a3bffa533bf..e5b071cd1d10 100644
--- a/java/execution/impl/src/com/intellij/execution/application/ApplicationConfigurable2.form
+++ b/java/execution/impl/src/com/intellij/execution/application/ApplicationConfigurable2.form
@@ -13,13 +13,11 @@
-
+
-
-
-
+
@@ -56,6 +54,7 @@
+
diff --git a/java/execution/impl/src/com/intellij/execution/application/ApplicationConfigurable2.java b/java/execution/impl/src/com/intellij/execution/application/ApplicationConfigurable2.java
index 1c638934a79f..b32098aa306d 100644
--- a/java/execution/impl/src/com/intellij/execution/application/ApplicationConfigurable2.java
+++ b/java/execution/impl/src/com/intellij/execution/application/ApplicationConfigurable2.java
@@ -17,10 +17,10 @@ package com.intellij.execution.application;
import com.intellij.execution.ExecutionBundle;
import com.intellij.execution.configuration.EnvironmentVariablesComponent;
-import com.intellij.execution.junit2.configuration.ClassBrowser;
-import com.intellij.execution.junit2.configuration.CommonJavaParameters;
-import com.intellij.execution.junit2.configuration.ConfigurationModuleSelector;
import com.intellij.execution.ui.AlternativeJREPanel;
+import com.intellij.execution.ui.ClassBrowser;
+import com.intellij.execution.ui.CommonJavaParameters;
+import com.intellij.execution.ui.ConfigurationModuleSelector;
import com.intellij.execution.util.JreVersionDetector;
import com.intellij.openapi.options.ConfigurationException;
import com.intellij.openapi.options.SettingsEditor;
@@ -34,7 +34,7 @@ import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
public class ApplicationConfigurable2 extends SettingsEditor {
- private CommonJavaParameters myCommonJavaParameters;
+ private CommonJavaParameters myCommonProgramParameters;
private LabeledComponent myMainClass;
private LabeledComponent myModule;
private JPanel myWholePanel;
@@ -49,14 +49,14 @@ public class ApplicationConfigurable2 extends SettingsEditor
-
diff --git a/java/execution/impl/src/com/intellij/execution/junit2/configuration/ClassBrowser.java b/java/execution/impl/src/com/intellij/execution/ui/ClassBrowser.java
similarity index 99%
rename from java/execution/impl/src/com/intellij/execution/junit2/configuration/ClassBrowser.java
rename to java/execution/impl/src/com/intellij/execution/ui/ClassBrowser.java
index 36eb1e37e3dd..ea65d0316b32 100644
--- a/java/execution/impl/src/com/intellij/execution/junit2/configuration/ClassBrowser.java
+++ b/java/execution/impl/src/com/intellij/execution/ui/ClassBrowser.java
@@ -13,7 +13,7 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-package com.intellij.execution.junit2.configuration;
+package com.intellij.execution.ui;
import com.intellij.execution.ExecutionBundle;
import com.intellij.execution.JavaExecutionUtil;
diff --git a/java/execution/impl/src/com/intellij/execution/ui/CommonJavaParameters.java b/java/execution/impl/src/com/intellij/execution/ui/CommonJavaParameters.java
new file mode 100644
index 000000000000..2364ccece6aa
--- /dev/null
+++ b/java/execution/impl/src/com/intellij/execution/ui/CommonJavaParameters.java
@@ -0,0 +1,64 @@
+/*
+ * Copyright 2000-2010 JetBrains s.r.o.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package com.intellij.execution.ui;
+
+import com.intellij.execution.ExecutionBundle;
+import com.intellij.execution.RunJavaConfiguration;
+import com.intellij.openapi.ui.LabeledComponent;
+import com.intellij.ui.RawCommandLineEditor;
+
+import java.awt.*;
+
+public class CommonJavaParameters extends CommonProgramParameters {
+ private LabeledComponent myVMParameters;
+
+ public CommonJavaParameters() {
+ super();
+ }
+
+ @Override
+ protected void addComponents(GridBagConstraints c) {
+ myVMParameters = LabeledComponent.create(new RawCommandLineEditor(),
+ ExecutionBundle.message("run.configuration.java.vm.parameters.label"));
+ copyDialogCaption(myVMParameters);
+
+
+ c.gridy++;
+ add(myVMParameters, c);
+
+ super.addComponents(c);
+ }
+
+ public void applyTo(RunJavaConfiguration configuration) {
+ configuration.setProperty(RunJavaConfiguration.VM_PARAMETERS_PROPERTY, getVMParameters());
+ configuration.setProperty(RunJavaConfiguration.PROGRAM_PARAMETERS_PROPERTY, getProgramParameters());
+ configuration.setProperty(RunJavaConfiguration.WORKING_DIRECTORY_PROPERTY, getWorkingDirectory());
+ }
+
+ public void setVMParameters(String text) {
+ myVMParameters.getComponent().setText(text);
+ }
+
+ public String getVMParameters() {
+ return myVMParameters.getComponent().getText();
+ }
+
+ public void reset(final RunJavaConfiguration configuration) {
+ setVMParameters(configuration.getProperty(RunJavaConfiguration.VM_PARAMETERS_PROPERTY));
+ setProgramParameters(configuration.getProperty(RunJavaConfiguration.PROGRAM_PARAMETERS_PROPERTY));
+ setWorkingDirectory(configuration.getProperty(RunJavaConfiguration.WORKING_DIRECTORY_PROPERTY));
+ }
+}
diff --git a/java/execution/impl/src/com/intellij/execution/junit2/configuration/CommonJavaParameters.java b/java/execution/impl/src/com/intellij/execution/ui/CommonProgramParameters.java
similarity index 51%
rename from java/execution/impl/src/com/intellij/execution/junit2/configuration/CommonJavaParameters.java
rename to java/execution/impl/src/com/intellij/execution/ui/CommonProgramParameters.java
index f32438d59ee4..367a085e7e08 100644
--- a/java/execution/impl/src/com/intellij/execution/junit2/configuration/CommonJavaParameters.java
+++ b/java/execution/impl/src/com/intellij/execution/ui/CommonProgramParameters.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2009 JetBrains s.r.o.
+ * Copyright 2000-2010 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -13,13 +13,11 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-package com.intellij.execution.junit2.configuration;
+package com.intellij.execution.ui;
import com.intellij.execution.ExecutionBundle;
-import com.intellij.execution.RunJavaConfiguration;
import com.intellij.openapi.actionSystem.LangDataKeys;
import com.intellij.openapi.application.PathMacros;
-import com.intellij.openapi.diagnostic.Logger;
import com.intellij.openapi.fileChooser.FileChooser;
import com.intellij.openapi.fileChooser.FileChooserDescriptor;
import com.intellij.openapi.fileChooser.FileChooserDescriptorFactory;
@@ -41,106 +39,34 @@ import java.awt.event.ActionListener;
import java.util.ArrayList;
import java.util.List;
-public class CommonJavaParameters extends JPanel {
- private static final Logger LOG = Logger.getInstance("#com.intellij.execution.junit2.configuration.CommonJavaParameters");
-
+public class CommonProgramParameters extends JPanel {
private static final Icon ICON = IconLoader.getIcon("/runConfigurations/variables.png");
- private static final int[] ourProperties = new int[]{
- RunJavaConfiguration.PROGRAM_PARAMETERS_PROPERTY,
- RunJavaConfiguration.VM_PARAMETERS_PROPERTY,
- RunJavaConfiguration.WORKING_DIRECTORY_PROPERTY
- };
-
- private JPanel myWholePanel;
- private LabeledComponent myProgramParameters;
- private LabeledComponent myVMParameters;
+ private LabeledComponent myProgramParametersComponent;
private LabeledComponent myWorkingDirectoryComponent;
-
- private final LabeledComponent[] myFields = new LabeledComponent[3];
- private Module myModule = null;
- private JButton myVariablesButton;
private TextFieldWithBrowseButton myWorkingDirectoryField;
- public CommonJavaParameters() {
- super(new BorderLayout());
- add(myWholePanel, BorderLayout.CENTER);
- copyDialogCaption(myProgramParameters);
- copyDialogCaption(myVMParameters);
+ private Module myModuleContext = null;
- myFields[RunJavaConfiguration.PROGRAM_PARAMETERS_PROPERTY] = myProgramParameters;
- myFields[RunJavaConfiguration.VM_PARAMETERS_PROPERTY] = myVMParameters;
- myFields[RunJavaConfiguration.WORKING_DIRECTORY_PROPERTY] = myWorkingDirectoryComponent;
+ public CommonProgramParameters() {
+ super(new GridBagLayout());
+ initComponents();
+ copyDialogCaption(myProgramParametersComponent);
}
- private static void copyDialogCaption(final LabeledComponent component) {
- final RawCommandLineEditor rawCommandLineEditor = component.getComponent();
- rawCommandLineEditor.setDialogCaption(component.getRawText());
- component.getLabel().setLabelFor(rawCommandLineEditor.getTextField());
- }
+ protected void initComponents() {
+ myProgramParametersComponent = LabeledComponent.create(new RawCommandLineEditor(),
+ ExecutionBundle.message("run.configuration.program.parameters"));
- public String getProgramParametersText() {
- return getLabeledComponent(RunJavaConfiguration.PROGRAM_PARAMETERS_PROPERTY).getText();
- }
-
- public void setProgramParametersText(String textWithMnemonic) {
- getLabeledComponent(RunJavaConfiguration.PROGRAM_PARAMETERS_PROPERTY).setText(textWithMnemonic);
- copyDialogCaption(myProgramParameters);
- }
-
- public void applyTo(final RunJavaConfiguration configuration) {
- for (final int property : ourProperties) {
- configuration.setProperty(property, getText(property));
- }
- }
-
- public void reset(final RunJavaConfiguration configuration) {
- for (final int property : ourProperties) {
- setText(property, configuration.getProperty(property));
- }
- }
-
- public void setText(final int property, final String value) {
- final JComponent component = getLabeledComponent(property).getComponent();
- if (component instanceof TextFieldWithBrowseButton)
- ((TextFieldWithBrowseButton)component).setText(value);
- else if (component instanceof RawCommandLineEditor)
- ((RawCommandLineEditor)component).setText(value);
- else if (component instanceof JPanel)
- myWorkingDirectoryField.setText(value);
- else LOG.error(component.getClass().getName());
- }
-
- public String getText(final int property) {
- final JComponent component = getLabeledComponent(property).getComponent();
- if (component instanceof TextFieldWithBrowseButton)
- return ((TextFieldWithBrowseButton)component).getText();
- else if (component instanceof RawCommandLineEditor)
- return ((RawCommandLineEditor)component).getText();
- else if (component instanceof JPanel)
- return myWorkingDirectoryField.getText();
- else LOG.error(component.getClass().getName());
- return "";
- }
-
- private LabeledComponent getLabeledComponent(final int index) {
- return myFields[index];
- }
-
- public void setModuleContext(final Module module) {
- myModule = module;
- }
-
- private void createUIComponents() {
final JPanel panel = new JPanel(new BorderLayout());
myWorkingDirectoryField = new TextFieldWithBrowseButton(new ActionListener() {
public void actionPerformed(ActionEvent e) {
FileChooserDescriptor fileChooserDescriptor = FileChooserDescriptorFactory.createSingleFolderDescriptor();
fileChooserDescriptor.setTitle(ExecutionBundle.message("select.working.directory.message"));
- fileChooserDescriptor.putUserData(LangDataKeys.MODULE_CONTEXT, myModule);
+ fileChooserDescriptor.putUserData(LangDataKeys.MODULE_CONTEXT, myModuleContext);
VirtualFile[] files = FileChooser.chooseFiles(myWorkingDirectoryComponent, fileChooserDescriptor);
if (files.length != 0) {
- setText(RunJavaConfiguration.WORKING_DIRECTORY_PROPERTY, files[0].getPresentableUrl());
+ setWorkingDirectory(files[0].getPresentableUrl());
}
}
});
@@ -158,7 +84,7 @@ public class CommonJavaParameters extends JPanel {
public void run() {
final Object value = list.getSelectedValue();
if (value instanceof String) {
- setText(RunJavaConfiguration.WORKING_DIRECTORY_PROPERTY, "$" + value + "$");
+ setWorkingDirectory("$" + value + "$");
}
}
}).setMovable(false).setResizable(false).createPopup();
@@ -167,6 +93,56 @@ public class CommonJavaParameters extends JPanel {
});
panel.add(button, BorderLayout.EAST);
- myWorkingDirectoryComponent = LabeledComponent.create(panel, "&Working directory");
+ myWorkingDirectoryComponent = LabeledComponent.create(panel, ExecutionBundle.message("run.configuration.working.directory.label"));
+
+ GridBagConstraints c = new GridBagConstraints();
+ c.weightx = 1;
+ c.fill = GridBagConstraints.HORIZONTAL;
+ c.anchor = GridBagConstraints.LINE_START;
+ c.gridx = 0;
+
+ addComponents(c);
+ }
+
+ protected void addComponents(GridBagConstraints c) {
+ c.gridy++;
+ add(myProgramParametersComponent, c);
+ c.gridy++;
+ add(myWorkingDirectoryComponent, c);
+ }
+
+ protected void copyDialogCaption(final LabeledComponent component) {
+ final RawCommandLineEditor rawCommandLineEditor = component.getComponent();
+ rawCommandLineEditor.setDialogCaption(component.getRawText());
+ component.getLabel().setLabelFor(rawCommandLineEditor.getTextField());
+ }
+
+ public String getProgramParametersLabel() {
+ return myProgramParametersComponent.getText();
+ }
+
+ public void setProgramParametersLabel(String textWithMnemonic) {
+ myProgramParametersComponent.setText(textWithMnemonic);
+ copyDialogCaption(myProgramParametersComponent);
+ }
+
+ public String getProgramParameters() {
+ return myProgramParametersComponent.getComponent().getText();
+ }
+
+ public void setProgramParameters(String text) {
+ myProgramParametersComponent.getComponent().setText(text);
+ }
+
+ public String getWorkingDirectory() {
+ return myWorkingDirectoryField.getText();
+ }
+
+ public void setWorkingDirectory(String text) {
+ myWorkingDirectoryField.setText(text);
+ }
+
+ public void setModuleContext(Module module) {
+ myModuleContext = module;
}
}
diff --git a/java/execution/impl/src/com/intellij/execution/junit2/configuration/ConfigurationModuleSelector.java b/java/execution/impl/src/com/intellij/execution/ui/ConfigurationModuleSelector.java
similarity index 98%
rename from java/execution/impl/src/com/intellij/execution/junit2/configuration/ConfigurationModuleSelector.java
rename to java/execution/impl/src/com/intellij/execution/ui/ConfigurationModuleSelector.java
index 06221a7054ca..3ebb7c2af88f 100644
--- a/java/execution/impl/src/com/intellij/execution/junit2/configuration/ConfigurationModuleSelector.java
+++ b/java/execution/impl/src/com/intellij/execution/ui/ConfigurationModuleSelector.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2009 JetBrains s.r.o.
+ * Copyright 2000-2010 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -13,7 +13,7 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-package com.intellij.execution.junit2.configuration;
+package com.intellij.execution.ui;
import com.intellij.execution.configurations.JavaRunConfigurationModule;
import com.intellij.execution.configurations.ModuleBasedConfiguration;
diff --git a/platform/platform-resources-en/src/messages/ExecutionBundle.properties b/platform/platform-resources-en/src/messages/ExecutionBundle.properties
index 7be7fe972198..be900117299b 100644
--- a/platform/platform-resources-en/src/messages/ExecutionBundle.properties
+++ b/platform/platform-resources-en/src/messages/ExecutionBundle.properties
@@ -141,6 +141,9 @@ junit.tests.in.progress.label=Tests in Progress
junit.auto.scroll.to.source.action.name=Auto Scroll to Source
junit.open.text.in.editor.action.name=Open selected test in editor
+run.configuration.java.vm.parameters.label=&VM parameters:
+run.configuration.program.parameters=Program pa&rameters:
+run.configuration.working.directory.label=&Working directory:
run.configuration.use.alternate.jre.checkbox=Use alternative &JRE:
run.configuration.select.alternate.jre.label=Select Alternative JRE
run.configuration.select.jre.dir.label=Select directory with JRE to run with
@@ -155,7 +158,6 @@ run.error.message.title=Run Error
default.runner.start.action.text=R&un
remote.debug.configuration.description=Remote debug configuration
remote.debug.configuration.display.name=Remote
-run.configuration.program.parameters=Program pa&rameters:
default.runner.start.action.label=Running {0}
applet.configuration.url.label=&URL
@@ -191,9 +193,7 @@ no.tests.found.in.package.error.message=No tests found in the package ''{0}''
package.does.not.exist.error.message=Package ''{0}'' does not exist
choose.main.class.dialog.title=Choose Main Class
choose.applet.class.dialog.title=Choose Applet Class
-junit.configuration.working.directory.label=&Working directory:
junit.configuration.test.runner.parameters.label=Test runner pa&rameters:
-junit.configuration.vm.parameters.label=&VM parameters:
junit.configuration.use.classpath.and.jdk.of.module.label=Use classpath and JDK of m&odule:
junit.configuration.test.border=Test
junit.configuration.across.module.dependencies.radio=Across modu&le dependencies
diff --git a/plugins/junit/src/com/intellij/execution/junit2/configuration/JUnitConfigurable.form b/plugins/junit/src/com/intellij/execution/junit2/configuration/JUnitConfigurable.form
index a6c4dc652285..e11706f8fa8b 100644
--- a/plugins/junit/src/com/intellij/execution/junit2/configuration/JUnitConfigurable.form
+++ b/plugins/junit/src/com/intellij/execution/junit2/configuration/JUnitConfigurable.form
@@ -3,7 +3,7 @@
-
+
@@ -179,11 +179,13 @@
-
+
-
+
+
+
diff --git a/plugins/junit/src/com/intellij/execution/junit2/configuration/JUnitConfigurable.java b/plugins/junit/src/com/intellij/execution/junit2/configuration/JUnitConfigurable.java
index 9ad7f4ce1f8b..1a0cd56b4ae4 100644
--- a/plugins/junit/src/com/intellij/execution/junit2/configuration/JUnitConfigurable.java
+++ b/plugins/junit/src/com/intellij/execution/junit2/configuration/JUnitConfigurable.java
@@ -25,6 +25,9 @@ import com.intellij.execution.junit.JUnitUtil;
import com.intellij.execution.junit.TestClassFilter;
import com.intellij.execution.testframework.TestSearchScope;
import com.intellij.execution.ui.AlternativeJREPanel;
+import com.intellij.execution.ui.ClassBrowser;
+import com.intellij.execution.ui.CommonJavaParameters;
+import com.intellij.execution.ui.ConfigurationModuleSelector;
import com.intellij.ide.util.PackageChooserDialog;
import com.intellij.ide.util.TreeClassChooser;
import com.intellij.openapi.module.Module;
@@ -98,6 +101,8 @@ public class JUnitConfigurable extends SettingsEditor {
configuration.getPersistentData().setEnvs(myEnvVariablesComponent.getEnvs());
configuration.getPersistentData().PASS_PARENT_ENVS = myEnvVariablesComponent.isPassParentEnvs();
+
+ myCommonJavaParameters.setProgramParametersLabel(ExecutionBundle.message("junit.configuration.test.runner.parameters.label"));
}
public void resetEditorFrom(final JUnitConfiguration configuration) {
diff --git a/plugins/testng/src/com/theoryinpractice/testng/configuration/TestNGConfigurationEditor.java b/plugins/testng/src/com/theoryinpractice/testng/configuration/TestNGConfigurationEditor.java
index f2fb3b7bfff4..7d7f0b56a4d9 100644
--- a/plugins/testng/src/com/theoryinpractice/testng/configuration/TestNGConfigurationEditor.java
+++ b/plugins/testng/src/com/theoryinpractice/testng/configuration/TestNGConfigurationEditor.java
@@ -22,13 +22,14 @@
*/
package com.theoryinpractice.testng.configuration;
+import com.intellij.execution.ExecutionBundle;
import com.intellij.execution.JavaExecutionUtil;
import com.intellij.execution.configuration.BrowseModuleValueActionListener;
import com.intellij.execution.configuration.EnvironmentVariablesComponent;
-import com.intellij.execution.junit2.configuration.CommonJavaParameters;
-import com.intellij.execution.junit2.configuration.ConfigurationModuleSelector;
import com.intellij.execution.testframework.TestSearchScope;
import com.intellij.execution.ui.AlternativeJREPanel;
+import com.intellij.execution.ui.CommonJavaParameters;
+import com.intellij.execution.ui.ConfigurationModuleSelector;
import com.intellij.ide.util.TreeClassChooser;
import com.intellij.ide.util.TreeClassChooserFactory;
import com.intellij.openapi.diagnostic.Logger;
@@ -160,6 +161,8 @@ public class TestNGConfigurationEditor extends SettingsEditor