Bug 62596 [API] JDT messages/images should be public API
The messages and images of the JDT (and of the platform) are not accessible through a public API. So implementors of plugins have no good way to make their plugins have a consistent look&feel with the JDT. For example if you provide a plugin which handles java classes, you want to reuse the same icon than the JDT for a java class. All these classes seems useful to us: org.eclipse.ui.internal.WorkbenchMessages org.eclipse.jdt.internal.debug.ui.actions.ActionMessages org.eclipse.jdt.internal.ui.JavaPluginImages org.eclipse.jdt.internal.ui.JavaPlugin org.eclipse.jdt.internal.ui.viewsupport.JavaElementImageProvider org.eclipse.ui.internal.WorkbenchImages org.eclipse.jdt.internal.ui.viewsupport.JavaElementImageProvider org.eclipse.jdt.internal.debug.ui.DebugUIMessages org.eclipse.jdt.internal.debug.core.model.JDIDebugModelMessages org.eclipse.jdt.internal.debug.ui.JavaDebugImages org.eclipse.jdt.internal.launching.LaunchingMessages org.eclipse.jdt.internal.debug.ui.launcher.LauncherMessages org.eclipse.jdt.internal.ui.viewsupport.ImageDescriptorRegistry org.eclipse.jdt.internal.ui.viewsupport.ImageImageDescriptor org.eclipse.debug.internal.ui.DebugPluginImages org.eclipse.jdt.internal.ui.wizards.NewWizardMessages org.eclipse.search.internal.ui.SearchPluginImages Note that this feature request has been entered to conform to the Ready for Websphere Studio certification.
org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/JavaPluginImages.java
action.setImageDescriptor(descriptor); 
	}
	
	private static ImageDescriptor createManagedFromKey(String prefix, String key) {
		return createManaged(prefix, key.substring(NAME_PREFIX_LENGTH), key);
	}
	
	private static ImageDescriptor createManaged(String prefix, String name, String key) {
		ImageDescriptor result= create(prefix, name, true);
		
		if (fgAvoidSWTErrorMap == null) {
			fgAvoidSWTErrorMap= new HashMap();
		}
		fgAvoidSWTErrorMap.put(key, result);
		if (fgImageRegistry != null) {
			JavaPlugin.logErrorMessage("Image registry already defined"); 
		}
		return result;
	}
	
	/*
	 * Creates an image descriptor for the given prefix and name in the JDT UI bundle. The path can
	 * contain variables like $NL$.
	 * If no image could be found, <code>useMissingImageDescriptor</code> decides if either
	 * the 'missing image descriptor' is returned or <code>null</code>.
	 * or <code>null</code>.
	 */
	private static ImageDescriptor create(String prefix, String name, boolean useMissingImageDescriptor) {
		IPath path= ICONS_PATH.append(prefix).append(name);
		return createImageDescriptor(JavaPlugin.getDefault().getBundle(), path, useMissingImageDescriptor);