From 05054bfa492affd20a56efa9200fc6112ac211a6 Mon Sep 17 00:00:00 2001 From: Dmitry Jemerov Date: Thu, 24 May 2012 16:20:13 +0200 Subject: [PATCH] Ctrl-Alt-B works for Kotlin --- idea/src/META-INF/plugin.xml | 5 +- .../search/KotlinDefinitionsSearcher.java | 46 +++++++++++++++++++ .../KotlinDirectInheritorsSearcher.java | 2 +- .../KotlinReferencesSearcher.java | 2 +- 4 files changed, 51 insertions(+), 4 deletions(-) create mode 100644 idea/src/org/jetbrains/jet/plugin/search/KotlinDefinitionsSearcher.java rename idea/src/org/jetbrains/jet/plugin/{references => search}/KotlinDirectInheritorsSearcher.java (98%) rename idea/src/org/jetbrains/jet/plugin/{references => search}/KotlinReferencesSearcher.java (98%) diff --git a/idea/src/META-INF/plugin.xml b/idea/src/META-INF/plugin.xml index b916b9f6239..28eb5f32a05 100644 --- a/idea/src/META-INF/plugin.xml +++ b/idea/src/META-INF/plugin.xml @@ -185,8 +185,9 @@ - - + + + { + @Override + public void processQuery(@NotNull PsiElement queryParameters, @NotNull final Processor consumer) { + if (queryParameters instanceof JetClass) { + final JetLightClass psiClass = JetLightClass.wrapDelegate((JetClass) queryParameters); + final Query query = ClassInheritorsSearch.search(psiClass, true); + query.forEach(new Processor() { + @Override + public boolean process(final PsiClass pyClass) { + return consumer.process(pyClass); + } + }); + } + } +} diff --git a/idea/src/org/jetbrains/jet/plugin/references/KotlinDirectInheritorsSearcher.java b/idea/src/org/jetbrains/jet/plugin/search/KotlinDirectInheritorsSearcher.java similarity index 98% rename from idea/src/org/jetbrains/jet/plugin/references/KotlinDirectInheritorsSearcher.java rename to idea/src/org/jetbrains/jet/plugin/search/KotlinDirectInheritorsSearcher.java index cc505252f36..63b1f90af81 100644 --- a/idea/src/org/jetbrains/jet/plugin/references/KotlinDirectInheritorsSearcher.java +++ b/idea/src/org/jetbrains/jet/plugin/search/KotlinDirectInheritorsSearcher.java @@ -14,7 +14,7 @@ * limitations under the License. */ -package org.jetbrains.jet.plugin.references; +package org.jetbrains.jet.plugin.search; import com.intellij.openapi.application.QueryExecutorBase; import com.intellij.psi.PsiClass; diff --git a/idea/src/org/jetbrains/jet/plugin/references/KotlinReferencesSearcher.java b/idea/src/org/jetbrains/jet/plugin/search/KotlinReferencesSearcher.java similarity index 98% rename from idea/src/org/jetbrains/jet/plugin/references/KotlinReferencesSearcher.java rename to idea/src/org/jetbrains/jet/plugin/search/KotlinReferencesSearcher.java index 149b0b44428..ffb166ab29b 100644 --- a/idea/src/org/jetbrains/jet/plugin/references/KotlinReferencesSearcher.java +++ b/idea/src/org/jetbrains/jet/plugin/search/KotlinReferencesSearcher.java @@ -14,7 +14,7 @@ * limitations under the License. */ -package org.jetbrains.jet.plugin.references; +package org.jetbrains.jet.plugin.search; import com.intellij.openapi.application.QueryExecutorBase; import com.intellij.psi.PsiElement;