package com.gwt.ui.client;
import com.google.gwt.event.dom.client.HasMouseDownHandlers;
import com.google.gwt.event.dom.client.HasMouseMoveHandlers;
import com.google.gwt.event.dom.client.HasMouseOutHandlers;
import com.google.gwt.event.dom.client.HasMouseOverHandlers;
import com.google.gwt.event.dom.client.MouseDownEvent;
import com.google.gwt.event.dom.client.MouseDownHandler;
import com.google.gwt.event.dom.client.MouseMoveEvent;
import com.google.gwt.event.dom.client.MouseMoveHandler;
import com.google.gwt.event.dom.client.MouseOutEvent;
import com.google.gwt.event.dom.client.MouseOutHandler;
import com.google.gwt.event.dom.client.MouseOverEvent;
import com.google.gwt.event.dom.client.MouseOverHandler;
import com.google.gwt.event.shared.HandlerRegistration;
import com.google.gwt.user.client.ui.FlowPanel;
public class InfoHelp extends FlowPanel implements HasMouseDownHandlers, HasMouseOverHandlers, HasMouseOutHandlers, HasMouseMoveHandlers {
public InfoHelp(String helpHtml) {
super();
addStyleName("infoHelp");
if (helpHtml != null && !helpHtml.trim().equals("")) {
MobileTooltip mobileTooltip = new MobileTooltip(helpHtml);
final MobileTooltipMouseListener mobileTooltipMouseListener = new MobileTooltipMouseListener(mobileTooltip);
addMouseMoveHandler(mobileTooltipMouseListener);
addMouseOutHandler(mobileTooltipMouseListener);
addMouseOverHandler(mobileTooltipMouseListener);
addMouseDownHandler(new MouseDownHandler() {
@Override
public void onMouseDown(MouseDownEvent arg0) {
mobileTooltipMouseListener.getMobileTooltip().hide();
}
});
}
}
@Override
public HandlerRegistration addMouseDownHandler(MouseDownHandler handler) {
return addDomHandler(handler, MouseDownEvent.getType());
}
@Override
public HandlerRegistration addMouseOverHandler(MouseOverHandler handler) {
return addDomHandler(handler, MouseOverEvent.getType());
}
@Override
public HandlerRegistration addMouseOutHandler(MouseOutHandler handler) {
return addDomHandler(handler, MouseOutEvent.getType());
}
@Override
public HandlerRegistration addMouseMoveHandler(MouseMoveHandler handler) {
return addDomHandler(handler, MouseMoveEvent.getType());
}
}