Package org.jetbrains.plugins.cucumber.psi.refactoring.rename

Source Code of org.jetbrains.plugins.cucumber.psi.refactoring.rename.GherkinInplaceRenamer

package org.jetbrains.plugins.cucumber.psi.refactoring.rename;

import com.intellij.openapi.editor.Editor;
import com.intellij.psi.PsiNamedElement;
import com.intellij.psi.codeStyle.CodeStyleManager;
import com.intellij.psi.util.PsiTreeUtil;
import com.intellij.refactoring.rename.inplace.VariableInplaceRenamer;
import org.jetbrains.annotations.NotNull;
import org.jetbrains.plugins.cucumber.psi.GherkinScenarioOutline;

/**
* User: Andrey.Vokin
* Date: 10/7/13
*/
public class GherkinInplaceRenamer extends VariableInplaceRenamer {
  public GherkinInplaceRenamer(@NotNull PsiNamedElement elementToRename, Editor editor) {
    super(elementToRename, editor);
  }

  @Override
  public void finish(boolean success) {
    super.finish(success);

    if (success) {
      final PsiNamedElement newVariable = getVariable();
      if (newVariable != null) {
        final GherkinScenarioOutline scenario = PsiTreeUtil.getParentOfType(newVariable, GherkinScenarioOutline.class);

        if (scenario != null) {
          final CodeStyleManager csManager = CodeStyleManager.getInstance(newVariable.getProject());
          csManager.reformat(scenario);
        }
      }
    }
  }
}
TOP

Related Classes of org.jetbrains.plugins.cucumber.psi.refactoring.rename.GherkinInplaceRenamer

TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.