mirror of
https://gitflic.ru/project/openide/openide.git
synced 2026-09-27 10:03:11 +07:00
get project from context
This commit is contained in:
+12
-1
@@ -22,9 +22,20 @@ public abstract class AbstractCoverageProjectViewNodeDecorator implements Projec
|
||||
myProject = project;
|
||||
}
|
||||
|
||||
/**
|
||||
* @deprecated Use {@link #getCoverageDataManager(Project)}
|
||||
* @return
|
||||
*/
|
||||
@Nullable
|
||||
@Deprecated
|
||||
protected final CoverageDataManager getCoverageDataManager() {
|
||||
return CoverageDataManager.getInstance(myProject);
|
||||
return getCoverageDataManager(myProject);
|
||||
}
|
||||
|
||||
@SuppressWarnings("MethodMayBeStatic")
|
||||
@Nullable
|
||||
protected final CoverageDataManager getCoverageDataManager(@NotNull Project project) {
|
||||
return CoverageDataManager.getInstance(project);
|
||||
}
|
||||
|
||||
protected static void appendCoverageInfo(ColoredTreeCellRenderer cellRenderer, String coverageInfo) {
|
||||
|
||||
+16
-7
@@ -22,16 +22,20 @@ final class CoverageProjectViewDirectoryNodeDecorator extends AbstractCoveragePr
|
||||
|
||||
@Override
|
||||
public void decorate(PackageDependenciesNode node, ColoredTreeCellRenderer cellRenderer) {
|
||||
final CoverageDataManager manager = getCoverageDataManager();
|
||||
if (manager == null) return;
|
||||
|
||||
final PsiElement element = node.getPsiElement();
|
||||
if (element == null || !element.isValid()) {
|
||||
return;
|
||||
}
|
||||
|
||||
Project project = element.getProject();
|
||||
|
||||
final CoverageDataManager manager = getCoverageDataManager(project);
|
||||
if (manager == null) {
|
||||
return;
|
||||
}
|
||||
|
||||
final CoverageSuitesBundle currentSuite = manager.getCurrentSuitesBundle();
|
||||
final CoverageAnnotator coverageAnnotator = currentSuite != null ? currentSuite.getAnnotator(element.getProject()) : null;
|
||||
final CoverageAnnotator coverageAnnotator = currentSuite != null ? currentSuite.getAnnotator(project) : null;
|
||||
if (coverageAnnotator == null) {
|
||||
// N/A
|
||||
return;
|
||||
@@ -51,11 +55,16 @@ final class CoverageProjectViewDirectoryNodeDecorator extends AbstractCoveragePr
|
||||
|
||||
@Override
|
||||
public void decorate(ProjectViewNode node, PresentationData data) {
|
||||
final CoverageDataManager manager = getCoverageDataManager();
|
||||
Project project = node.getProject();
|
||||
if (project == null) {
|
||||
return;
|
||||
}
|
||||
|
||||
final CoverageDataManager manager = getCoverageDataManager(project);
|
||||
if (manager == null) return;
|
||||
final CoverageSuitesBundle currentSuite = manager.getCurrentSuitesBundle();
|
||||
Project project = node.getProject();
|
||||
final CoverageAnnotator coverageAnnotator = currentSuite == null || project == null ? null : currentSuite.getAnnotator(project);
|
||||
|
||||
final CoverageAnnotator coverageAnnotator = currentSuite == null ? null : currentSuite.getAnnotator(project);
|
||||
if (coverageAnnotator == null) {
|
||||
// N/A
|
||||
return;
|
||||
|
||||
+19
-18
@@ -23,39 +23,35 @@ final class CoverageProjectViewClassNodeDecorator extends AbstractCoverageProjec
|
||||
|
||||
@Override
|
||||
public void decorate(PackageDependenciesNode node, ColoredTreeCellRenderer cellRenderer) {
|
||||
final CoverageDataManager dataManager = getCoverageDataManager();
|
||||
if (dataManager == null) return;
|
||||
|
||||
final PsiElement element = node.getPsiElement();
|
||||
if (element == null || !element.isValid()) {
|
||||
if (element == null || !element.isValid() || !(element instanceof PsiClass)) {
|
||||
return;
|
||||
}
|
||||
|
||||
final CoverageSuitesBundle currentSuite = dataManager.getCurrentSuitesBundle();
|
||||
final Project project = element.getProject();
|
||||
|
||||
final JavaCoverageAnnotator javaCovAnnotator = getCovAnnotator(currentSuite, project);
|
||||
final CoverageDataManager dataManager = getCoverageDataManager(project);
|
||||
final JavaCoverageAnnotator javaCovAnnotator = getCovAnnotator(dataManager, project);
|
||||
// This decorator is applicable only to JavaCoverageAnnotator
|
||||
if (javaCovAnnotator == null) {
|
||||
return;
|
||||
}
|
||||
|
||||
if (element instanceof PsiClass) {
|
||||
final String qName = ((PsiClass)element).getQualifiedName();
|
||||
if (qName != null) {
|
||||
appendCoverageInfo(cellRenderer, javaCovAnnotator.getClassCoverageInformationString(qName, dataManager));
|
||||
}
|
||||
final String qName = ((PsiClass)element).getQualifiedName();
|
||||
if (qName != null) {
|
||||
appendCoverageInfo(cellRenderer, javaCovAnnotator.getClassCoverageInformationString(qName, dataManager));
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public void decorate(ProjectViewNode node, PresentationData data) {
|
||||
final CoverageDataManager coverageDataManager = getCoverageDataManager();
|
||||
if (coverageDataManager == null) return;
|
||||
final CoverageSuitesBundle currentSuite = coverageDataManager.getCurrentSuitesBundle();
|
||||
|
||||
final Project project = node.getProject();
|
||||
final JavaCoverageAnnotator javaCovAnnotator = getCovAnnotator(currentSuite, project);
|
||||
if (project == null) {
|
||||
return;
|
||||
}
|
||||
|
||||
final CoverageDataManager coverageDataManager = getCoverageDataManager(project);
|
||||
final JavaCoverageAnnotator javaCovAnnotator = getCovAnnotator(coverageDataManager, project);
|
||||
// This decorator is applicable only to JavaCoverageAnnotator
|
||||
if (javaCovAnnotator == null) {
|
||||
return;
|
||||
@@ -78,7 +74,7 @@ final class CoverageProjectViewClassNodeDecorator extends AbstractCoverageProjec
|
||||
}
|
||||
|
||||
if (element instanceof PsiClass) {
|
||||
final GlobalSearchScope searchScope = currentSuite.getSearchScope(project);
|
||||
final GlobalSearchScope searchScope = coverageDataManager.getCurrentSuitesBundle().getSearchScope(project);
|
||||
final VirtualFile vFile = PsiUtilCore.getVirtualFile(element);
|
||||
if (vFile != null && searchScope.contains(vFile)) {
|
||||
final String qName = ((PsiClass)element).getQualifiedName();
|
||||
@@ -90,7 +86,12 @@ final class CoverageProjectViewClassNodeDecorator extends AbstractCoverageProjec
|
||||
}
|
||||
|
||||
@Nullable
|
||||
private static JavaCoverageAnnotator getCovAnnotator(final CoverageSuitesBundle currentSuite, Project project) {
|
||||
private static JavaCoverageAnnotator getCovAnnotator(@Nullable CoverageDataManager dataManager, @NotNull Project project) {
|
||||
if (dataManager == null) {
|
||||
return null;
|
||||
}
|
||||
|
||||
CoverageSuitesBundle currentSuite = dataManager.getCurrentSuitesBundle();
|
||||
if (currentSuite != null) {
|
||||
final CoverageAnnotator coverageAnnotator = currentSuite.getAnnotator(project);
|
||||
if (coverageAnnotator instanceof JavaCoverageAnnotator) {
|
||||
|
||||
Reference in New Issue
Block a user