Проблема с использованием wrap () заключается в том, что если родительский элемент уже является виджетом, перенос запрещен. Вы все еще можете это сделать и будете работать, но если вы запустите приложение в режиме разработки, утверждение потерпит неудачу, остановив приложение.
Правильный (но утомительный и, на мой взгляд, неполный) способ - что-то вроде
Element elem = DOM.getElementById(“billing-component”);
DOM.sinkEvents(elem, Event.ONCLICK | Event.ONMOUSEOUT | Event.ONMOUSEOVER);
DOM.setEventListener(elem, new EventListener() {
@Override
public void onBrowserEvent(Event event) {
if (Event.ONCLICK == event.getTypeInt()) {
…
}
}
});
Я знаю, что это выглядит не очень хорошо, и на самом деле это не так, потому что вы можете подключить только один слушатель к элементу и проверить тип события.