}
public boolean addMapListener(MapListener mapListener) {
if (mapListener != null && !listeners.containsKey(mapListener)) {
List<HandlerRegistration> registrations = new ArrayList<HandlerRegistration>();
ListenerController listenerController = new ListenerController(mapListener);
registrations.add(display.addMouseDownHandler(listenerController));
registrations.add(display.addMouseMoveHandler(listenerController));
registrations.add(display.addMouseOutHandler(listenerController));
registrations.add(display.addMouseOverHandler(listenerController));
registrations.add(display.addMouseUpHandler(listenerController));
registrations.add(display.addMouseWheelHandler(listenerController));
listenerController.onActivate(this);
listeners.put(mapListener, registrations);
return true;
}
return false;
}