Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -82,8 +82,8 @@ public MoveMembersProcessor(Project project, @Nullable MoveCallback moveCallback

@Nonnull
@Override
protected String getCommandName() {
return myCommandName.get();
protected LocalizeValue getCommandName() {
return myCommandName;
}

private void setOptions(MoveMembersOptions dialog) {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -22,23 +22,27 @@
import consulo.language.editor.refactoring.rename.UnresolvableCollisionUsageInfo;
import consulo.language.editor.refactoring.ui.RefactoringUIUtil;
import consulo.language.psi.PsiElement;
import consulo.localize.LocalizeValue;
import jakarta.annotation.Nonnull;

/**
* @author dsl
*/
public class ClassHidesUnqualifiableClassUsageInfo extends UnresolvableCollisionUsageInfo {
private final PsiClass myHiddenClass;
private final PsiClass myHiddenClass;

public ClassHidesUnqualifiableClassUsageInfo(PsiJavaCodeReferenceElement element, PsiClass renamedClass, PsiClass hiddenClass) {
super(element, renamedClass);
myHiddenClass = hiddenClass;
}
public ClassHidesUnqualifiableClassUsageInfo(PsiJavaCodeReferenceElement element, PsiClass renamedClass, PsiClass hiddenClass) {
super(element, renamedClass);
myHiddenClass = hiddenClass;
}

public String getDescription() {
PsiElement container = ConflictsUtil.getContainer(myHiddenClass);
return RefactoringLocalize.renamedClassWillHide0In1(
RefactoringUIUtil.getDescription(myHiddenClass, false),
RefactoringUIUtil.getDescription(container, false)
).get();
}
@Nonnull
@Override
public LocalizeValue getDescription() {
PsiElement container = ConflictsUtil.getContainer(myHiddenClass);
return RefactoringLocalize.renamedClassWillHide0In1(
RefactoringUIUtil.getDescription(myHiddenClass, false),
RefactoringUIUtil.getDescription(container, false)
);
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -19,63 +19,70 @@
import com.intellij.java.language.psi.JavaDirectoryService;
import com.intellij.java.language.psi.PsiJavaPackage;
import com.intellij.java.language.psi.PsiNameHelper;
import consulo.annotation.access.RequiredReadAction;
import consulo.annotation.component.ExtensionImpl;
import consulo.language.editor.refactoring.BaseRefactoringProcessor;
import consulo.language.editor.refactoring.localize.RefactoringLocalize;
import consulo.language.editor.refactoring.rename.DirectoryAsPackageRenameHandlerBase;
import consulo.language.psi.PsiDirectory;
import consulo.localize.LocalizeValue;
import consulo.project.Project;
import consulo.util.lang.StringUtil;
import consulo.virtualFileSystem.VirtualFile;
import jakarta.annotation.Nonnull;

/**
* @author yole
*/
@ExtensionImpl
public class DirectoryAsPackageRenameHandler extends DirectoryAsPackageRenameHandlerBase<PsiJavaPackage> {
@Override
protected VirtualFile[] occursInPackagePrefixes(PsiJavaPackage aPackage) {
return aPackage.occursInPackagePrefixes();
}

@Override
protected VirtualFile[] occursInPackagePrefixes(PsiJavaPackage aPackage) {
return aPackage.occursInPackagePrefixes();
}
@Override
protected boolean isIdentifier(String name, Project project) {
return PsiNameHelper.getInstance(project).isIdentifier(name);
}

@Override
protected boolean isIdentifier(String name, Project project) {
return PsiNameHelper.getInstance(project).isIdentifier(name);
}
@Override
protected String getQualifiedName(PsiJavaPackage aPackage) {
return aPackage.getQualifiedName();
}

@Override
protected String getQualifiedName(PsiJavaPackage aPackage) {
return aPackage.getQualifiedName();
}
@Override
protected PsiJavaPackage getPackage(PsiDirectory psiDirectory) {
return JavaDirectoryService.getInstance().getPackage(psiDirectory);
}

@Override
protected PsiJavaPackage getPackage(PsiDirectory psiDirectory) {
return JavaDirectoryService.getInstance().getPackage(psiDirectory);
}
@Override
@RequiredReadAction
protected BaseRefactoringProcessor createProcessor(
final String newQName,
Project project,
final PsiDirectory[] dirsToRename,
boolean searchInComments,
boolean searchInNonJavaFiles
) {
return new MoveDirectoryWithClassesProcessor(project, dirsToRename, null, searchInComments, searchInNonJavaFiles, false, null) {
@Override
public TargetDirectoryWrapper getTargetDirectory(PsiDirectory dir) {
return new TargetDirectoryWrapper(dir.getParentDirectory(), StringUtil.getShortName(newQName));
}

@Override
protected BaseRefactoringProcessor createProcessor(final String newQName,
Project project,
final PsiDirectory[] dirsToRename,
boolean searchInComments, boolean searchInNonJavaFiles) {
return new MoveDirectoryWithClassesProcessor(project, dirsToRename, null, searchInComments, searchInNonJavaFiles, false, null) {
@Override
public TargetDirectoryWrapper getTargetDirectory(PsiDirectory dir) {
return new TargetDirectoryWrapper(dir.getParentDirectory(), StringUtil.getShortName(newQName));
}
@Override
protected String getTargetName() {
return newQName;
}

@Override
protected String getTargetName() {
return newQName;
}

@Override
protected String getCommandName() {
return dirsToRename.length == 1
? RefactoringLocalize.renameDirectoryCommandName().get()
: RefactoringLocalize.renameDirectoriesCommandName().get();
}
};
}
@Nonnull
@Override
protected LocalizeValue getCommandName() {
return dirsToRename.length == 1
? RefactoringLocalize.renameDirectoryCommandName()
: RefactoringLocalize.renameDirectoriesCommandName();
}
};
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -13,38 +13,36 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/

/*
* Created by IntelliJ IDEA.
* User: dsl
* Date: 05.06.2002
* Time: 13:38:29
* To change template for new class use
* Code Style | Class Templates options (Tools | IDE Options).
*/
package com.intellij.java.impl.refactoring.rename;

import consulo.annotation.access.RequiredReadAction;
import consulo.language.editor.refactoring.localize.RefactoringLocalize;
import consulo.language.editor.refactoring.rename.UnresolvableCollisionUsageInfo;
import consulo.language.editor.refactoring.ui.RefactoringUIUtil;
import consulo.language.editor.refactoring.util.CommonRefactoringUtil;
import consulo.language.psi.PsiElement;
import consulo.localize.LocalizeValue;
import consulo.usage.UsageViewUtil;
import jakarta.annotation.Nonnull;

/*
* @author dsl
* @since 2002-06-05
*/
public class LocalHidesRenamedLocalUsageInfo extends UnresolvableCollisionUsageInfo {
private final PsiElement myConflictingElement;
private final PsiElement myConflictingElement;

public LocalHidesRenamedLocalUsageInfo(PsiElement element, PsiElement conflictingElement) {
super(element, null);
myConflictingElement = conflictingElement;
}
public LocalHidesRenamedLocalUsageInfo(PsiElement element, PsiElement conflictingElement) {
super(element, null);
myConflictingElement = conflictingElement;
}

public String getDescription() {
PsiElement element = getElement();
String type = element == null ? "element" : UsageViewUtil.getType(element);
String elemDescr = RefactoringUIUtil.getDescription(myConflictingElement, true);
LocalizeValue descr = RefactoringLocalize.thereIsAlreadyA0ItWillConflictWithTheRenamed1(elemDescr, type);
return CommonRefactoringUtil.capitalize(descr.get());
}
@Nonnull
@Override
@RequiredReadAction
public LocalizeValue getDescription() {
PsiElement element = getElement();
String type = element == null ? "element" : UsageViewUtil.getType(element);
String elemDescr = RefactoringUIUtil.getDescription(myConflictingElement, true);
return RefactoringLocalize.thereIsAlreadyA0ItWillConflictWithTheRenamed1(elemDescr, type);
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -196,10 +196,13 @@ public void findCollisions(
for (PsiTypeParameter typeParameter : owner.getTypeParameters()) {
if (Comparing.equal(newName, typeParameter.getName())) {
result.add(new UnresolvableCollisionUsageInfo(typeParam, typeParameter) {
@Nonnull
@Override
public String getDescription() {
return "There is already type parameter in " +
RefactoringUIUtil.getDescription(typeParam, false) + " with name " + newName;
public LocalizeValue getDescription() {
return LocalizeValue.localizeTODO(
"There is already type parameter in " +
RefactoringUIUtil.getDescription(typeParam, false) + " with name " + newName
);
}
});
}
Expand Down Expand Up @@ -231,7 +234,7 @@ else if (aClass instanceof PsiTypeParameter typeParam) {
if (typeParam.getOwner() instanceof PsiClass ownerClass) {
for (PsiClass superClass : ownerClass.getSupers()) {
if (newName.equals(superClass.getName())) {
ClassCollisionsDetector classCollisionsDetector = new ClassCollisionsDetector(aClass);
ClassCollisionsDetector classCollisionsDetector = new ClassCollisionsDetector(typeParam);
for (PsiReference reference : ReferencesSearch.search(superClass, new LocalSearchScope(superClass))) {
classCollisionsDetector.addClassCollisions(reference.getElement(), newName, result);
}
Expand All @@ -244,7 +247,7 @@ else if (aClass instanceof PsiTypeParameter typeParam) {
if (refElement instanceof PsiReferenceExpression refExpr && refExpr.isQualified()) {
return true;
}
MemberHidesOuterMemberUsageInfo info = new MemberHidesOuterMemberUsageInfo(refElement, aClass);
MemberHidesOuterMemberUsageInfo info = new MemberHidesOuterMemberUsageInfo(refElement, typeParam);
result.add(info);
return true;
});
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -94,13 +94,7 @@ else if (usage instanceof MemberHidesOuterMemberUsageInfo) {
outerHides.add(new MemberHidesOuterMemberUsageInfo(element, resolved));
}
else if (!(element instanceof PsiMethod)) {
PsiReference ref;
if (usage instanceof MoveRenameUsageInfo) {
ref = usage.getReference();
}
else {
ref = element.getReference();
}
PsiReference ref = usage instanceof MoveRenameUsageInfo ? usage.getReference() : element.getReference();
if (ref instanceof PsiImportStaticReferenceElement importStaticRef && importStaticRef.multiResolve(false).length > 1) {
continue;
}
Expand Down Expand Up @@ -202,10 +196,13 @@ public void findCollisions(
final PsiMethod methodInBaseClass = containingClass.findMethodBySignature(patternMethod, true);
if (methodInBaseClass != null && methodInBaseClass.getContainingClass() != containingClass && methodInBaseClass.isFinal()) {
result.add(new UnresolvableCollisionUsageInfo(methodInBaseClass, methodToRename) {
@Nonnull
@Override
public String getDescription() {
return "Renaming method will override final " +
"\"" + RefactoringUIUtil.getDescription(methodInBaseClass, true) + "\"";
public LocalizeValue getDescription() {
return LocalizeValue.localizeTODO(
"Renaming method will override final " +
"\"" + RefactoringUIUtil.getDescription(methodInBaseClass, true) + "\""
);
}
});
}
Expand Down Expand Up @@ -240,10 +237,13 @@ private void findHidingMethodWithOtherSignature(final PsiMethod methodToRename,
final PsiMember resolveResultElement = (PsiMember) resolveResult.getElement();
if (resolveResult.isValidResult() && resolveResultElement != null) {
result.add(new UnresolvableCollisionUsageInfo(refExpr, methodToRename) {
@Nonnull
@Override
public String getDescription() {
return "Method call would be linked to " +
"\"" + RefactoringUIUtil.getDescription(resolveResultElement, true) + "\" after rename";
public LocalizeValue getDescription() {
return LocalizeValue.localizeTODO(
"Method call would be linked to " +
"\"" + RefactoringUIUtil.getDescription(resolveResultElement, true) + "\" after rename"
);
}
});
break;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -13,42 +13,35 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/

/*
* Created by IntelliJ IDEA.
* User: dsl
* Date: 05.06.2002
* Time: 12:43:27
* To change template for new class use
* Code Style | Class Templates options (Tools | IDE Options).
*/
package com.intellij.java.impl.refactoring.rename;

import com.intellij.java.language.psi.PsiMethod;
import consulo.annotation.access.RequiredReadAction;
import consulo.language.editor.refactoring.localize.RefactoringLocalize;
import consulo.language.editor.refactoring.rename.UnresolvableCollisionUsageInfo;
import consulo.language.editor.refactoring.ui.RefactoringUIUtil;
import consulo.language.editor.refactoring.util.CommonRefactoringUtil;
import consulo.language.psi.PsiElement;
import consulo.localize.LocalizeValue;
import consulo.usage.UsageViewUtil;
import jakarta.annotation.Nonnull;

/**
* @author dsl
* @since 2002-06-05
*/
public class SubmemberHidesMemberUsageInfo extends UnresolvableCollisionUsageInfo {
public SubmemberHidesMemberUsageInfo(PsiElement element, PsiElement referencedElement) {
super(element, referencedElement);
}
public SubmemberHidesMemberUsageInfo(PsiElement element, PsiElement referencedElement) {
super(element, referencedElement);
}

public String getDescription() {
PsiElement element = getElement();
LocalizeValue descr = element instanceof PsiMethod
? RefactoringLocalize.zeroWillOverrideRenamed1(
RefactoringUIUtil.getDescription(element, true),
UsageViewUtil.getType(element)
)
: RefactoringLocalize.zeroWillHideRenamed1(
RefactoringUIUtil.getDescription(element, true),
UsageViewUtil.getType(element)
);
return CommonRefactoringUtil.capitalize(descr.get());
}
@Nonnull
@Override
@RequiredReadAction
public LocalizeValue getDescription() {
PsiElement element = getElement();
LocalizeValue descr = element instanceof PsiMethod method
? RefactoringLocalize.zeroWillOverrideRenamed1(RefactoringUIUtil.getDescription(element, true), UsageViewUtil.getType(element))
: RefactoringLocalize.zeroWillHideRenamed1(RefactoringUIUtil.getDescription(element, true), UsageViewUtil.getType(element));
return descr.capitalize();
}
}
Loading
Loading