1 /******************************************************************************* 2 * Copyright (c) 2000, 2015 IBM Corporation and others. 3 * 4 * This program and the accompanying materials 5 * are made available under the terms of the Eclipse Public License 2.0 6 * which accompanies this distribution, and is available at 7 * https://www.eclipse.org/legal/epl-2.0/ 8 * 9 * SPDX-License-Identifier: EPL-2.0 10 * 11 * Contributors: 12 * IBM Corporation - initial API and implementation 13 *******************************************************************************/ 14 package org.eclipse.pde.internal.runtime; 15 16 import java.net.URL; 17 import org.eclipse.core.runtime.FileLocator; 18 import org.eclipse.core.runtime.Path; 19 import org.eclipse.jface.resource.ImageDescriptor; 20 import org.eclipse.jface.resource.ImageRegistry; 21 import org.eclipse.swt.graphics.Image; 22 23 public class PDERuntimePluginImages { 24 25 private static ImageRegistry PLUGIN_REGISTRY; 26 27 public final static String ICONS_PATH = "icons/"; //$NON-NLS-1$ 28 29 private static final String PATH_OBJ = ICONS_PATH + "obj16/"; //$NON-NLS-1$ 30 private static final String PATH_DCL = ICONS_PATH + "dlcl16/"; //$NON-NLS-1$ 31 private static final String PATH_LCL = ICONS_PATH + "elcl16/"; //$NON-NLS-1$ 32 private static final String PATH_OVR = ICONS_PATH + "ovr16/"; //$NON-NLS-1$ 33 34 // Plug-in Spy related images 35 public static final String IMG_CLASS_OBJ = "class_obj.png"; //$NON-NLS-1$ 36 public static final String IMG_INTERFACE_OBJ = "int_obj.png"; //$NON-NLS-1$ 37 public static final String IMG_PLUGIN_OBJ = "plugin_obj.png"; //$NON-NLS-1$ 38 public static final String IMG_SPY_OBJ = "pdespy_obj.png"; //$NON-NLS-1$ 39 public static final String IMG_MENU_OBJ = "menu_obj.png"; //$NON-NLS-1$ 40 public static final String IMG_ID_OBJ = "generic_xml_obj.png"; //$NON-NLS-1$ 41 public static final String IMG_MENUSPY_OBJ = "menuspy_obj.png"; //$NON-NLS-1$ 42 public static final String IMG_CONTEXTID_OBJ = "contextid_obj.png"; //$NON-NLS-1$ 43 public static final String IMG_SAVE_IMAGE_AS_OBJ = "save_image_as_obj.png"; //$NON-NLS-1$ 44 public static final String IMG_COPY_QNAME = "cpyqual_menu.png"; //$NON-NLS-1$ 45 public static final String IMG_UP_NAV = "up_nav.png"; //$NON-NLS-1$ 46 47 public static final ImageDescriptor CLASS_OBJ = create(PATH_OBJ, IMG_CLASS_OBJ); 48 public static final ImageDescriptor INTERFACE_OBJ = create(PATH_OBJ, IMG_INTERFACE_OBJ); 49 public static final ImageDescriptor PLUGIN_OBJ = create(PATH_OBJ, IMG_PLUGIN_OBJ); 50 public static final ImageDescriptor SPY_OBJ = create(PATH_OBJ, IMG_SPY_OBJ); 51 public static final ImageDescriptor MENU_OBJ = create(PATH_OBJ, IMG_MENU_OBJ); 52 public static final ImageDescriptor ID_OBJ = create(PATH_OBJ, IMG_ID_OBJ); 53 public static final ImageDescriptor MENUSPY_OBJ = create(PATH_OBJ, IMG_MENUSPY_OBJ); 54 public static final ImageDescriptor CONTEXTID_OBJ = create(PATH_OBJ, IMG_CONTEXTID_OBJ); 55 public static final ImageDescriptor SAVE_IMAGE_AS_OBJ = create(PATH_OBJ, IMG_SAVE_IMAGE_AS_OBJ); 56 public static final ImageDescriptor COPY_QNAME = create(PATH_LCL, IMG_COPY_QNAME); 57 public static final ImageDescriptor UP_NAV = create(PATH_LCL, IMG_UP_NAV); 58 59 public static final ImageDescriptor DESC_REFRESH_DISABLED = create(PATH_DCL, "refresh.png"); //$NON-NLS-1$ 60 public static final ImageDescriptor DESC_REFRESH = create(PATH_LCL, "refresh.png"); //$NON-NLS-1$ 61 public static final ImageDescriptor DESC_COLLAPSE_ALL = create(PATH_LCL, "collapseall.png"); //$NON-NLS-1$ 62 public static final ImageDescriptor DESC_ERROR_ST_OBJ = create(PATH_OBJ, "error_st_obj.png"); //$NON-NLS-1$ 63 public static final ImageDescriptor DESC_ERROR_STACK_OBJ = create(PATH_OBJ, "error_stack.png"); //$NON-NLS-1$ 64 public static final ImageDescriptor DESC_EXT_POINT_OBJ = create(PATH_OBJ, "ext_point_obj.png"); //$NON-NLS-1$ 65 public static final ImageDescriptor DESC_EXT_POINTS_OBJ = create(PATH_OBJ, "ext_points_obj.png"); //$NON-NLS-1$ 66 public static final ImageDescriptor DESC_EXTENSION_OBJ = create(PATH_OBJ, "extension_obj.png"); //$NON-NLS-1$ 67 public static final ImageDescriptor DESC_EXTENSIONS_OBJ = create(PATH_OBJ, "extensions_obj.png"); //$NON-NLS-1$ 68 public static final ImageDescriptor DESC_GENERIC_XML_OBJ = create(PATH_OBJ, "generic_xml_obj.png"); //$NON-NLS-1$ 69 public static final ImageDescriptor DESC_ATTR_XML_OBJ = create(PATH_OBJ, "attr_xml_obj.png"); //$NON-NLS-1$ 70 public static final ImageDescriptor DESC_INFO_ST_OBJ = create(PATH_OBJ, "info_st_obj.png"); //$NON-NLS-1$ 71 public static final ImageDescriptor DESC_JAVA_LIB_OBJ = create(PATH_OBJ, "java_lib_obj.png"); //$NON-NLS-1$ 72 public static final ImageDescriptor DESC_NATIVE_LIB_OBJ = create(PATH_OBJ, "native_lib_obj.png"); //$NON-NLS-1$ 73 public static final ImageDescriptor DESC_OK_ST_OBJ = create(PATH_OBJ, "ok_st_obj.png"); //$NON-NLS-1$ 74 public static final ImageDescriptor DESC_PLUGIN_OBJ = create(PATH_OBJ, "plugin_obj.png"); //$NON-NLS-1$ 75 public static final ImageDescriptor DESC_REQ_PLUGIN_OBJ = create(PATH_OBJ, "req_plugin_obj.png"); //$NON-NLS-1$ 76 public static final ImageDescriptor DESC_REQ_PLUGINS_OBJ = create(PATH_OBJ, "req_plugins_obj.png"); //$NON-NLS-1$ 77 public static final ImageDescriptor DESC_RUNTIME_OBJ = create(PATH_OBJ, "runtime_obj.png"); //$NON-NLS-1$ 78 public static final ImageDescriptor DESC_WARNING_ST_OBJ = create(PATH_OBJ, "warning_st_obj.png"); //$NON-NLS-1$ 79 public static final ImageDescriptor DESC_LOCATION = create(PATH_OBJ, "location_obj.png"); //$NON-NLS-1$ 80 public static final ImageDescriptor DESC_IMP_OBJ = create(PATH_OBJ, "bundle-importer.png"); //$NON-NLS-1$ 81 public static final ImageDescriptor DESC_EXP_OBJ = create(PATH_OBJ, "bundle-exporter.png"); //$NON-NLS-1$ 82 public static final ImageDescriptor DESC_SERVICE_OBJ = create(PATH_OBJ, "int_obj.png"); //$NON-NLS-1$ 83 public static final ImageDescriptor DESC_PROPERTY_OBJ = create(PATH_OBJ, "property_obj.png"); //$NON-NLS-1$ 84 public static final ImageDescriptor DESC_PLUGINS_OBJ = create(PATH_OBJ, "plugins_obj.png"); //$NON-NLS-1$ 85 public static final ImageDescriptor DESC_FRAGMENT_OBJ = create(PATH_OBJ, "frgmt_obj.png"); //$NON-NLS-1$ 86 public static final ImageDescriptor DESC_PACKAGE_OBJ = create(PATH_OBJ, "package_obj.png"); //$NON-NLS-1$ 87 public static final ImageDescriptor DESC_REMOTE_SERVICE_PROXY_OBJ = create(PATH_OBJ, "rsvcproxy_obj.png"); //$NON-NLS-1$ 88 89 /* 90 * Overlays 91 */ 92 public static final ImageDescriptor DESC_RUN_CO = create(PATH_OVR, "run_co.png"); //$NON-NLS-1$ 93 public static final ImageDescriptor DESC_EXPORT_CO = create(PATH_OVR, "export_co.png"); //$NON-NLS-1$ 94 public static final ImageDescriptor DESC_ERROR_CO = create(PATH_OVR, "error_co.png"); //$NON-NLS-1$ 95 public static final ImageDescriptor DESC_DEFAULT_CO = create(PATH_OVR, "default_co.png"); //$NON-NLS-1$ 96 initialize()97 private static final void initialize() { 98 PLUGIN_REGISTRY = PDERuntimePlugin.getDefault().getImageRegistry(); 99 manage(IMG_CLASS_OBJ, CLASS_OBJ); 100 manage(IMG_INTERFACE_OBJ, INTERFACE_OBJ); 101 manage(IMG_PLUGIN_OBJ, PLUGIN_OBJ); 102 manage(IMG_SPY_OBJ, SPY_OBJ); 103 manage(IMG_MENU_OBJ, MENU_OBJ); 104 manage(IMG_ID_OBJ, ID_OBJ); 105 manage(IMG_MENUSPY_OBJ, MENUSPY_OBJ); 106 manage(IMG_CONTEXTID_OBJ, CONTEXTID_OBJ); 107 manage(IMG_SAVE_IMAGE_AS_OBJ, SAVE_IMAGE_AS_OBJ); 108 manage(IMG_COPY_QNAME, COPY_QNAME); 109 } 110 create(String prefix, String name)111 private static ImageDescriptor create(String prefix, String name) { 112 return ImageDescriptor.createFromURL(makeIconURL(prefix, name)); 113 } 114 get(String key)115 public static Image get(String key) { 116 if (PLUGIN_REGISTRY == null) 117 initialize(); 118 return PLUGIN_REGISTRY.get(key); 119 } 120 makeIconURL(String prefix, String name)121 private static URL makeIconURL(String prefix, String name) { 122 String path = "$nl$/" + prefix + name; //$NON-NLS-1$ 123 return FileLocator.find(PDERuntimePlugin.getDefault().getBundle(), new Path(path), null); 124 } 125 manage(String key, ImageDescriptor desc)126 public static Image manage(String key, ImageDescriptor desc) { 127 Image image = desc.createImage(); 128 PLUGIN_REGISTRY.put(key, image); 129 return image; 130 } 131 132 } 133