package net.certware.core.ui; import org.eclipse.swt.widgets.Display; import org.eclipse.ui.forms.FormColors; import org.eclipse.ui.forms.widgets.FormToolkit; import org.eclipse.ui.plugin.AbstractUIPlugin; import org.osgi.framework.BundleActivator; /** * Convenience plugin superclass for UI parts. * @author mrb * @since 1.2.1 */ public class CertWareUIPlugin extends AbstractUIPlugin implements BundleActivator { /** singleton reference */ static private CertWareUIPlugin plugin = null; /** form colors reference */ private FormColors formColors; /** form toolkit reference */ private FormToolkit formToolkit; /** * CertWareUIPlugin saves the plugin reference. */ public CertWareUIPlugin() { super(); plugin = this; } /** * Returns the reference to the plugin. * @return plugin reference */ public static CertWareUIPlugin getDefault() { return plugin; } /** * Returns the shared instance of the form colors. * Creates the resource on first access. * @param display color source display * @return shared colors */ public FormColors getFormColors(Display display) { if (formColors == null) { formColors = new FormColors(display); formColors.markShared(); } return formColors; } /** * Returns the shared instance of the form toolkit. * Also creates the form colors if necessary. * @param display color source display * @return shared toolkit */ public FormToolkit getFormToolkit(Display display) { if ( formToolkit == null ) { formToolkit = new FormToolkit(getFormColors(display)); } return formToolkit; } }