// Copyright 2012 Jeeeyul Lee, Seoul, Korea // https://github.com/jeeeyul/pde-tools // // This module is multi-licensed and may be used under the terms // of any of the following licenses: // // EPL, Eclipse Public License, V1.0 or later, http://www.eclipse.org/legal // LGPL, GNU Lesser General Public License, V2.1 or later, http://www.gnu.org/licenses/lgpl.html // GPL, GNU General Public License, V2 or later, http://www.gnu.org/licenses/gpl.html // AL, Apache License, V2.0 or later, http://www.apache.org/licenses // BSD, BSD License, http://www.opensource.org/licenses/bsd-license.php // MIT, MIT License, http://www.opensource.org/licenses/MIT // // Please contact the author if you need another license. // This module is provided "as is", without warranties of any kind. package net.jeeeyul.eclipse.themes; import java.io.File; import java.net.URL; import org.eclipse.jface.resource.ImageDescriptor; import org.eclipse.jface.resource.ImageRegistry; import org.eclipse.swt.graphics.Image; import org.eclipse.swt.widgets.Display; import org.eclipse.ui.ISharedImages; import org.eclipse.ui.PlatformUI; import org.jboss.tools.central.themes.Activator; import org.osgi.framework.Bundle; /* * Generated by PDE Tools. */ public class SharedImages{ /** * <img src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAoAAAAKCAYAAACNMs+9AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAAadEVYdFNvZnR3YXJlAFBhaW50Lk5FVCB2My41LjEwMPRyoQAAAHlJREFUKFNjONvaKgPE9lAsygAFQL4okrgMA4hzID39//7k5P9Atj8Q80OxP0gMJAdSA1YIEtgZFvZ/b0ICSDAehEFskBjUALBCkBX+MIldkZH/QRhJI8gWiJOgVsWDFGwPCABjEBtqOj/M3cQpJNpqUjxDdPAQFeAABZ7MoR/tUJQAAAAASUVORK5CYII="> * Image constant for icons/close-active.png */ public static final String CLOSE_ACTIVE = "icons/close-active.png"; /** * <img src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAoAAAAKCAYAAACNMs+9AAAABGdBTUEAALGPC/xhBQAAAAlwSFlzAAAOvwAADr8BOAVTJAAAABp0RVh0U29mdHdhcmUAUGFpbnQuTkVUIHYzLjUuMTAw9HKhAAAAZ0lEQVQoU2NgIAVUVlYmAvF1INaA6QOxgfgaEGfAzYIqmgWikRSCNILE+pAVgnSDBMGKkTSC+HBbkDXAFINpnM5HMhW7QqjDYW5CNhXFgwzIbkLyDNzNyG4rgFqLHDySULFoUoKaAQCCfF8Q7f0kfgAAAABJRU5ErkJggg=="> * Image constant for icons/close-normal.png */ public static final String CLOSE_NORMAL = "icons/close-normal.png"; private static final ImageRegistry REGISTRY = new ImageRegistry(Display.getDefault()); public static Image getImage(String key){ Image result = REGISTRY.get(key); if(result == null){ result = loadImage(key); REGISTRY.put(key, result); } return result; } public static ImageDescriptor getImageDescriptor(String key){ ImageDescriptor result = REGISTRY.getDescriptor(key); if(result == null){ result = loadImageDescriptor(key); REGISTRY.put(key, result); } return result; } private static Image loadImage(String key) { try { Bundle bundle = Activator.getDefault().getBundle(); URL resource = null; if(bundle != null){ resource = bundle.getResource(key); }else{ resource = new File(key).toURI().toURL(); } Image image = new Image(null, resource.openStream()); return image; } catch (Exception e) { e.printStackTrace(); return PlatformUI.getWorkbench().getSharedImages().getImage(ISharedImages.IMG_OBJS_ERROR_TSK); } } private static ImageDescriptor loadImageDescriptor(String key) { try { Bundle bundle = Activator.getDefault().getBundle(); URL resource = null; if(bundle != null){ resource = bundle.getResource(key); }else{ resource = new File(key).toURI().toURL(); } ImageDescriptor descriptor = ImageDescriptor.createFromURL(resource); return descriptor; } catch (Exception e) { e.printStackTrace(); return PlatformUI.getWorkbench().getSharedImages().getImageDescriptor(ISharedImages.IMG_OBJS_ERROR_TSK); } } }