package com.akjava.gwt.lib.client;
import com.google.gwt.dom.client.ImageElement;
import com.google.gwt.event.dom.client.ErrorEvent;
import com.google.gwt.event.dom.client.ErrorHandler;
import com.google.gwt.event.dom.client.LoadEvent;
import com.google.gwt.event.dom.client.LoadHandler;
import com.google.gwt.user.client.ui.Image;
import com.google.gwt.user.client.ui.RootPanel;
public class ImageElementLoader{
public void load(final String url,final ImageElementListener listener){
final Image img=new Image(url);
img.setVisible(false);
img.addLoadHandler(new LoadHandler() {
@Override
public void onLoad(LoadEvent event) {
RootPanel.get().remove(img);
ImageElement element=ImageElement.as(img.getElement());
listener.onLoad(element);
}
});
img.addErrorHandler(new ErrorHandler() {
@Override
public void onError(ErrorEvent event) {
listener.onError(url,event);
}
});
RootPanel.get().add(img);
}
}