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/wizards/buildpaths/CPListLabelProvider.java
if (attrib.getParent().getEntryKind() == IClasspathEntry.CPE_VARIABLE) {
					arg= getVariableString(path);
				} else {
					arg= getPathString(path, path.getDevice() != null);
				}
			} else {
				arg= notAvailable;
			}
			return Messages.format(NewWizardMessages.CPListLabelProvider_source_attachment_label, new String[] { arg }); 
		} else if (key.equals(CPListElement.JAVADOC)) {
			String arg= null;
			String str= (String) attrib.getValue();
			if (str != null) {
				String prefix= JavaDocLocations.ARCHIVE_PREFIX;
				if (str.startsWith(prefix)) {
					int sepIndex= str.lastIndexOf("!/"); 
					if (sepIndex == -1) {
						arg= str.substring(prefix.length());
					} else {
						String archive= str.substring(prefix.length(), sepIndex);
						String root= str.substring(sepIndex + 2);
						arg= Messages.format(NewWizardMessages.CPListLabelProvider_twopart, new String[] { archive, root }); 
					}
				} else {
					arg= str;
				}
			} else {
				arg= notAvailable;
			}
			return Messages.format(NewWizardMessages.CPListLabelProvider_javadoc_location_label, new String[] { arg });