summaryrefslogtreecommitdiff
path: root/platform/analysis-api
diff options
context:
space:
mode:
Diffstat (limited to 'platform/analysis-api')
-rw-r--r--platform/analysis-api/src/com/intellij/codeInspection/ex/ScopeToolState.java9
-rw-r--r--platform/analysis-api/src/com/intellij/codeInspection/reference/RefManager.java1
-rw-r--r--platform/analysis-api/src/com/intellij/codeInspection/ui/OptionAccessor.java10
-rw-r--r--platform/analysis-api/src/com/intellij/problems/WolfTheProblemSolver.java1
-rw-r--r--platform/analysis-api/src/com/intellij/psi/search/GlobalSearchScopesCore.java8
-rw-r--r--platform/analysis-api/src/com/intellij/util/ui/CheckBox.java40
6 files changed, 16 insertions, 53 deletions
diff --git a/platform/analysis-api/src/com/intellij/codeInspection/ex/ScopeToolState.java b/platform/analysis-api/src/com/intellij/codeInspection/ex/ScopeToolState.java
index 3a75f1738ead..81e340679a50 100644
--- a/platform/analysis-api/src/com/intellij/codeInspection/ex/ScopeToolState.java
+++ b/platform/analysis-api/src/com/intellij/codeInspection/ex/ScopeToolState.java
@@ -42,6 +42,7 @@ public class ScopeToolState {
private boolean myEnabled;
private HighlightDisplayLevel myLevel;
+ private boolean myAdditionalConfigPanelCreated = false;
private JComponent myAdditionalConfigPanel;
private static final Logger LOG = Logger.getInstance("#" + ScopeToolState.class.getName());
@@ -98,13 +99,11 @@ public class ScopeToolState {
myLevel = level;
}
- @NotNull
+ @Nullable
public JComponent getAdditionalConfigPanel() {
- if (myAdditionalConfigPanel == null) {
+ if (!myAdditionalConfigPanelCreated) {
myAdditionalConfigPanel = myToolWrapper.getTool().createOptionsPanel();
- if (myAdditionalConfigPanel == null){
- myAdditionalConfigPanel = new JPanel();
- }
+ myAdditionalConfigPanelCreated = true;
}
return myAdditionalConfigPanel;
}
diff --git a/platform/analysis-api/src/com/intellij/codeInspection/reference/RefManager.java b/platform/analysis-api/src/com/intellij/codeInspection/reference/RefManager.java
index 6f0a3c24e523..b46352670030 100644
--- a/platform/analysis-api/src/com/intellij/codeInspection/reference/RefManager.java
+++ b/platform/analysis-api/src/com/intellij/codeInspection/reference/RefManager.java
@@ -47,6 +47,7 @@ public abstract class RefManager {
*
* @return the analysis scope.
*/
+ @Nullable
public abstract AnalysisScope getScope();
/**
diff --git a/platform/analysis-api/src/com/intellij/codeInspection/ui/OptionAccessor.java b/platform/analysis-api/src/com/intellij/codeInspection/ui/OptionAccessor.java
index 0c32f60dadd0..5e23b224920f 100644
--- a/platform/analysis-api/src/com/intellij/codeInspection/ui/OptionAccessor.java
+++ b/platform/analysis-api/src/com/intellij/codeInspection/ui/OptionAccessor.java
@@ -43,15 +43,7 @@ public interface OptionAccessor {
@Override
public void setOption(final String optionName, boolean optionValue) {
- try {
- ReflectionUtil.findField(myInspection.getClass(), boolean.class, optionName).setBoolean(myInspection, optionValue);
- }
- catch (IllegalAccessException e) {
- LOG.warn(e);
- }
- catch (NoSuchFieldException e) {
- LOG.warn(e);
- }
+ ReflectionUtil.setField(myInspection.getClass(), myInspection, boolean.class, optionName, optionValue);
}
}
}
diff --git a/platform/analysis-api/src/com/intellij/problems/WolfTheProblemSolver.java b/platform/analysis-api/src/com/intellij/problems/WolfTheProblemSolver.java
index c4580e082fb4..cc72d479daec 100644
--- a/platform/analysis-api/src/com/intellij/problems/WolfTheProblemSolver.java
+++ b/platform/analysis-api/src/com/intellij/problems/WolfTheProblemSolver.java
@@ -40,6 +40,7 @@ public abstract class WolfTheProblemSolver {
public abstract boolean isProblemFile(VirtualFile virtualFile);
public abstract void weHaveGotProblems(@NotNull VirtualFile virtualFile, @NotNull List<Problem> problems);
+ public abstract void weHaveGotNonIgnorableProblems(@NotNull VirtualFile virtualFile, @NotNull List<Problem> problems);
public abstract void clearProblems(@NotNull VirtualFile virtualFile);
public abstract boolean hasProblemFilesBeneath(@NotNull Condition<VirtualFile> condition);
diff --git a/platform/analysis-api/src/com/intellij/psi/search/GlobalSearchScopesCore.java b/platform/analysis-api/src/com/intellij/psi/search/GlobalSearchScopesCore.java
index 647cd728c6ac..76db4a7cc765 100644
--- a/platform/analysis-api/src/com/intellij/psi/search/GlobalSearchScopesCore.java
+++ b/platform/analysis-api/src/com/intellij/psi/search/GlobalSearchScopesCore.java
@@ -189,10 +189,10 @@ public class GlobalSearchScopesCore {
private final VirtualFile myDirectory;
private final boolean myWithSubdirectories;
- private DirectoryScope(@NotNull PsiDirectory directory, final boolean withSubdirectories) {
- super(directory.getProject());
+ private DirectoryScope(@NotNull PsiDirectory psiDirectory, final boolean withSubdirectories) {
+ super(psiDirectory.getProject());
myWithSubdirectories = withSubdirectories;
- myDirectory = directory.getVirtualFile();
+ myDirectory = psiDirectory.getVirtualFile();
}
private DirectoryScope(@NotNull Project project, @NotNull VirtualFile directory, final boolean withSubdirectories) {
@@ -221,6 +221,7 @@ public class GlobalSearchScopesCore {
return false;
}
+ @Override
public String toString() {
//noinspection HardCodedStringLiteral
return "directory scope: " + myDirectory + "; withSubdirs:"+myWithSubdirectories;
@@ -296,6 +297,7 @@ public class GlobalSearchScopesCore {
return false;
}
+ @Override
public String toString() {
//noinspection HardCodedStringLiteral
return "Directories scope: " + Arrays.asList(myDirectories);
diff --git a/platform/analysis-api/src/com/intellij/util/ui/CheckBox.java b/platform/analysis-api/src/com/intellij/util/ui/CheckBox.java
index d6e4101c6086..d00655a66768 100644
--- a/platform/analysis-api/src/com/intellij/util/ui/CheckBox.java
+++ b/platform/analysis-api/src/com/intellij/util/ui/CheckBox.java
@@ -16,14 +16,13 @@
package com.intellij.util.ui;
import com.intellij.codeInspection.InspectionProfileEntry;
+import com.intellij.util.ReflectionUtil;
import org.jetbrains.annotations.NonNls;
import org.jetbrains.annotations.NotNull;
-import javax.swing.ButtonModel;
-import javax.swing.JCheckBox;
+import javax.swing.*;
import javax.swing.event.ChangeEvent;
import javax.swing.event.ChangeListener;
-import java.lang.reflect.Field;
public class CheckBox extends JCheckBox {
@@ -39,30 +38,8 @@ public class CheckBox extends JCheckBox {
private static boolean getPropertyValue(InspectionProfileEntry owner,
String property) {
- try {
- final Class<? extends InspectionProfileEntry> aClass = owner.getClass();
- final Field field = getField(aClass, property);
- field.setAccessible(true);
- return field.getBoolean(owner);
- } catch (IllegalAccessException ignore) {
- return false;
- } catch (NoSuchFieldException ignore) {
- return false;
- }
- }
-
- static Field getField(Class clazz, String fieldName) throws NoSuchFieldException {
- try {
- return clazz.getDeclaredField(fieldName);
- } catch (NoSuchFieldException e) {
- final Class superClass = clazz.getSuperclass();
- if (superClass == null) {
- throw e;
- } else {
- return getField(superClass, fieldName);
- }
+ return ReflectionUtil.getField(owner.getClass(), owner, boolean.class, property);
}
- }
private static class SingleCheckboxChangeListener
implements ChangeListener {
@@ -85,16 +62,7 @@ public class CheckBox extends JCheckBox {
private static void setPropertyValue(InspectionProfileEntry owner,
String property,
boolean selected) {
- try {
- final Class<? extends InspectionProfileEntry> aClass = owner.getClass();
- final Field field = getField(aClass, property);
- field.setAccessible(true);
- field.setBoolean(owner, selected);
- } catch (IllegalAccessException ignore) {
- // do nothing
- } catch (NoSuchFieldException ignore) {
- // do nothing
- }
+ ReflectionUtil.setField(owner.getClass(), owner, boolean.class, property, selected);
}
}
} \ No newline at end of file