From 3bceaf6856d88d6d1e02c55173eca6057fb9bd8b Mon Sep 17 00:00:00 2001 From: Alena Laskavaia Date: Tue, 29 Mar 2011 18:17:58 +0000 Subject: [PATCH] added a method to reurn problem instance by marker --- .../codan/ui/AbstractCodanCMarkerResolution.java | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/codan/org.eclipse.cdt.codan.ui.cxx/src/org/eclipse/cdt/codan/ui/AbstractCodanCMarkerResolution.java b/codan/org.eclipse.cdt.codan.ui.cxx/src/org/eclipse/cdt/codan/ui/AbstractCodanCMarkerResolution.java index 12c7e93c943..735537191ed 100644 --- a/codan/org.eclipse.cdt.codan.ui.cxx/src/org/eclipse/cdt/codan/ui/AbstractCodanCMarkerResolution.java +++ b/codan/org.eclipse.cdt.codan.ui.cxx/src/org/eclipse/cdt/codan/ui/AbstractCodanCMarkerResolution.java @@ -11,6 +11,9 @@ *******************************************************************************/ package org.eclipse.cdt.codan.ui; +import org.eclipse.cdt.codan.core.CodanRuntime; +import org.eclipse.cdt.codan.core.model.IProblem; +import org.eclipse.cdt.codan.core.model.IProblemProfile; import org.eclipse.cdt.codan.internal.core.model.CodanProblemMarker; import org.eclipse.cdt.codan.internal.ui.CodanUIActivator; import org.eclipse.cdt.core.CCorePlugin; @@ -235,6 +238,16 @@ public abstract class AbstractCodanCMarkerResolution implements ICodanMarkerReso return CodanProblemMarker.getProblemId(marker); } + public IProblem getProblem(IMarker marker) { + IPath path = marker.getResource().getFullPath(); + IFile file = ResourcesPlugin.getWorkspace().getRoot().getFile(path); + if (file == null) + return null; + IProblemProfile profile = CodanRuntime.getInstance().getCheckersRegistry().getResourceProfile(file); + String id = getProblemId(marker); + return profile.findProblem(id); + } + /** * @param marker * @return