Example usage for com.google.gwt.dom.client NativeEvent getCurrentEventTarget

List of usage examples for com.google.gwt.dom.client NativeEvent getCurrentEventTarget

Introduction

In this page you can find the example usage for com.google.gwt.dom.client NativeEvent getCurrentEventTarget.

Prototype

public final EventTarget getCurrentEventTarget() 

Source Link

Document

Gets the current target element of this event.

Usage

From source file:cc.kune.common.client.shortcuts.GlobalShortcutRegisterDefault.java

License:GNU Affero Public License

/**
 * Instantiates a new global shortcut register default.
 *///from  w ww. j av  a2  s  .  c o  m
public GlobalShortcutRegisterDefault() {
    super();
    eventHandler = new NativePreviewHandler() {
        @Override
        public void onPreviewNativeEvent(final NativePreviewEvent nativeEventPrev) {
            if (nativeEventPrev.getTypeInt() == Event.ONKEYDOWN) {
                final NativeEvent nativeEvent = nativeEventPrev.getNativeEvent();
                final Event event = Event.as(nativeEvent);
                AbstractAction action = get(KeyStroke.getKeyStroke(event.getKeyCode(), 0));
                if (action == null) {
                    action = get(Shortcut.getShortcut(event.getCtrlKey(), event.getAltKey(),
                            event.getShiftKey(), event.getShiftKey(), (char) event.getKeyCode()));
                }
                if (action != null) {
                    Log.debug("Not propagating event for action: " + action.getValue(Action.NAME));
                    nativeEvent.stopPropagation();
                    action.actionPerformed(new ActionEvent(nativeEvent.getCurrentEventTarget(), event));
                    nativeEventPrev.cancel();
                }
            }
        }
    };
}

From source file:com.sencha.gxt.core.client.util.KeyNav.java

License:sencha.com license

public void handleEvent(NativeEvent event) {
    int code = event.getKeyCode();

    NativeEvent e = event;

    String type = event.getType();

    if ("keydown".equals(type) && keyEvent == Event.ONKEYDOWN
            || "keypress".equals(type) && keyEvent == Event.ONKEYPRESS) {

    } else {//from  w ww. j a v  a  2 s. c  o  m
        return;
    }

    if (component != null && component.getElement() != (Element) e.getCurrentEventTarget().cast()) {
        return;
    }

    if (cancelBubble) {
        event.stopPropagation();
    }
    if (preventDefault) {
        event.preventDefault();
    }

    onKeyPress(e);

    switch (code) {
    case KeyCodes.KEY_ALT:
        onAlt(e);
        break;
    case KeyCodes.KEY_BACKSPACE:
        onBackspace(e);
        break;
    case KeyCodes.KEY_CTRL:
        onControl(e);
        break;
    case KeyCodes.KEY_DELETE:
        onDelete(e);
        break;
    case KeyCodes.KEY_DOWN:
        onDown(e);
        break;
    case KeyCodes.KEY_END:
        onEnd(e);
        break;
    case KeyCodes.KEY_ENTER:
        onEnter(e);
        break;
    case KeyCodes.KEY_ESCAPE:
        onEsc(e);
        break;
    case KeyCodes.KEY_HOME:
        onHome(e);
        break;
    case KeyCodes.KEY_LEFT:
        onLeft(e);
        break;
    case KeyCodes.KEY_PAGEDOWN:
        onPageDown(e);
        break;
    case KeyCodes.KEY_PAGEUP:
        onPageUp(e);
        break;
    case KeyCodes.KEY_SHIFT:
        onShift(e);
        break;
    case KeyCodes.KEY_TAB:
        onTab(e);
        break;
    case KeyCodes.KEY_RIGHT:
        onRight(e);
        break;
    case KeyCodes.KEY_UP:
        onUp(e);
        break;
    }
}

From source file:org.eclipse.che.ide.ui.smartTree.KeyboardNavigationHandler.java

License:Open Source License

public void handleEvent(NativeEvent event) {
    int code = event.getKeyCode();

    NativeEvent e = event;

    String type = event.getType();

    if ("keydown".equals(type) && keyEvent == Event.ONKEYDOWN
            || "keypress".equals(type) && keyEvent == Event.ONKEYPRESS) {

    } else {/*from w ww. jav a2 s .  co m*/
        return;
    }

    if (component != null && component.getElement() != e.getCurrentEventTarget().cast()) {
        return;
    }

    if (preventDefault) {
        event.preventDefault();
    }

    onKeyPress(e);

    switch (code) {
    case KeyCodes.KEY_ALT:
        onAlt(e);
        break;
    case KeyCodes.KEY_BACKSPACE:
        onBackspace(e);
        break;
    case KeyCodes.KEY_CTRL:
        onControl(e);
        break;
    case KeyCodes.KEY_DELETE:
        onDelete(e);
        break;
    case KeyCodes.KEY_DOWN:
        onDown(e);
        break;
    case KeyCodes.KEY_END:
        onEnd(e);
        break;
    case KeyCodes.KEY_ENTER:
        onEnter(e);
        break;
    case KeyCodes.KEY_ESCAPE:
        onEsc(e);
        break;
    case KeyCodes.KEY_HOME:
        onHome(e);
        break;
    case KeyCodes.KEY_LEFT:
        onLeft(e);
        break;
    case KeyCodes.KEY_PAGEDOWN:
        onPageDown(e);
        break;
    case KeyCodes.KEY_PAGEUP:
        onPageUp(e);
        break;
    case KeyCodes.KEY_SHIFT:
        onShift(e);
        break;
    case KeyCodes.KEY_TAB:
        onTab(e);
        break;
    case KeyCodes.KEY_RIGHT:
        onRight(e);
        break;
    case KeyCodes.KEY_UP:
        onUp(e);
        break;
    }
}

From source file:org.opennms.features.topology.app.internal.gwt.client.GWTVertex.java

License:Open Source License

public static D3Behavior create() {
    return new D3Behavior() {

        @Override//from  w  w w. j  a v a  2 s .  c o  m
        public D3 run(D3 selection) {

            D3 vertex = selection.append("g").attr("class", "vertex");
            vertex.attr("opacity", 1e-6).style("cursor", "pointer");
            vertex.append("svg:rect").attr("class", "status").attr("fill", "none").attr("stroke-width", 5)
                    .attr("stroke-location", "outside").attr("stroke", "blue").attr("opacity", 0);

            D3 svgIconContainer = vertex.append("g").attr("class", "icon-container").attr("opacity", 0);
            D3 svgIcon = svgIconContainer.append("use");
            D3 svgIconRollover = svgIconContainer.append("use");
            D3 svgIconActive = svgIconContainer.append("use");
            D3 statusCounter = vertex.append("g");
            D3 statusBadge = vertex.append("g");
            D3 textSelection = vertex.append("text");

            vertex.append("svg:rect").attr("class", "svgIconOverlay").attr("width", 100).attr("height", 100)
                    .attr("opacity", 0).call(new D3Behavior() {
                        @Override
                        public D3 run(D3 selection) {
                            return selection.on("mouseover", new D3Events.Handler<Object>() {
                                @Override
                                public void call(Object o, int index) {
                                    NativeEvent event = D3.getEvent();
                                    SVGRect element = event.getCurrentEventTarget().cast();
                                    SVGGElement parent = element.getParentElement().cast();

                                    D3 selection = D3.d3().select(parent);
                                    selection.select(".overIcon").attr("opacity", 1);
                                }
                            }).on("mouseout", new D3Events.Handler<Object>() {
                                @Override
                                public void call(Object o, int index) {
                                    NativeEvent event = D3.getEvent();
                                    SVGRect element = event.getCurrentEventTarget().cast();
                                    SVGGElement parent = element.getParentElement().cast();

                                    D3 selection = D3.d3().select(parent);
                                    selection.select(".overIcon").attr("opacity", 0);
                                }
                            });
                        }
                    });

            svgIcon.attr("xlink:href", svgIconId("")).attr("class", "upIcon");
            svgIconRollover.attr("xlink:href", svgIconId("_rollover")).attr("class", "overIcon").attr("opacity",
                    0);
            svgIconActive.attr("xlink:href", svgIconId("_active")).attr("class", "activeIcon").attr("opacity",
                    0);

            // Status Counter
            statusCounter.attr("class", "node-status-counter").append("svg:rect").attr("height", 20)
                    .attr("width", 20).attr("rx", 10).attr("ry", 10);
            statusCounter.append("text").attr("x", "6px").attr("y", "14px").attr("class", "status-counter");

            // Status Badge
            statusBadge.attr("class", "status-badge-container");
            statusBadge.append("text").attr("x", "0px").attr("y", "0px").attr("class", "status-badge");

            textSelection.text(label()).attr("class", "vertex-label").attr("x", "0px")
                    .attr("text-anchor", "middle").attr("alignment-baseline", "text-before-edge");

            vertex.call(draw());

            return vertex;
        }
    };
}

From source file:org.opennms.features.topology.app.internal.gwt.client.VTopologyComponent.java

License:Open Source License

private Handler<GWTVertex> vertexClickHandler() {
    return new D3Events.Handler<GWTVertex>() {

        @Override//from w  ww . ja  v  a  2  s  .c o m
        public void call(GWTVertex vertex, int index) {
            if (D3.eventDefaultPrevented()) {
                return;
            }
            NativeEvent event = D3.getEvent();
            SVGGElement vertexElement = event.getCurrentEventTarget().cast();
            vertexElement.getParentElement().appendChild(vertexElement);

            event.preventDefault();
            event.stopPropagation();

            final MouseEventDetails mouseDetails = MouseEventDetailsBuilder.buildMouseEventDetails(event,
                    getElement());
            m_serverRpc.vertexClicked(vertex.getId(), mouseDetails, Navigator.getPlatform());

        }
    };
}

From source file:org.thechiselgroup.biomixer.client.dnd.resources.DragEnabler.java

License:Apache License

public void forwardMouseDownWithTargetElementPosition(NativeEvent e) {
    Element element = e.getCurrentEventTarget().cast();
    int absoluteLeft = element.getAbsoluteLeft();
    int absoluteTop = element.getAbsoluteTop();

    forwardMouseDown(e, absoluteLeft, absoluteTop);
}

From source file:org.vectomatic.dnd.DropPanel.java

License:Open Source License

/**
 * Dispatches the specified event to this node
 * event handlers//from  w  w w .  ja  va2  s. c  om
 * @param event The event to dispatch
 */
public void dispatch(NativeEvent event) {
    // dragenter and dragleave deserve special treatment
    // to solve issues described in:
    // http://www.quirksmode.org/js/events_mouse.html
    if ("dragenter".equals(event.getType()) || "dragleave".equals(event.getType())) {
        if (isChildOf((Node) event.getCurrentEventTarget().cast(),
                (Node) event.getRelatedEventTarget().cast())) {
            return;
        }
    }
    // This call wraps the native event into a DomEvent
    // and invokes fireEvent
    DomEvent.fireNativeEvent(event, this, (Element) event.getCurrentEventTarget().cast());
}

From source file:org.vectomatic.dom.svg.impl.DOMHelperImpl.java

License:Open Source License

/**
 * Central dispatching function for events emitted by DOM objects
 * @param event The DOM event/* ww  w .ja  va  2 s  .com*/
 * @param node The object processing the event
 * @param elem The object emitting the event
 */
public void dispatch(NativeEvent event, OMNode node, Element elem) {
    //Window.alert("type=" + event.getType());
    switch (eventGetTypeInt(event.getType())) {
    // Mouseover and mouseout deserve special treatment
    // to solve issues described in:
    // http://www.quirksmode.org/js/events_mouse.html
    // For SVG, it seems better to test against the tree rooted at
    // evt.currentTarget than againt the subtree rooted at evt.target
    case EVT_MOUSEOVER:
    case EVT_MOUSEOUT:
        if (isChildOf((Node) event.getCurrentEventTarget().cast(),
                (Node) event.getRelatedEventTarget().cast())) {
            return;
        }
        break;
    }
    node.dispatch(event);
}

From source file:org.vectomatic.dom.svg.OMNode.java

License:Open Source License

/**
 * Dispatches the specified event to this node
 * event handlers//from   w w w  . j a  v a  2 s.c o  m
 * @param event The event to dispatch
 */
public void dispatch(NativeEvent event) {
    // This call wraps the native event into a DomEvent
    // and invokes fireEvent
    DomEvent.fireNativeEvent(event, this, (Element) event.getCurrentEventTarget().cast());
}

From source file:org.vectomatic.dom.svg.utils.IFrameXmlLoader.java

License:Open Source License

@SuppressWarnings("unused")
private void dispatch(NativeEvent event, AsyncXmlLoaderCallback callback) {
    IFrameElement iframe = event.getCurrentEventTarget().cast();
    if (iframe != null) {
        String href = getHref(iframe);
        if (!"about:blank".equals(href)) {
            Element root = iframe.getContentDocument().getDocumentElement();
            Element localRoot = DOMHelper.importNode(DOMHelper.getCurrentDocument(), root, true).cast();
            callback.onSuccess(href, localRoot);
        }/*from   w ww . j a va 2  s .c  o m*/
        Element body = RootPanel.get().getElement();
        body.removeChild(iframe);
    }
}