mirror of
https://gitflic.ru/project/openide/openide.git
synced 2026-09-27 10:03:11 +07:00
improve quickfix text
This commit is contained in:
@@ -1970,4 +1970,5 @@ ambiguous.field.access.hides.parameter.problem.descriptor=Field <code>#ref</code
|
||||
ambiguous.field.access.hides.field.problem.descriptor=Field <code>#ref</code> from super class ''{0}'' accessed, while field access from surrounding class might be expected #loc
|
||||
ambiguous.field.access.quickfix=Qualify field access with 'super.'
|
||||
string.builder.replaceable.by.string.quickfix=Replace 'StringBuilder' with 'String'
|
||||
string.buffer.replaceable.by.string.quickfix=Replace 'StringBuffer' with 'String'
|
||||
string.buffer.replaceable.by.string.quickfix=Replace 'StringBuffer' with 'String'
|
||||
add.0.to.ignore.if.annotated.by.list.quickfix=Add ''{0}'' to ''Ignore if annotated by'' list
|
||||
+25
-5
@@ -17,10 +17,14 @@ package com.siyeh.ig.fixes;
|
||||
|
||||
import com.intellij.codeInsight.daemon.QuickFixBundle;
|
||||
import com.intellij.codeInspection.util.SpecialAnnotationsUtil;
|
||||
import com.intellij.psi.PsiAnnotation;
|
||||
import com.intellij.psi.PsiModifierList;
|
||||
import com.intellij.psi.PsiModifierListOwner;
|
||||
import com.intellij.util.Processor;
|
||||
import com.siyeh.InspectionGadgetsBundle;
|
||||
import com.siyeh.ig.DelegatingFix;
|
||||
import com.siyeh.ig.InspectionGadgetsFix;
|
||||
import org.jetbrains.annotations.NonNls;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
@@ -32,7 +36,6 @@ public class AddToIgnoreIfAnnotatedByListQuickFix {
|
||||
|
||||
private AddToIgnoreIfAnnotatedByListQuickFix() {}
|
||||
|
||||
|
||||
public static InspectionGadgetsFix[] build(PsiModifierListOwner modifierListOwner, List<String> configurationList) {
|
||||
final List<InspectionGadgetsFix> fixes = build(modifierListOwner, configurationList, new ArrayList());
|
||||
return fixes.isEmpty() ? InspectionGadgetsFix.EMPTY_ARRAY : fixes.toArray(new InspectionGadgetsFix[fixes.size()]);
|
||||
@@ -41,16 +44,33 @@ public class AddToIgnoreIfAnnotatedByListQuickFix {
|
||||
public static List<InspectionGadgetsFix> build(final PsiModifierListOwner modifierListOwner,
|
||||
final List<String> configurationList,
|
||||
final List<InspectionGadgetsFix> fixes) {
|
||||
SpecialAnnotationsUtil.createAddToSpecialAnnotationFixes(modifierListOwner, new Processor<String>() {
|
||||
processAnnotationTexts(modifierListOwner, new Processor<String>() {
|
||||
@Override
|
||||
public boolean process(String qualifiedName) {
|
||||
public boolean process(String annotationText) {
|
||||
fixes.add(new DelegatingFix(SpecialAnnotationsUtil.createAddToSpecialAnnotationsListQuickFix(
|
||||
"Add '" + qualifiedName + "' to 'ignore if annotated by' list", // add '@asdf' to 'ignore if annotated by' list
|
||||
InspectionGadgetsBundle.message("add.0.to.ignore.if.annotated.by.list.quickfix", annotationText),
|
||||
QuickFixBundle.message("fix.add.special.annotation.family"),
|
||||
configurationList, qualifiedName, modifierListOwner)));
|
||||
configurationList, annotationText, modifierListOwner)));
|
||||
return true;
|
||||
}
|
||||
});
|
||||
return fixes;
|
||||
}
|
||||
|
||||
private static void processAnnotationTexts(final PsiModifierListOwner owner, final Processor<String> processor) {
|
||||
final PsiModifierList modifierList = owner.getModifierList();
|
||||
if (modifierList == null) {
|
||||
return;
|
||||
}
|
||||
final PsiAnnotation[] annotations = modifierList.getAnnotations();
|
||||
for (PsiAnnotation annotation : annotations) {
|
||||
@NonNls final String text = annotation.getText();
|
||||
if (text.startsWith("java.") || text.startsWith("javax.") || text.startsWith("org.jetbrains.")) {
|
||||
continue;
|
||||
}
|
||||
if (!processor.process(text)) {
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user