From 9815bf779e9e5def1d41c78772ced783211b7a20 Mon Sep 17 00:00:00 2001 From: Sergey Malenkov Date: Thu, 2 Oct 2014 22:39:44 +0400 Subject: [PATCH] Update Injections view for new Settings dialog --- .../intelliLang/AdvancedSettingsUI.form | 2 +- .../intelliLang/InjectionsSettingsUI.java | 31 ++++++------------- 2 files changed, 11 insertions(+), 22 deletions(-) diff --git a/plugins/IntelliLang/java-support/org/intellij/plugins/intelliLang/AdvancedSettingsUI.form b/plugins/IntelliLang/java-support/org/intellij/plugins/intelliLang/AdvancedSettingsUI.form index b894b8ced19b..491b22f00fe9 100644 --- a/plugins/IntelliLang/java-support/org/intellij/plugins/intelliLang/AdvancedSettingsUI.form +++ b/plugins/IntelliLang/java-support/org/intellij/plugins/intelliLang/AdvancedSettingsUI.form @@ -1,7 +1,7 @@
- + diff --git a/plugins/IntelliLang/src/org/intellij/plugins/intelliLang/InjectionsSettingsUI.java b/plugins/IntelliLang/src/org/intellij/plugins/intelliLang/InjectionsSettingsUI.java index e5101aefd8d5..df6bb96d3bdc 100644 --- a/plugins/IntelliLang/src/org/intellij/plugins/intelliLang/InjectionsSettingsUI.java +++ b/plugins/IntelliLang/src/org/intellij/plugins/intelliLang/InjectionsSettingsUI.java @@ -21,6 +21,7 @@ import com.intellij.ide.DataManager; import com.intellij.ide.ui.SplitterProportionsDataImpl; import com.intellij.lang.Language; import com.intellij.openapi.actionSystem.*; +import com.intellij.openapi.application.ApplicationManager; import com.intellij.openapi.fileChooser.FileChooser; import com.intellij.openapi.fileChooser.FileChooserDescriptor; import com.intellij.openapi.fileChooser.FileChooserFactory; @@ -33,14 +34,17 @@ import com.intellij.openapi.options.SearchableConfigurable; import com.intellij.openapi.project.DumbAwareAction; import com.intellij.openapi.project.Project; import com.intellij.openapi.ui.Messages; +import com.intellij.openapi.ui.OnePixelDivider; import com.intellij.openapi.ui.SplitterProportionsData; import com.intellij.openapi.ui.popup.JBPopupFactory; import com.intellij.openapi.util.*; +import com.intellij.openapi.util.registry.Registry; import com.intellij.openapi.util.text.StringUtil; import com.intellij.openapi.vfs.VirtualFile; import com.intellij.openapi.vfs.VirtualFileWrapper; import com.intellij.psi.injection.ReferenceInjector; import com.intellij.ui.*; +import com.intellij.ui.border.CustomLineBorder; import com.intellij.ui.speedSearch.SpeedSearchSupply; import com.intellij.ui.table.TableView; import com.intellij.util.*; @@ -74,7 +78,7 @@ import java.util.List; /** * @author Gregory.Shrago */ -public class InjectionsSettingsUI implements SearchableConfigurable.Parent, Configurable.NoScroll { +public class InjectionsSettingsUI extends SearchableConfigurable.Parent.Abstract implements Configurable.NoMargin, Configurable.NoScroll { private final Project myProject; private final CfgInfo[] myInfos; @@ -86,7 +90,6 @@ public class InjectionsSettingsUI implements SearchableConfigurable.Parent, Conf private final List myAddActions = ContainerUtil.newArrayList(); private final JLabel myCountLabel; - private Configurable[] myConfigurables; private Configuration myConfiguration; public InjectionsSettingsUI(final Project project, final Configuration configuration) { @@ -105,6 +108,9 @@ public class InjectionsSettingsUI implements SearchableConfigurable.Parent, Conf ToolbarDecorator decorator = ToolbarDecorator.createDecorator(myInjectionsTable); createActions(decorator); + if (ApplicationManager.getApplication().isInternal() && Registry.is("ide.new.settings.view")) { + decorator.setPanelBorder(new CustomLineBorder(OnePixelDivider.BACKGROUND, 0, 0, 1, 0)); + } //myRoot.add(new TitledSeparator("Languages injection places"), BorderLayout.NORTH); myRoot.add(decorator.createPanel(), BorderLayout.CENTER); @@ -372,13 +378,7 @@ public class InjectionsSettingsUI implements SearchableConfigurable.Parent, Conf } @Override - public boolean isVisible() { - return true; - } - - @Override - public Configurable[] getConfigurables() { - if (myConfigurables == null) { + protected Configurable[] buildConfigurables() { final ArrayList configurables = new ArrayList(); for (LanguageInjectionSupport support : InjectorUtils.getActiveInjectionSupports()) { ContainerUtil.addAll(configurables, support.createSettings(myProject, myConfiguration)); @@ -388,10 +388,7 @@ public class InjectionsSettingsUI implements SearchableConfigurable.Parent, Conf return Comparing.compare(o1.getDisplayName(), o2.getDisplayName()); } }); - myConfigurables = configurables.toArray(new Configurable[configurables.size()]); - } - - return myConfigurables; + return configurables.toArray(new Configurable[configurables.size()]); } @NotNull @@ -400,11 +397,6 @@ public class InjectionsSettingsUI implements SearchableConfigurable.Parent, Conf return "IntelliLang.Configuration"; } - @Override - public Runnable enableSearch(String option) { - return null; - } - private static void sortInjections(final List injections) { Collections.sort(injections, new Comparator() { public int compare(final BaseInjection o1, final BaseInjection o2) { @@ -429,9 +421,6 @@ public class InjectionsSettingsUI implements SearchableConfigurable.Parent, Conf updateCountLabel(); } - public void disposeUIResources() { - } - public void apply() { for (CfgInfo info : myInfos) { info.apply();