mirror of
https://gitflic.ru/project/openide/openide.git
synced 2026-09-18 09:34:34 +07:00
undo and rename/move class used in run configuration (IDEA-36423)
This commit is contained in:
@@ -24,6 +24,7 @@ import com.intellij.psi.search.GlobalSearchScope;
|
||||
import com.intellij.psi.util.PsiTreeUtil;
|
||||
import com.intellij.refactoring.listeners.RefactoringElementAdapter;
|
||||
import com.intellij.refactoring.listeners.RefactoringElementListener;
|
||||
import com.intellij.refactoring.listeners.UndoRefactoringElementListener;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
|
||||
public class RefactoringListeners {
|
||||
@@ -86,7 +87,8 @@ public class RefactoringListeners {
|
||||
}
|
||||
}
|
||||
|
||||
private static abstract class RenameElement<T extends PsiElement> extends RefactoringElementAdapter {
|
||||
private static abstract class RenameElement<T extends PsiElement> extends RefactoringElementAdapter
|
||||
implements UndoRefactoringElementListener{
|
||||
private final Accessor<T> myAccessor;
|
||||
private final String myPath;
|
||||
|
||||
@@ -113,6 +115,11 @@ public class RefactoringListeners {
|
||||
protected abstract T findNewElement(T newParent, String qualifiedName);
|
||||
|
||||
protected abstract String getQualifiedName(T element);
|
||||
|
||||
@Override
|
||||
public void undoElementMovedOrRenamed(@NotNull PsiElement newElement, @NotNull String oldQualifiedName) {
|
||||
myAccessor.setName(oldQualifiedName);
|
||||
}
|
||||
}
|
||||
|
||||
private static class RefactorPackage extends RenameElement<PsiPackage> {
|
||||
|
||||
Reference in New Issue
Block a user