KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > de > uka > ipd > coverage > plugin > ui > CoverageMarkerImageProvider


1 /*
2  * Created on Apr 18, 2005
3  *
4  * written by Matthias Kempka
5  */

6 package de.uka.ipd.coverage.plugin.ui;
7
8 import org.eclipse.core.resources.IMarker;
9 import org.eclipse.core.runtime.CoreException;
10 import org.eclipse.ui.internal.ide.IMarkerImageProvider;
11
12 import de.uka.ipd.coverage.recording.CoverageState;
13 import de.uka.ipd.coverage.utils.Logger;
14
15 /**
16  * Created on Apr 18, 2005
17  * @author Matthias Kempka
18  */

19 public class CoverageMarkerImageProvider implements IMarkerImageProvider {
20
21     public final static String JavaDoc ICON_PATH = "icons/markers/"; //$NON-NLS-1$
22
public static final String JavaDoc FULL_COVERAGE_BASE = "good"; //$NON-NLS-1$
23
public static final String JavaDoc PARTIAL_COVERAGE_BASE = "partial"; //$NON-NLS-1$
24
public static final String JavaDoc NO_COVERAGE_BASE = "none"; //$NON-NLS-1$
25
public static final String JavaDoc USE_COVERED_BASE = "use_covered"; //$NON-NLS-1$
26
public static final String JavaDoc USE_NOT_COVERED_BASE = "use_not_covered"; //$NON-NLS-1$
27
public static final String JavaDoc EXTENSION = ".png"; //$NON-NLS-1$
28

29     private static final Boolean JavaDoc FALSE = new Boolean JavaDoc(false);
30     public String JavaDoc getImagePath(IMarker marker) {
31         try {
32             if (CoverageMarkerManager.TYPE_COVERAGEMARKER.equals(marker.getType())) {
33                 if (FALSE.equals(marker.getAttribute(CoverageMarkerManager.ATT_VISIBLE))) {
34                     return null;
35                 }
36                 if (CoverageState.FULL_COVERAGE.toString().equals(
37                     marker.getAttribute("coverage"))) { //$NON-NLS-1$
38
return ICON_PATH + FULL_COVERAGE_BASE + EXTENSION;
39                 } else if (CoverageState.PARTIAL_COVERAGE.toString().equals(
40                     marker.getAttribute("coverage"))) { //$NON-NLS-1$
41
return ICON_PATH + PARTIAL_COVERAGE_BASE + EXTENSION;
42                 } else if (CoverageState.NO_COVERAGE.toString().equals(
43                     marker.getAttribute("coverage"))) { //$NON-NLS-1$
44
return ICON_PATH + NO_COVERAGE_BASE + EXTENSION;
45                 }
46             }
47             
48             if (CoverageMarkerManager.TYPE_USESMARKER.equals(marker.getType())) {
49                 if (CoverageState.FULL_COVERAGE.toString().equals(
50                     marker.getAttribute("coverage"))) { //$NON-NLS-1$
51
return ICON_PATH + USE_COVERED_BASE + EXTENSION;
52                 } else if (CoverageState.NO_COVERAGE.toString().equals(
53                     marker.getAttribute("coverage"))) { //$NON-NLS-1$
54
return ICON_PATH + USE_NOT_COVERED_BASE + EXTENSION;
55                 }
56             }
57         } catch (CoreException e) {
58             new Logger(this).log(e);
59             e.printStackTrace();
60         }
61         return null;
62     }
63
64 }
65
Popular Tags