Bug 79909 [JFace] Localized resource registries for JFace
Please provide improved JFace support for managing SWT resources, with the following properties: - A registry can allocate and deallocate SWT resources given a descriptor - Resources are reference-counted and shared, allowing different objects with equivalent descriptors to share resources. - Everything in the registry can be deallocated with one function call - The registry should support an open-ended set of resources (and should initially support, at minimum, Images, Fonts, Colors) - It should be possible to create a "local registry" that behaves like a regular registry but actually shares its resources with a global registry. For example, the workbench could offer a local registry as a service to views and editors. This would allow views and editors to safely allocate and deallocate SWT resources without any chance of leaking.
bundles/org.eclipse.jface/src/org/eclipse/jface/resource/JFaceResources.java
return getImageRegistry().get(key);
    }
    /**
     * Returns the image registry for JFace itself.
     * <p>
     * Note that the static convenience method <code>getImage</code>
     * is also provided on this class.
     * </p>
     */
    public static ImageRegistry getImageRegistry() {
        if (imageRegistry == null)
            imageRegistry = new ImageRegistry();
        return imageRegistry;
    }
    /**
     * Returns the resource object with the given key in
     * JFace's resource bundle. If there isn't any value under
     * the given key, the key is returned.
     *
     * @param key the resource name
     * @return the string
     */
    public static String getString(String key) {
        try {
            return bundle.getString(key);
        } catch (MissingResourceException e) {
            return key;
        }
    }
    /**