I searched what ImageLoaderFactory.create( context )
does but I don't understand.
ImageLoader = ImageLoaderFactory.create( context );
I know that ImageLoader
is for Image downloaded on the web.
I searched what ImageLoaderFactory.create( context )
does but I don't understand.
ImageLoader = ImageLoaderFactory.create( context );
I know that ImageLoader
is for Image downloaded on the web.
The following snipet is for ImageLoader to load images from any url inside your project folder:
import java.net.URL;
import org.eclipse.core.runtime.FileLocator;
import org.eclipse.core.runtime.Path;
import org.eclipse.jface.resource.ImageDescriptor;
import org.eclipse.swt.graphics.Image;
import org.osgi.framework.Bundle;
import org.osgi.framework.FrameworkUtil;
public class ImageLoaderImpl implements IImageLoader {
@Override
public Image loadImage(Class<?> clazz, String path) {
Bundle bundle = FrameworkUtil.getBundle(clazz);
URL url = FileLocator.find(bundle, new Path(path), null);
ImageDescriptor imageDescr = ImageDescriptor.createFromURL(url);
return imageDescr.createImage();
}
}
You can implement an ImageLoaderFactory to retrieve IImageLoader objects. Then, for example, at your code you can load images from your project folder (you have created a 'icon' folder inside your project:
imageLoader.loadImage(this.getClass(), "icons/myicon.png");