Example usage for com.google.gwt.user.client DOM setEventListener

List of usage examples for com.google.gwt.user.client DOM setEventListener

Introduction

In this page you can find the example usage for com.google.gwt.user.client DOM setEventListener.

Prototype

public static void setEventListener(Element elem, EventListener listener) 

Source Link

Document

Sets the EventListener to receive events for the given element.

Usage

From source file:asquare.gwt.tk.client.ui.EventWrapper.java

License:Apache License

@Override
protected void onAttach() {
    super.onAttach();
    // Hijacks events intended for the wrapped widget's element. 
    // Must be after super call. 
    DOM.setEventListener(getElement(), this);
}

From source file:bz.davide.dmweb.shared.view.DMWidgetEventAttachHandler.java

License:Open Source License

@Override
public void onAttachOrDetach(AttachEvent event) {
    if (event.isAttached()) {
        DOM.sinkEvents(this.widget.getElement(), this.widget.eventBits);
        DOM.setEventListener(this.widget.getElement(), new EventListener() {
            @Override/* w ww  . j  a v a2  s .  com*/
            public void onBrowserEvent(Event event) {
                DMWidgetEventAttachHandler.this.widget.onBrowserEvent(event);
            }
        });
    } else {
        DOM.setEventListener(this.widget.getElement(), null);
    }
}

From source file:client.net.sf.saxon.ce.Xslt20ProcessorImpl.java

License:Mozilla Public License

private void registerEventHandlers(Controller controller) throws XPathException {
    // add an event listener to capture registered event modes
    if (registeredEventModes != null) {
        return;//from  w  w w  .ja va 2 s  .c o m
    }
    Element docElement = (com.google.gwt.user.client.Element) (Object) Document.get();
    registeredEventModes = controller.getRuleManager().getModesInNamespace(NamespaceConstant.IXSL);
    // Restriction: only one event listener per element
    if (registeredEventModes.size() > 0 && !registeredForEvents) {
        registeredForEvents = true;
        registerNonDOMevents(controller);
        if (DOM.getEventListener((com.google.gwt.user.client.Element) docElement) == null) {
            principleEventListener = true;
            DOM.setEventListener((com.google.gwt.user.client.Element) docElement, new EventListener() {
                public void onBrowserEvent(Event event) {

                    EventTarget eTarget = event.getEventTarget();
                    Node eventNode;
                    if (Node.is(eTarget)) {
                        eventNode = Node.as(eTarget);
                    } else {
                        eventNode = Node.as(getCorrespondingSVGElement(eTarget));
                        if (eventNode == null) {
                            return;
                        }
                    }
                    bubbleApplyTemplates(eventNode, event);
                }
            });
        } else {
            // can't register for event so register for relayEvent
            Controller.addEventProcessor(this);
        }
    }
    // Events for all processor instances may register 1 or more event types
    for (Mode eventMode : registeredEventModes) {
        String eventName = eventMode.getModeName().getLocalName();
        if (!eventName.startsWith("on")) {
            logger.warning("Event name: '" + eventName + "' is invalid - names should begin with 'on'");
        } else {
            eventName = eventName.substring(2);
        }
        int eventNo = Event.getTypeInt(eventName);
        DOM.sinkEvents((com.google.gwt.user.client.Element) docElement,
                eventNo | DOM.getEventsSunk((com.google.gwt.user.client.Element) docElement));

    }

}

From source file:com.alkacon.forms.client.widgets.A_EditWidget.java

License:Open Source License

/**
 * @see com.google.gwt.user.client.ui.UIObject#setElement(com.google.gwt.user.client.Element)
 *//*  ww  w .ja  v a 2s.co  m*/
@Override
protected void setElement(Element element) {

    super.setElement(element);
    DOM.setEventListener(getElement(), this);
}

From source file:com.alkacon.forms.client.widgets.StringWidget.java

License:Open Source License

/**
 * @see com.alkacon.forms.client.widgets.I_EditWidget#initWidget(com.google.gwt.user.client.Element, com.alkacon.vie.shared.I_Entity, java.lang.String, int)
 *///from ww  w .  ja  v a  2s  .c  o m
public I_EditWidget initWidget(Element element, I_Entity entity, String attributeName, int valueIndex) {

    setElement(element);
    DOM.setEventListener(getElement(), this);
    setPreviousValue(getValue());
    getElement().setAttribute("contenteditable", "true");
    getElement().getStyle().setColor("red");
    return this;
}

From source file:com.cgxlib.xq.client.plugins.events.EventsListener.java

License:Apache License

/**
 * We have to set the xq event listener to the element again when
 * the element is a widget, because when GWT detaches a widget it removes the
 * event listener./*from  w w  w. ja  v a 2s. c  o  m*/
 */
public static void rebind(Element e) {
    com.cgxlib.xq.client.plugins.events.EventsListener ret = getXQEventListener(e);
    if (ret != null) {
        DOM.setEventListener((com.google.gwt.user.client.Element) e, ret);
    }
}

From source file:com.cgxlib.xq.client.plugins.events.EventsListener.java

License:Apache License

private void sink(int eventbits, String eventName) {
    // ensure that the gwtQuery's event listener is set as event listener of the element
    DOM.setEventListener((com.google.gwt.user.client.Element) element, this);

    if (eventbits != BITLESS) {
        eventBits |= eventbits;/*from www  .  j  a  va  2 s.c  o m*/

        if ((eventBits | Event.FOCUSEVENTS) == Event.FOCUSEVENTS && JsUtils.isElement(element)
                && element.getAttribute("tabIndex").length() == 0) {
            element.setAttribute("tabIndex", "0");
        }
        DOM.sinkEvents((com.google.gwt.user.client.Element) element,
                eventBits | DOM.getEventsSunk((com.google.gwt.user.client.Element) element));
    } else {
        sinkBitlessEvent(element, eventName);
    }
}

From source file:com.dianaui.universal.core.client.ui.CheckBox.java

License:Apache License

/**
 * This method is called when a widget is attached to the browser's
 * document. onAttach needs special handling for the CheckBox case. Must
 * still call {@link Widget#onAttach()} to preserve the
 * <code>onAttach</code> contract.
 *///from   www . j  a v  a  2 s . co  m
@Override
protected void onLoad() {
    DOM.setEventListener(inputElem, this);
}

From source file:com.dianaui.universal.core.client.ui.CheckBox.java

License:Apache License

/**
 * This method is called when a widget is detached from the browser's
 * document. Overridden because of IE bug that throws away checked state and
 * in order to clear the event listener off of the <code>inputElem</code>.
 *///  ww w  .j a  v  a2 s.c om
@Override
protected void onUnload() {
    // Clear out the inputElem's event listener (breaking the circular
    // reference between it and the widget).
    DOM.setEventListener(inputElem, null);
    setValue(getValue());
}

From source file:com.eduworks.gwt.client.pagebuilder.PageAssembler.java

License:Apache License

/** @Returns if it worked */
public static boolean attachHandler(String elementName, final int eventTypes, final EventCallback callback) {
    boolean result = false;
    Element e = (Element) Document.get().getElementById(elementName);
    if (e != null) {
        DOM.sinkEvents(e, eventTypes);/*  w  ww  . jav  a2s.c o  m*/
        DOM.setEventListener(e, new EventListener() {
            @Override
            public void onBrowserEvent(Event event) {
                if (callback != null)
                    callback.onEvent(event);
            }
        });
        result = true;
    }
    return result;
}