diff --git a/platform/lang-impl/src/com/intellij/ide/scriptingContext/LangScriptingContextConfigurable.java b/platform/lang-impl/src/com/intellij/ide/scriptingContext/LangScriptingContextConfigurable.java index 45f9a6cdcb34..cec9a3a05c46 100644 --- a/platform/lang-impl/src/com/intellij/ide/scriptingContext/LangScriptingContextConfigurable.java +++ b/platform/lang-impl/src/com/intellij/ide/scriptingContext/LangScriptingContextConfigurable.java @@ -15,6 +15,7 @@ */ package com.intellij.ide.scriptingContext; +import com.intellij.ide.scriptingContext.ui.ScriptingLibrariesPanelStub; import com.intellij.ide.scriptingContext.ui.ScriptingContextsConfigurable; import com.intellij.ide.scriptingContext.ui.ScriptingLibrariesPanel; import com.intellij.openapi.application.ApplicationManager; @@ -30,16 +31,22 @@ import javax.swing.*; * @author Rustam Vishnyakov */ public abstract class LangScriptingContextConfigurable implements Configurable, Configurable.Composite { - private ScriptingLibrariesPanel myPanel; - private ScriptingLibraryManager myLibManager; + private final ScriptingLibrariesPanelStub myPanel; + private final ScriptingLibraryManager myLibManager; private ScriptingContextsConfigurable myContextsConfigurable; + private final String productName = System.getProperty("idea.platform.prefix"); public LangScriptingContextConfigurable(Project project, LangScriptingContextProvider provider) { myLibManager = new ScriptingLibraryManager(project, provider.getLibraryType()); - myPanel = new ScriptingLibrariesPanel(provider, project, myLibManager); + myPanel = useDedicatedLibraryUI() ? new ScriptingLibrariesPanel(provider, project, myLibManager) : new ScriptingLibrariesPanelStub(); myContextsConfigurable = new ScriptingContextsConfigurable(project, provider); } + private boolean useDedicatedLibraryUI() { + //TODO Find a better way to check it + return "WebStorm".equalsIgnoreCase(productName) || "PhpStorm".equalsIgnoreCase(productName); + } + @Nls @Override public String getDisplayName() { diff --git a/platform/lang-impl/src/com/intellij/ide/scriptingContext/ui/ScriptingLibrariesPanel.java b/platform/lang-impl/src/com/intellij/ide/scriptingContext/ui/ScriptingLibrariesPanel.java index 7ff9a0f8f2bf..c2766e432d5c 100644 --- a/platform/lang-impl/src/com/intellij/ide/scriptingContext/ui/ScriptingLibrariesPanel.java +++ b/platform/lang-impl/src/com/intellij/ide/scriptingContext/ui/ScriptingLibrariesPanel.java @@ -32,7 +32,7 @@ import java.awt.event.ActionListener; /** * @author Rustam Vishnyakov */ -public class ScriptingLibrariesPanel { +public class ScriptingLibrariesPanel extends ScriptingLibrariesPanelStub { private JPanel myTopPanel; private JButton myAddLibraryButton; private JButton myRemoveLibraryButton; diff --git a/platform/lang-impl/src/com/intellij/ide/scriptingContext/ui/ScriptingLibrariesPanelStub.form b/platform/lang-impl/src/com/intellij/ide/scriptingContext/ui/ScriptingLibrariesPanelStub.form new file mode 100644 index 000000000000..f265e89629f9 --- /dev/null +++ b/platform/lang-impl/src/com/intellij/ide/scriptingContext/ui/ScriptingLibrariesPanelStub.form @@ -0,0 +1,26 @@ + +
+ + + + + + + + + + + + + + + + + + + + + + + +
diff --git a/platform/lang-impl/src/com/intellij/ide/scriptingContext/ui/ScriptingLibrariesPanelStub.java b/platform/lang-impl/src/com/intellij/ide/scriptingContext/ui/ScriptingLibrariesPanelStub.java new file mode 100644 index 000000000000..49e6db0cf74a --- /dev/null +++ b/platform/lang-impl/src/com/intellij/ide/scriptingContext/ui/ScriptingLibrariesPanelStub.java @@ -0,0 +1,23 @@ +package com.intellij.ide.scriptingContext.ui; + +import javax.swing.*; + +/** + * @author Rustam Vishnyakov + */ +public class ScriptingLibrariesPanelStub { + private JPanel myMainPanel; + + public JComponent getPanel() { + return myMainPanel; + } + + + public boolean isModified() { + return false; + } + + public void resetTable() { + // Do nothing + } +} diff --git a/platform/lang-impl/src/com/intellij/ide/scriptingContext/ui/ScriptingLibraryPanelBase.java b/platform/lang-impl/src/com/intellij/ide/scriptingContext/ui/ScriptingLibraryPanelBase.java new file mode 100644 index 000000000000..e69de29bb2d1