mirror of
https://gitflic.ru/project/openide/openide.git
synced 2026-09-18 09:34:34 +07:00
introduce parameter object: add setters/getters, fix visibility for existing class
This commit is contained in:
@@ -28,6 +28,7 @@ import com.intellij.psi.*;
|
||||
import com.intellij.psi.util.InheritanceUtil;
|
||||
import com.intellij.psi.util.PsiTreeUtil;
|
||||
import com.intellij.psi.util.PsiUtil;
|
||||
import com.intellij.usageView.UsageInfo;
|
||||
import org.jetbrains.annotations.Nls;
|
||||
import org.jetbrains.annotations.NonNls;
|
||||
|
||||
@@ -121,4 +122,25 @@ public class VisibilityUtil {
|
||||
public static String toPresentableText(@Modifier String modifier) {
|
||||
return PsiBundle.visibilityPresentation(modifier);
|
||||
}
|
||||
|
||||
public static void fixVisibility(UsageInfo[] usageInfos, PsiMember member, final String newVisibility) {
|
||||
if (newVisibility == null) return;
|
||||
if (ESCALATE_VISIBILITY.equals(newVisibility)) {
|
||||
for (UsageInfo info : usageInfos) {
|
||||
final PsiElement element = info.getElement();
|
||||
if (element != null) {
|
||||
escalateVisibility(member, element);
|
||||
}
|
||||
}
|
||||
} else {
|
||||
setVisibility(member.getModifierList(), newVisibility);
|
||||
}
|
||||
}
|
||||
|
||||
public static void setVisibility(PsiModifierList modifierList, @Modifier String newVisibility) throws IncorrectOperationException {
|
||||
modifierList.setModifierProperty(PsiModifier.PRIVATE, false);
|
||||
modifierList.setModifierProperty(PsiModifier.PUBLIC, false);
|
||||
modifierList.setModifierProperty(PsiModifier.PROTECTED, false);
|
||||
modifierList.setModifierProperty(newVisibility, true);
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user