1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18 package org.vectomatic.svg.edit.client.utils;
19
20 import com.google.gwt.dom.client.Document;
21 import com.google.gwt.dom.client.ImageElement;
22 import com.google.gwt.event.dom.client.HasLoadHandlers;
23 import com.google.gwt.event.dom.client.LoadEvent;
24 import com.google.gwt.event.dom.client.LoadHandler;
25 import com.google.gwt.event.shared.HandlerRegistration;
26 import com.google.gwt.user.client.DOM;
27 import com.google.gwt.user.client.Event;
28 import com.google.gwt.user.client.ui.Widget;
29
30
31
32
33
34
35 public class SimpleImage extends Widget implements HasLoadHandlers {
36 public SimpleImage() {
37 setElement(Document.get().createImageElement());
38 DOM.setEventListener(getElement(), this);
39 DOM.sinkEvents(getElement(), Event.getTypeInt(LoadEvent.getType().getName()) | DOM.getEventsSunk(getElement()));
40
41 }
42
43 public void setSrc(String url) {
44 getElement().<ImageElement>cast().setSrc(url);
45 }
46
47 @Override
48 public HandlerRegistration addLoadHandler(LoadHandler handler) {
49 return addDomHandler(handler, LoadEvent.getType());
50 }
51 public String getSrc() {
52 return getElement().<ImageElement>cast().getSrc();
53 }
54
55 public int getHeight() {
56 return getElement().<ImageElement>cast().getHeight();
57 }
58
59 public int getWidth() {
60 return getElement().<ImageElement>cast().getWidth();
61 }
62 }