mirror of
https://gitflic.ru/project/openide/openide.git
synced 2026-09-27 10:03:11 +07:00
Update Injections view for new Settings dialog
This commit is contained in:
+1
-1
@@ -1,7 +1,7 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<form xmlns="http://www.intellij.com/uidesigner/form/" version="1" bind-to-class="org.intellij.plugins.intelliLang.AdvancedSettingsUI.AdvancedSettingsPanel">
|
||||
<grid id="27dc6" binding="myRoot" layout-manager="GridLayoutManager" row-count="6" column-count="1" same-size-horizontally="false" same-size-vertically="false" hgap="-1" vgap="-1">
|
||||
<margin top="5" left="8" bottom="5" right="8"/>
|
||||
<margin top="0" left="0" bottom="0" right="0"/>
|
||||
<constraints>
|
||||
<xy x="20" y="20" width="562" height="527"/>
|
||||
</constraints>
|
||||
|
||||
+10
-21
@@ -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<AnAction> 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<Configurable> configurables = new ArrayList<Configurable>();
|
||||
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<BaseInjection> injections) {
|
||||
Collections.sort(injections, new Comparator<BaseInjection>() {
|
||||
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();
|
||||
|
||||
Reference in New Issue
Block a user