package net.certware.measurement.spm.navigator; import java.net.URL; import net.certware.measurement.spm.navigator.Activator; import org.osgi.framework.Bundle; import org.osgi.framework.BundleActivator; import org.eclipse.core.runtime.FileLocator; import org.eclipse.core.runtime.IPath; import org.eclipse.core.runtime.Path; import org.eclipse.core.runtime.Platform; import org.eclipse.jface.resource.ImageDescriptor; import org.eclipse.jface.resource.ImageRegistry; import org.eclipse.ui.plugin.AbstractUIPlugin; /** * CertWareUIPlugin for navigator plugin. * @author mrb * @since 1.1 */ public class Activator extends AbstractUIPlugin implements BundleActivator { public static String PLUGIN_ID = "net.certware.measurement.spm.navigator"; //$NON-NLS-1$ public static final String NODE_SCRAP_RATIO = "scrap.ratio"; public static final String NODE_REWORK_RATIO = "rework.ratio"; public static final String NODE_MODULARITY = "modularity"; public static final String NODE_ADAPTABILITY = "adaptability"; public static final String NODE_MATURITY = "maturity"; public static final String NODE_MAINTAINABILITY = "maintainability"; public static final String NODE_REWORK_STABILITY = "rework.stability"; public static final String NODE_REWORK_BACKLOG = "rework.backlog"; public static final String NODE_MODULARITY_TREND = "modularity.trend"; public static final String NODE_ADAPTABILITY_TREND = "adaptability.trend"; public static final String NODE_MATURITY_TREND = "maturity.trend"; /** singleton reference */ static private Activator plugin = null; public Activator() { super(); plugin = this; } /** * Returns the reference to the plugin. * @return plugin reference */ public static Activator getDefault() { return plugin; } /** * Load and install an image in the registry. * @param registry plugin registry from activation * @param bundle plugin bundle containing images * @param fileName image file name relative to bundle * @param id key for image retrieval */ private void initializeImage(ImageRegistry registry, Bundle bundle, String fileName, String id) { IPath path = new Path(fileName); URL url = FileLocator.find(bundle,path,null); ImageDescriptor desc = ImageDescriptor.createFromURL(url); registry.put(id, desc); } /** * Image registry loading. */ @Override protected void initializeImageRegistry(ImageRegistry registry) { Bundle bundle = Platform.getBundle(PLUGIN_ID); initializeImage(registry,bundle,"icons/obj16/ratio.gif",NODE_SCRAP_RATIO); initializeImage(registry,bundle,"icons/obj16/ratio.gif",NODE_REWORK_RATIO); initializeImage(registry,bundle,"icons/obj16/ratio.gif",NODE_MODULARITY); initializeImage(registry,bundle,"icons/obj16/ratio.gif",NODE_ADAPTABILITY); initializeImage(registry,bundle,"icons/obj16/ratio.gif",NODE_MATURITY); initializeImage(registry,bundle,"icons/obj16/ratio.gif",NODE_MAINTAINABILITY); initializeImage(registry,bundle,"icons/obj16/ratio.gif",NODE_REWORK_STABILITY); initializeImage(registry,bundle,"icons/obj16/ratio.gif",NODE_REWORK_BACKLOG); initializeImage(registry,bundle,"icons/obj16/trend.gif",NODE_MODULARITY_TREND); initializeImage(registry,bundle,"icons/obj16/trend.gif",NODE_ADAPTABILITY_TREND); initializeImage(registry,bundle,"icons/obj16/trend.gif",NODE_MATURITY_TREND); } }