IDEA-63133 Map help buttons of the Libraries and Usage Scope pages of the settings dialog (under JavaScript)

This commit is contained in:
Rustam.Vishnyakov
2010-12-24 17:03:44 +03:00
parent 884bedfb1e
commit cb0c00dc0a
2 changed files with 10 additions and 3 deletions
@@ -24,6 +24,7 @@ import com.intellij.openapi.options.ConfigurationException;
import com.intellij.openapi.project.Project;
import com.intellij.openapi.roots.libraries.scripting.ScriptingLibraryManager;
import org.jetbrains.annotations.Nls;
import org.jetbrains.annotations.Nullable;
import javax.swing.*;
@@ -38,7 +39,7 @@ public abstract class LangScriptingContextConfigurable implements Configurable,
public LangScriptingContextConfigurable(Project project, LangScriptingContextProvider provider) {
myLibManager = new ScriptingLibraryManager(project, provider.getLibraryType());
myPanel = useDedicatedLibraryUI(project) ? new ScriptingLibrariesPanel(provider, project, myLibManager) : new ScriptingLibrariesPanelStub();
myContextsConfigurable = new ScriptingContextsConfigurable(project, provider.getLibraryMappings(project));
myContextsConfigurable = new ScriptingContextsConfigurable(this, project, provider.getLibraryMappings(project));
}
private static boolean useDedicatedLibraryUI(Project project) {
@@ -88,4 +89,7 @@ public abstract class LangScriptingContextConfigurable implements Configurable,
public Configurable[] getConfigurables() {
return new Configurable[] {myContextsConfigurable};
}
@Nullable
public abstract String getUsageScopeHelpTopic();
}
@@ -16,6 +16,7 @@
package com.intellij.ide.scriptingContext.ui;
import com.intellij.ide.IdeBundle;
import com.intellij.ide.scriptingContext.LangScriptingContextConfigurable;
import com.intellij.ide.scriptingContext.ScriptingLibraryMappings;
import com.intellij.openapi.project.Project;
import com.intellij.openapi.roots.libraries.scripting.ScriptingLibraryTable;
@@ -32,14 +33,16 @@ import javax.swing.*;
public class ScriptingContextsConfigurable extends LanguagePerFileConfigurable<ScriptingLibraryTable.LibraryModel> {
private final ScriptingLibraryMappings myScriptingLibraryMappings;
private final LangScriptingContextConfigurable myParent;
public ScriptingContextsConfigurable(final Project project, final ScriptingLibraryMappings mappings) {
public ScriptingContextsConfigurable(final LangScriptingContextConfigurable parent, final Project project, final ScriptingLibraryMappings mappings) {
super(project, ScriptingLibraryTable.LibraryModel.class, mappings,
IdeBundle.message("scripting.lib.usageScope.caption"),
IdeBundle.message("scripting.lib.usageScope.tableTitle"),
IdeBundle.message("scripting.lib.usageScope.override.question"),
IdeBundle.message("scripting.lib.usageScope.override.title"));
myScriptingLibraryMappings = mappings;
myParent = parent;
}
public void resetMappings() {
@@ -81,6 +84,6 @@ public class ScriptingContextsConfigurable extends LanguagePerFileConfigurable<S
@Override
public String getHelpTopic() {
return null;
return myParent.getUsageScopeHelpTopic();
}
}