Create Function From Usage: Move "Create function from usage"-related classes to separate package

This commit is contained in:
Alexey Sedunov
2014-09-22 20:23:12 +04:00
parent 08e3a6a9de
commit d1e43d6482
10 changed files with 45 additions and 39 deletions
@@ -18,7 +18,7 @@ package org.jetbrains.jet.plugin.quickfix;
import org.jetbrains.jet.lang.psi.JetClass;
import org.jetbrains.jet.plugin.codeInsight.ImplementMethodsHandler;
import org.jetbrains.jet.plugin.quickfix.createFromUsage.*;
import org.jetbrains.jet.plugin.quickfix.createFromUsage.createFunction.*;
import static org.jetbrains.jet.lang.diagnostics.Errors.*;
import static org.jetbrains.jet.lexer.JetTokens.*;
@@ -18,7 +18,6 @@ package org.jetbrains.jet.plugin.quickfix;
import com.google.common.collect.Sets;
import com.intellij.extapi.psi.ASTDelegatePsiElement;
import com.intellij.ide.util.PsiElementListCellRenderer;
import com.intellij.psi.PsiElement;
import com.intellij.psi.PsiFile;
import com.intellij.psi.PsiWhiteSpace;
@@ -39,12 +38,8 @@ import org.jetbrains.jet.lang.types.DeferredType;
import org.jetbrains.jet.lang.types.JetType;
import org.jetbrains.jet.lang.types.checker.JetTypeChecker;
import org.jetbrains.jet.plugin.caches.resolve.ResolvePackage;
import org.jetbrains.jet.plugin.presentation.JetClassPresenter;
import org.jetbrains.jet.plugin.quickfix.createFromUsage.ClassCandidate;
import org.jetbrains.jet.plugin.references.BuiltInsReferenceResolver;
import javax.swing.*;
import java.awt.*;
import java.util.Set;
public class QuickFixUtil {
@@ -200,29 +195,4 @@ public class QuickFixUtil {
return usedParameters;
}
public static class ClassCandidateListCellRenderer extends PsiElementListCellRenderer<JetClass> {
private final JetClassPresenter presenter = new JetClassPresenter();
@Override
public String getElementText(JetClass element) {
return presenter.getPresentation(element).getPresentableText();
}
@Nullable
@Override
protected String getContainerText(JetClass element, String name) {
return presenter.getPresentation(element).getLocationString();
}
@Override
protected int getIconFlags() {
return 0;
}
@Override
public Component getListCellRendererComponent(JList list, Object value, int index, boolean isSelected, boolean cellHasFocus) {
return super.getListCellRendererComponent(list, ((ClassCandidate) value).getJetClass(), index, isSelected, cellHasFocus);
}
}
}
@@ -0,0 +1,35 @@
package org.jetbrains.jet.plugin.quickfix.createFromUsage.createFunction;
import com.intellij.ide.util.PsiElementListCellRenderer;
import org.jetbrains.annotations.NotNull;
import org.jetbrains.annotations.Nullable;
import org.jetbrains.jet.lang.psi.JetClass;
import org.jetbrains.jet.plugin.presentation.JetClassPresenter;
import javax.swing.*;
import java.awt.*;
class ClassCandidateListCellRenderer extends PsiElementListCellRenderer<JetClass> {
private final JetClassPresenter presenter = new JetClassPresenter();
@Override
public String getElementText(@NotNull JetClass element) {
return presenter.getPresentation(element).getPresentableText();
}
@Nullable
@Override
protected String getContainerText(JetClass element, String name) {
return presenter.getPresentation(element).getLocationString();
}
@Override
protected int getIconFlags() {
return 0;
}
@Override
public Component getListCellRendererComponent(JList list, Object value, int index, boolean isSelected, boolean cellHasFocus) {
return super.getListCellRendererComponent(list, ((ClassCandidate) value).getJetClass(), index, isSelected, cellHasFocus);
}
}
@@ -1,4 +1,4 @@
package org.jetbrains.jet.plugin.quickfix.createFromUsage
package org.jetbrains.jet.plugin.quickfix.createFromUsage.createFunction
import org.jetbrains.jet.plugin.quickfix.JetSingleIntentionActionFactory
import org.jetbrains.jet.lang.diagnostics.Diagnostic
@@ -14,7 +14,7 @@
* limitations under the License.
*/
package org.jetbrains.jet.plugin.quickfix.createFromUsage
package org.jetbrains.jet.plugin.quickfix.createFromUsage.createFunction
import com.intellij.codeInsight.lookup.LookupElement
import com.intellij.codeInsight.lookup.LookupElementBuilder
@@ -65,6 +65,7 @@ import java.util.Properties
import org.jetbrains.jet.plugin.caches.resolve.getAnalysisResults
import org.jetbrains.jet.lang.resolve.DescriptorToSourceUtils
import org.jetbrains.jet.plugin.quickfix.QuickFixUtil
import org.jetbrains.jet.plugin.quickfix.createFromUsage.CreateFromUsageFixBase
private val TYPE_PARAMETER_LIST_VARIABLE_NAME = "typeParameterList"
private val TEMPLATE_FROM_USAGE_FUNCTION_BODY = "New Kotlin Function Body.kt"
@@ -539,7 +540,7 @@ public class CreateFunctionFromUsageFix internal (
else {
// class selection
val list = JBList(ownerTypeCandidates.map { ClassCandidate(it, currentFile) })
val renderer = QuickFixUtil.ClassCandidateListCellRenderer()
val renderer = ClassCandidateListCellRenderer()
list.setSelectionMode(ListSelectionModel.SINGLE_SELECTION)
list.setCellRenderer(renderer)
val builder = PopupChooserBuilder(list)
@@ -1,4 +1,4 @@
package org.jetbrains.jet.plugin.quickfix.createFromUsage
package org.jetbrains.jet.plugin.quickfix.createFromUsage.createFunction
import org.jetbrains.jet.plugin.quickfix.JetSingleIntentionActionFactory
import org.jetbrains.jet.lang.diagnostics.Diagnostic
@@ -1,4 +1,4 @@
package org.jetbrains.jet.plugin.quickfix.createFromUsage
package org.jetbrains.jet.plugin.quickfix.createFromUsage.createFunction
import org.jetbrains.jet.plugin.quickfix.JetSingleIntentionActionFactory
import org.jetbrains.jet.lang.diagnostics.Diagnostic
@@ -1,4 +1,4 @@
package org.jetbrains.jet.plugin.quickfix.createFromUsage
package org.jetbrains.jet.plugin.quickfix.createFromUsage.createFunction
import org.jetbrains.jet.plugin.quickfix.JetSingleIntentionActionFactory
import org.jetbrains.jet.lang.diagnostics.Diagnostic
@@ -1,4 +1,4 @@
package org.jetbrains.jet.plugin.quickfix.createFromUsage
package org.jetbrains.jet.plugin.quickfix.createFromUsage.createFunction
import org.jetbrains.jet.plugin.quickfix.JetSingleIntentionActionFactory
import org.jetbrains.jet.lang.diagnostics.Diagnostic
@@ -1,4 +1,4 @@
package org.jetbrains.jet.plugin.quickfix.createFromUsage
package org.jetbrains.jet.plugin.quickfix.createFromUsage.createFunction
import org.jetbrains.jet.plugin.quickfix.JetSingleIntentionActionFactory
import org.jetbrains.jet.lang.diagnostics.Diagnostic