package org.jetbrains.plugins.cucumber.psi.refactoring.rename;
import com.intellij.openapi.editor.Editor;
import com.intellij.psi.PsiElement;
import com.intellij.psi.PsiFile;
import com.intellij.psi.PsiNamedElement;
import com.intellij.refactoring.rename.inplace.VariableInplaceRenameHandler;
import com.intellij.refactoring.rename.inplace.VariableInplaceRenamer;
import org.jetbrains.annotations.NotNull;
import org.jetbrains.annotations.Nullable;
import org.jetbrains.plugins.cucumber.psi.GherkinStepParameter;
import org.jetbrains.plugins.cucumber.psi.GherkinTableCell;
public class GherkinInplaceRenameHandler extends VariableInplaceRenameHandler {
@Override
protected boolean isAvailable(PsiElement element, Editor editor, PsiFile file) {
return element instanceof GherkinStepParameter || element instanceof GherkinTableCell;
}
@Nullable
@Override
protected VariableInplaceRenamer createRenamer(@NotNull PsiElement elementToRename, Editor editor) {
return new GherkinInplaceRenamer((PsiNamedElement)elementToRename, editor);
}
}