diff --git a/plugins/xpath/xpath-lang/src/org/intellij/lang/xpath/xslt/run/RunSettingsEditor.form b/plugins/xpath/xpath-lang/src/org/intellij/lang/xpath/xslt/run/RunSettingsEditor.form
index a2b9afbfe133..d18c6be99153 100644
--- a/plugins/xpath/xpath-lang/src/org/intellij/lang/xpath/xslt/run/RunSettingsEditor.form
+++ b/plugins/xpath/xpath-lang/src/org/intellij/lang/xpath/xslt/run/RunSettingsEditor.form
@@ -148,41 +148,18 @@
-
-
+
-
+
+
+
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
diff --git a/plugins/xpath/xpath-lang/src/org/intellij/lang/xpath/xslt/run/XsltRunSettingsEditor.java b/plugins/xpath/xpath-lang/src/org/intellij/lang/xpath/xslt/run/XsltRunSettingsEditor.java
index ed0116fd38fb..5a863bb91185 100644
--- a/plugins/xpath/xpath-lang/src/org/intellij/lang/xpath/xslt/run/XsltRunSettingsEditor.java
+++ b/plugins/xpath/xpath-lang/src/org/intellij/lang/xpath/xslt/run/XsltRunSettingsEditor.java
@@ -45,10 +45,7 @@ import com.intellij.openapi.vfs.VirtualFile;
import com.intellij.openapi.vfs.VirtualFileManager;
import com.intellij.psi.PsiFile;
import com.intellij.psi.PsiManager;
-import com.intellij.ui.ComboboxWithBrowseButton;
-import com.intellij.ui.DocumentAdapter;
-import com.intellij.ui.PanelWithAnchor;
-import com.intellij.ui.RawCommandLineEditor;
+import com.intellij.ui.*;
import com.intellij.ui.components.JBLabel;
import com.intellij.ui.components.JBRadioButton;
import com.intellij.ui.table.JBTable;
@@ -79,36 +76,6 @@ class XsltRunSettingsEditor extends SettingsEditor {
private Editor myEditor;
- static class AddParameterAction extends AnAction {
- private final JTable myParams;
-
- public AddParameterAction(JTable params) {
- super("Add", "Add Parameter", IconLoader.getIcon("/general/add.png"));
- myParams = params;
- }
-
- public void actionPerformed(AnActionEvent e) {
- ((Editor.ParamTableModel)myParams.getModel()).addParam();
- }
- }
-
- static class RemoveParameterAction extends AnAction {
- private final JTable myParams;
-
- public RemoveParameterAction(JBTable paramModel) {
- super("Remove", "Remove Parameter", IconLoader.getIcon("/general/remove.png"));
- myParams = paramModel;
- }
-
- public void update(AnActionEvent e) {
- e.getPresentation().setEnabled(myParams.getRowCount() > 0 && myParams.getSelectedRow() != -1);
- }
-
- public void actionPerformed(AnActionEvent e) {
- ((Editor.ParamTableModel)myParams.getModel()).removeParam(myParams.getSelectedRow());
- }
- }
-
static class Editor implements PanelWithAnchor {
private JTabbedPane myComponent;
@@ -117,7 +84,6 @@ class XsltRunSettingsEditor extends SettingsEditor {
private TextFieldWithBrowseButton myOutputFile;
private JCheckBox myOpenOutputFile;
private JCheckBox myOpenInBrowser;
- private JPanel myParamsToolbar;
private JBTable myParameters;
private ButtonGroup myOutputOptions;
@@ -139,6 +105,7 @@ class XsltRunSettingsEditor extends SettingsEditor {
private JPanel myPanelSettings;
private JPanel myPanelAdvanced;
private JBLabel myXSLTScriptFileLabel;
+ private JPanel myParametersPanel;
private JComponent anchor;
private final AnyXMLDescriptor myXmlDescriptor;
@@ -264,7 +231,7 @@ class XsltRunSettingsEditor extends SettingsEditor {
});
myFileType.setModel(new DefaultComboBoxModel(getFileTypes(project)));
- myParameters.setModel(new ParamTableModel());
+ myParameters = new JBTable(new ParamTableModel());
myParameters.setDefaultRenderer(String.class, new DefaultTableCellRenderer() {
public Component getTableCellRendererComponent(JTable table,
Object value,
@@ -287,6 +254,20 @@ class XsltRunSettingsEditor extends SettingsEditor {
}
});
+ myParametersPanel.add(
+ ToolbarDecorator.createDecorator(myParameters)
+ .setAddAction(new AnActionButtonRunnable() {
+ @Override
+ public void run(AnActionButton button) {
+ ((Editor.ParamTableModel)myParameters.getModel()).addParam();
+ }
+ }).setRemoveAction(new AnActionButtonRunnable() {
+ @Override
+ public void run(AnActionButton button) {
+ ((Editor.ParamTableModel)myParameters.getModel()).removeParam(myParameters.getSelectedRow());
+ }
+ }).createPanel(), BorderLayout.CENTER);
+
final Module[] modules = ModuleManager.getInstance(project).getModules();
myModule.setModel(new DefaultComboBoxModel(ArrayUtil.mergeArrays(new Object[]{""}, modules)));
myModule.setRenderer(new ListCellRendererWrapper(myModule) {
@@ -347,13 +328,6 @@ class XsltRunSettingsEditor extends SettingsEditor {
myWorkingDirectory
.addBrowseFolderListener("Working Directory", null, project, FileChooserDescriptorFactory.createSingleFolderDescriptor());
- final DefaultActionGroup group = new DefaultActionGroup();
- group.add(new AddParameterAction(myParameters));
- group.add(new RemoveParameterAction(myParameters));
- final ActionToolbar actionToolbar = ActionManager.getInstance().createActionToolbar("XsltRunSettingsEditor", group, true);
- myParamsToolbar.setLayout(new FlowLayout(FlowLayout.LEFT, 0, 0));
- myParamsToolbar.add(actionToolbar.getComponent());
-
myVmArguments.setDialogCaption("VM Arguments");
myPanelSettings.setBorder(new EmptyBorder(UIUtil.PANEL_SMALL_INSETS));