From d954b76a11b1cf4d124dbe12d14bdfdfdb75e815 Mon Sep 17 00:00:00 2001 From: Tagir Valeev Date: Mon, 13 Mar 2023 15:35:21 +0100 Subject: [PATCH] [java-inspections] Field may be static: configure annotations button GitOrigin-RevId: 1d0a97a36bd9d05e62ba04bff5c5f76ea20ca1db --- .../ig/performance/FieldMayBeStaticInspection.java | 10 ++++++++++ .../src/inspectionDescriptions/FieldMayBeStatic.html | 4 ++++ 2 files changed, 14 insertions(+) rename plugins/InspectionGadgets/{InspectionGadgetsAnalysis => }/src/com/siyeh/ig/performance/FieldMayBeStaticInspection.java (89%) diff --git a/plugins/InspectionGadgets/InspectionGadgetsAnalysis/src/com/siyeh/ig/performance/FieldMayBeStaticInspection.java b/plugins/InspectionGadgets/src/com/siyeh/ig/performance/FieldMayBeStaticInspection.java similarity index 89% rename from plugins/InspectionGadgets/InspectionGadgetsAnalysis/src/com/siyeh/ig/performance/FieldMayBeStaticInspection.java rename to plugins/InspectionGadgets/src/com/siyeh/ig/performance/FieldMayBeStaticInspection.java index 946fe64993f6..c08155d8eff0 100644 --- a/plugins/InspectionGadgets/InspectionGadgetsAnalysis/src/com/siyeh/ig/performance/FieldMayBeStaticInspection.java +++ b/plugins/InspectionGadgets/src/com/siyeh/ig/performance/FieldMayBeStaticInspection.java @@ -17,6 +17,9 @@ package com.siyeh.ig.performance; import com.intellij.codeInsight.daemon.impl.UnusedSymbolUtil; import com.intellij.codeInsight.daemon.impl.analysis.HighlightingFeature; +import com.intellij.codeInsight.options.JavaInspectionButtons; +import com.intellij.codeInsight.options.JavaInspectionControls; +import com.intellij.codeInspection.options.OptPane; import com.intellij.psi.*; import com.intellij.psi.util.PsiUtil; import com.siyeh.InspectionGadgetsBundle; @@ -28,6 +31,8 @@ import com.siyeh.ig.psiutils.ClassUtils; import com.siyeh.ig.psiutils.SideEffectChecker; import org.jetbrains.annotations.NotNull; +import static com.intellij.codeInspection.options.OptPane.pane; + public class FieldMayBeStaticInspection extends BaseInspection { @Override @@ -42,6 +47,11 @@ public class FieldMayBeStaticInspection extends BaseInspection { "field.may.be.static.problem.descriptor"); } + @Override + public @NotNull OptPane getOptionsPane() { + return pane(JavaInspectionControls.button(JavaInspectionButtons.ButtonKind.IMPLICIT_WRITE_ANNOTATIONS)); + } + @Override public InspectionGadgetsFix buildFix(Object... infos) { return new ChangeModifierFix(PsiModifier.STATIC); diff --git a/plugins/InspectionGadgets/src/inspectionDescriptions/FieldMayBeStatic.html b/plugins/InspectionGadgets/src/inspectionDescriptions/FieldMayBeStatic.html index 7fee6cee5fd9..0d1b2235ffe1 100644 --- a/plugins/InspectionGadgets/src/inspectionDescriptions/FieldMayBeStatic.html +++ b/plugins/InspectionGadgets/src/inspectionDescriptions/FieldMayBeStatic.html @@ -7,5 +7,9 @@ can be static if it is declared final and initialized with a consta public final String str = "sample"; +

+ The inspection does not report final fields that can be implicitly written. Use the "Annotations" button to modify + the list of annotations that assume implicit field write. +

\ No newline at end of file