Add editor reference to transform() method

This commit is contained in:
Alexey Sedunov
2013-05-14 17:36:56 +04:00
parent 5dc08a5d25
commit 82bd796bc0
10 changed files with 30 additions and 21 deletions
@@ -63,6 +63,6 @@ public abstract class AbstractCodeTransformationIntention<T extends Transformer>
assert target != null : "Intention is not applicable"; assert target != null : "Intention is not applicable";
transformer.transform(target); transformer.transform(target, editor);
} }
} }
@@ -16,6 +16,7 @@
package org.jetbrains.jet.plugin.codeInsight.codeTransformations.branchedTransformations; package org.jetbrains.jet.plugin.codeInsight.codeTransformations.branchedTransformations;
import com.intellij.openapi.editor.Editor;
import com.intellij.openapi.project.Project; import com.intellij.openapi.project.Project;
import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.NotNull;
import org.jetbrains.annotations.Nullable; import org.jetbrains.annotations.Nullable;
@@ -57,7 +58,7 @@ public class BranchedUnfoldingUtils {
assert expression != null : UNFOLD_WITHOUT_CHECK; assert expression != null : UNFOLD_WITHOUT_CHECK;
} }
public static void unfoldAssignmentToIf(@NotNull JetBinaryExpression assignment) { public static void unfoldAssignmentToIf(@NotNull JetBinaryExpression assignment, @NotNull Editor editor) {
Project project = assignment.getProject(); Project project = assignment.getProject();
String op = assignment.getOperationReference().getText(); String op = assignment.getOperationReference().getText();
JetExpression lhs = assignment.getLeft(); JetExpression lhs = assignment.getLeft();
@@ -81,7 +82,7 @@ public class BranchedUnfoldingUtils {
assignment.replace(newIfExpression); assignment.replace(newIfExpression);
} }
public static void unfoldAssignmentToWhen(@NotNull JetBinaryExpression assignment) { public static void unfoldAssignmentToWhen(@NotNull JetBinaryExpression assignment, @NotNull Editor editor) {
Project project = assignment.getProject(); Project project = assignment.getProject();
String op = assignment.getOperationReference().getText(); String op = assignment.getOperationReference().getText();
JetExpression lhs = assignment.getLeft(); JetExpression lhs = assignment.getLeft();
@@ -16,6 +16,7 @@
package org.jetbrains.jet.plugin.codeInsight.codeTransformations.branchedTransformations; package org.jetbrains.jet.plugin.codeInsight.codeTransformations.branchedTransformations;
import com.intellij.openapi.editor.Editor;
import com.intellij.psi.PsiElement; import com.intellij.psi.PsiElement;
import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.NotNull;
import org.jetbrains.jet.lang.psi.JetIfExpression; import org.jetbrains.jet.lang.psi.JetIfExpression;
@@ -25,31 +26,31 @@ import org.jetbrains.jet.plugin.codeInsight.codeTransformations.branchedTransfor
public enum FoldableKind implements Transformer { public enum FoldableKind implements Transformer {
IF_TO_ASSIGNMENT("fold.if.to.assignment") { IF_TO_ASSIGNMENT("fold.if.to.assignment") {
@Override @Override
public void transform(@NotNull PsiElement element) { public void transform(@NotNull PsiElement element, @NotNull Editor editor) {
BranchedFoldingUtils.foldIfExpressionWithAssignments((JetIfExpression) element); BranchedFoldingUtils.foldIfExpressionWithAssignments((JetIfExpression) element);
} }
}, },
IF_TO_RETURN("fold.if.to.return") { IF_TO_RETURN("fold.if.to.return") {
@Override @Override
public void transform(@NotNull PsiElement element) { public void transform(@NotNull PsiElement element, @NotNull Editor editor) {
BranchedFoldingUtils.foldIfExpressionWithReturns((JetIfExpression) element); BranchedFoldingUtils.foldIfExpressionWithReturns((JetIfExpression) element);
} }
}, },
IF_TO_RETURN_ASYMMETRICALLY("fold.if.to.return") { IF_TO_RETURN_ASYMMETRICALLY("fold.if.to.return") {
@Override @Override
public void transform(@NotNull PsiElement element) { public void transform(@NotNull PsiElement element, @NotNull Editor editor) {
BranchedFoldingUtils.foldIfExpressionWithAsymmetricReturns((JetIfExpression) element); BranchedFoldingUtils.foldIfExpressionWithAsymmetricReturns((JetIfExpression) element);
} }
}, },
WHEN_TO_ASSIGNMENT("fold.when.to.assignment") { WHEN_TO_ASSIGNMENT("fold.when.to.assignment") {
@Override @Override
public void transform(@NotNull PsiElement element) { public void transform(@NotNull PsiElement element, @NotNull Editor editor) {
BranchedFoldingUtils.foldWhenExpressionWithAssignments((JetWhenExpression) element); BranchedFoldingUtils.foldWhenExpressionWithAssignments((JetWhenExpression) element);
} }
}, },
WHEN_TO_RETURN("fold.when.to.return") { WHEN_TO_RETURN("fold.when.to.return") {
@Override @Override
public void transform(@NotNull PsiElement element) { public void transform(@NotNull PsiElement element, @NotNull Editor editor) {
BranchedFoldingUtils.foldWhenExpressionWithReturns((JetWhenExpression) element); BranchedFoldingUtils.foldWhenExpressionWithReturns((JetWhenExpression) element);
} }
}; };
@@ -16,6 +16,7 @@
package org.jetbrains.jet.plugin.codeInsight.codeTransformations.branchedTransformations; package org.jetbrains.jet.plugin.codeInsight.codeTransformations.branchedTransformations;
import com.intellij.openapi.editor.Editor;
import com.intellij.psi.PsiElement; import com.intellij.psi.PsiElement;
import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.NotNull;
import org.jetbrains.jet.lang.psi.JetBinaryExpression; import org.jetbrains.jet.lang.psi.JetBinaryExpression;
@@ -25,25 +26,25 @@ import org.jetbrains.jet.plugin.codeInsight.codeTransformations.branchedTransfor
public enum UnfoldableKind implements Transformer { public enum UnfoldableKind implements Transformer {
ASSIGNMENT_TO_IF("unfold.assignment.to.if") { ASSIGNMENT_TO_IF("unfold.assignment.to.if") {
@Override @Override
public void transform(@NotNull PsiElement element) { public void transform(@NotNull PsiElement element, @NotNull Editor editor) {
BranchedUnfoldingUtils.unfoldAssignmentToIf((JetBinaryExpression) element); BranchedUnfoldingUtils.unfoldAssignmentToIf((JetBinaryExpression) element, editor);
} }
}, },
RETURN_TO_IF("unfold.return.to.if") { RETURN_TO_IF("unfold.return.to.if") {
@Override @Override
public void transform(@NotNull PsiElement element) { public void transform(@NotNull PsiElement element, @NotNull Editor editor) {
BranchedUnfoldingUtils.unfoldReturnToIf((JetReturnExpression) element); BranchedUnfoldingUtils.unfoldReturnToIf((JetReturnExpression) element);
} }
}, },
ASSIGNMENT_TO_WHEN("unfold.assignment.to.when") { ASSIGNMENT_TO_WHEN("unfold.assignment.to.when") {
@Override @Override
public void transform(@NotNull PsiElement element) { public void transform(@NotNull PsiElement element, @NotNull Editor editor) {
BranchedUnfoldingUtils.unfoldAssignmentToWhen((JetBinaryExpression) element); BranchedUnfoldingUtils.unfoldAssignmentToWhen((JetBinaryExpression) element, editor);
} }
}, },
RETURN_TO_WHEN("unfold.return.to.when") { RETURN_TO_WHEN("unfold.return.to.when") {
@Override @Override
public void transform(@NotNull PsiElement element) { public void transform(@NotNull PsiElement element, @NotNull Editor editor) {
BranchedUnfoldingUtils.unfoldReturnToWhen((JetReturnExpression) element); BranchedUnfoldingUtils.unfoldReturnToWhen((JetReturnExpression) element);
} }
}; };
@@ -16,11 +16,12 @@
package org.jetbrains.jet.plugin.codeInsight.codeTransformations.branchedTransformations.core; package org.jetbrains.jet.plugin.codeInsight.codeTransformations.branchedTransformations.core;
import com.intellij.openapi.editor.Editor;
import com.intellij.psi.PsiElement; import com.intellij.psi.PsiElement;
import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.NotNull;
public interface Transformer { public interface Transformer {
@NotNull @NotNull
public String getKey(); String getKey();
public void transform(@NotNull PsiElement element); void transform(@NotNull PsiElement element, @NotNull Editor editor);
} }
@@ -1,6 +1,7 @@
package org.jetbrains.jet.plugin.codeInsight.codeTransformations.branchedTransformations.intentions; package org.jetbrains.jet.plugin.codeInsight.codeTransformations.branchedTransformations.intentions;
import com.google.common.base.Predicate; import com.google.common.base.Predicate;
import com.intellij.openapi.editor.Editor;
import com.intellij.psi.PsiElement; import com.intellij.psi.PsiElement;
import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.NotNull;
import org.jetbrains.annotations.Nullable; import org.jetbrains.annotations.Nullable;
@@ -18,7 +19,7 @@ public class EliminateWhenSubjectIntention extends AbstractCodeTransformationInt
} }
@Override @Override
public void transform(@NotNull PsiElement element) { public void transform(@NotNull PsiElement element, @NotNull Editor editor) {
WhenUtils.eliminateWhenSubject((JetWhenExpression) element); WhenUtils.eliminateWhenSubject((JetWhenExpression) element);
} }
}; };
@@ -1,6 +1,7 @@
package org.jetbrains.jet.plugin.codeInsight.codeTransformations.branchedTransformations.intentions; package org.jetbrains.jet.plugin.codeInsight.codeTransformations.branchedTransformations.intentions;
import com.google.common.base.Predicate; import com.google.common.base.Predicate;
import com.intellij.openapi.editor.Editor;
import com.intellij.psi.PsiElement; import com.intellij.psi.PsiElement;
import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.NotNull;
import org.jetbrains.annotations.Nullable; import org.jetbrains.annotations.Nullable;
@@ -18,7 +19,7 @@ public class FlattenWhenIntention extends AbstractCodeTransformationIntention<Tr
} }
@Override @Override
public void transform(@NotNull PsiElement element) { public void transform(@NotNull PsiElement element, @NotNull Editor editor) {
WhenUtils.flattenWhen((JetWhenExpression) element); WhenUtils.flattenWhen((JetWhenExpression) element);
} }
}; };
@@ -1,6 +1,7 @@
package org.jetbrains.jet.plugin.codeInsight.codeTransformations.branchedTransformations.intentions; package org.jetbrains.jet.plugin.codeInsight.codeTransformations.branchedTransformations.intentions;
import com.google.common.base.Predicate; import com.google.common.base.Predicate;
import com.intellij.openapi.editor.Editor;
import com.intellij.psi.PsiElement; import com.intellij.psi.PsiElement;
import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.NotNull;
import org.jetbrains.annotations.Nullable; import org.jetbrains.annotations.Nullable;
@@ -18,7 +19,7 @@ public class IfToWhenIntention extends AbstractCodeTransformationIntention<Trans
} }
@Override @Override
public void transform(@NotNull PsiElement element) { public void transform(@NotNull PsiElement element, @NotNull Editor editor) {
IfWhenUtils.transformIfToWhen((JetIfExpression) element); IfWhenUtils.transformIfToWhen((JetIfExpression) element);
} }
}; };
@@ -1,6 +1,7 @@
package org.jetbrains.jet.plugin.codeInsight.codeTransformations.branchedTransformations.intentions; package org.jetbrains.jet.plugin.codeInsight.codeTransformations.branchedTransformations.intentions;
import com.google.common.base.Predicate; import com.google.common.base.Predicate;
import com.intellij.openapi.editor.Editor;
import com.intellij.psi.PsiElement; import com.intellij.psi.PsiElement;
import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.NotNull;
import org.jetbrains.annotations.Nullable; import org.jetbrains.annotations.Nullable;
@@ -18,7 +19,7 @@ public class IntroduceWhenSubjectIntention extends AbstractCodeTransformationInt
} }
@Override @Override
public void transform(@NotNull PsiElement element) { public void transform(@NotNull PsiElement element, @NotNull Editor editor) {
WhenUtils.introduceWhenSubject((JetWhenExpression) element); WhenUtils.introduceWhenSubject((JetWhenExpression) element);
} }
}; };
@@ -17,6 +17,7 @@
package org.jetbrains.jet.plugin.codeInsight.codeTransformations.branchedTransformations.intentions; package org.jetbrains.jet.plugin.codeInsight.codeTransformations.branchedTransformations.intentions;
import com.google.common.base.Predicate; import com.google.common.base.Predicate;
import com.intellij.openapi.editor.Editor;
import com.intellij.psi.PsiElement; import com.intellij.psi.PsiElement;
import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.NotNull;
import org.jetbrains.annotations.Nullable; import org.jetbrains.annotations.Nullable;
@@ -34,7 +35,7 @@ public class WhenToIfIntention extends AbstractCodeTransformationIntention<Trans
} }
@Override @Override
public void transform(@NotNull PsiElement element) { public void transform(@NotNull PsiElement element, @NotNull Editor editor) {
IfWhenUtils.transformWhenToIf((JetWhenExpression) element); IfWhenUtils.transformWhenToIf((JetWhenExpression) element);
} }
}; };