/** * This file is part of Archiv-Editor. * * The software Archiv-Editor serves as a client user interface for working with * the Person Data Repository. See: pdr.bbaw.de * * The software Archiv-Editor was developed at the Berlin-Brandenburg Academy * of Sciences and Humanities, Jägerstr. 22/23, D-10117 Berlin. * www.bbaw.de * * Copyright (C) 2010-2013 Berlin-Brandenburg Academy * of Sciences and Humanities * * The software Archiv-Editor was developed by @author: Christoph Plutte. * * Archiv-Editor is free software: you can redistribute it and/or modify * it under the terms of the GNU Lesser General Public License as published by * the Free Software Foundation, either version 3 of the License, or * (at your option) any later version. * * Archiv-Editor is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU Lesser General Public License for more details. * * You should have received a copy of the GNU Lesser General Public License * along with Archiv-Editor. * If not, see <http://www.gnu.org/licenses/lgpl-3.0.html>. */ package org.bbaw.pdr.ae.collections.internal; import org.bbaw.pdr.ae.collections.icons.IconsInternal; import org.eclipse.jface.resource.ImageDescriptor; import org.eclipse.jface.resource.ImageRegistry; import org.eclipse.ui.plugin.AbstractUIPlugin; import org.osgi.framework.BundleContext; /** * The activator class controls the plug-in life cycle. */ public class Activator extends AbstractUIPlugin { /** The plug-in ID.*/ public static final String PLUGIN_ID = "org.bbaw.pdr.ae.collections"; //$NON-NLS-1$ /** private image registry initialiazation. */ private boolean _imageRegistryInitialised = false; /** The shared instance.*/ private static Activator plugin; /** * The constructor. */ public Activator() { } /** start bundle. * @param context bundl context. * @throws Exception exc. * @see org.eclipse.ui.plugin.AbstractUIPlugin#start(org.osgi.framework.BundleContext) */ public final void start(final BundleContext context) throws Exception { super.start(context); plugin = this; } /** stop bundle. * @param context bundle context. * @throws Exception exc. * @see org.eclipse.ui.plugin.AbstractUIPlugin#stop(org.osgi.framework.BundleContext) */ public final void stop(final BundleContext context) throws Exception { if (_imageRegistryInitialised) { getImageRegistry().dispose(); _imageRegistryInitialised = false; } plugin = null; super.stop(context); } /** * Returns the shared instance. * * @return the shared instance */ public static Activator getDefault() { return plugin; } /** * Returns an image descriptor for the image file at the given * plug-in relative path. * * @param path the path. * @return the image descriptor */ public static ImageDescriptor getImageDescriptor(final String path) { return imageDescriptorFromPlugin(PLUGIN_ID, path); } /** * Returns an image descriptor for the image file at the given * plug-in relative path. * * @param reg imageregistry. */ protected final void initializeImageRegistry(final ImageRegistry reg) { reg.put(IconsInternal.CLIPBOARD, ImageDescriptor.createFromFile(IconsInternal.class, IconsInternal.CLIPBOARD)); reg.put(IconsInternal.CLIPBOARD_PLUS , ImageDescriptor.createFromFile(IconsInternal.class, IconsInternal.CLIPBOARD_PLUS)); reg.put(IconsInternal.CLIPBOARD_MINUS, ImageDescriptor.createFromFile(IconsInternal.class, IconsInternal.CLIPBOARD_MINUS)); reg.put(IconsInternal.CLIPBOARD_SAVE, ImageDescriptor.createFromFile(IconsInternal.class, IconsInternal.CLIPBOARD_SAVE)); _imageRegistryInitialised = true; } }