From 936e77caf8f1ed00302d88cd85a7dba2af52d072 Mon Sep 17 00:00:00 2001 From: Vladimir Kravets Date: Mon, 21 Oct 2013 15:12:08 +0300 Subject: [PATCH] PY-11175 Add speed search support for Python Integrated Tools Since it related to core functionality it can be done for all module aware configuration. --- .../options/ModuleAwareProjectConfigurable.java | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/platform/lang-impl/src/com/intellij/application/options/ModuleAwareProjectConfigurable.java b/platform/lang-impl/src/com/intellij/application/options/ModuleAwareProjectConfigurable.java index 51499b6a8f10..71b7dc7e7169 100644 --- a/platform/lang-impl/src/com/intellij/application/options/ModuleAwareProjectConfigurable.java +++ b/platform/lang-impl/src/com/intellij/application/options/ModuleAwareProjectConfigurable.java @@ -24,8 +24,10 @@ import com.intellij.openapi.ui.Splitter; import com.intellij.openapi.util.Condition; import com.intellij.platform.ModuleAttachProcessor; import com.intellij.ui.CollectionListModel; +import com.intellij.ui.ListSpeedSearch; import com.intellij.ui.components.JBList; import com.intellij.ui.components.JBScrollPane; +import com.intellij.util.Function; import com.intellij.util.containers.ContainerUtil; import org.jetbrains.annotations.Nls; import org.jetbrains.annotations.NotNull; @@ -93,6 +95,15 @@ public abstract class ModuleAwareProjectConfigurable(modules)); + new ListSpeedSearch(moduleList, new Function() { + @Override + public String fun(Object o) { + if (o instanceof Module) { + return ((Module)o).getName(); + } + return null; + } + }); moduleList.setSelectionMode(ListSelectionModel.SINGLE_SELECTION); moduleList.setCellRenderer(new ModuleListCellRenderer()); splitter.setFirstComponent(new JBScrollPane(moduleList));