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

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

Introduction

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

Prototype

public final EventTarget getEventTarget() 

Source Link

Document

Returns the element that was the actual target of the given event.

Usage

From source file:annis.gui.widgets.gwt.client.ui.VGripDragComponent.java

License:Apache License

private boolean startDrag(NativeEvent event) {
    VTransferable transferable = new VTransferable();
    transferable.setDragSource(ConnectorMap.get(client).getConnector(this));

    Element targetElement = (Element) event.getEventTarget().cast();

    Paintable paintable;//from  w w w  .java 2  s.c  o m
    Widget w = Util.findWidget(targetElement, null);

    if (!w.getStyleName().contains("drag-source-enabled")) {
        return false;
    }

    while (w != null && !(w instanceof Paintable)) {
        w = w.getParent();
    }
    paintable = (Paintable) w;

    transferable.setData("component", paintable);
    VDragEvent dragEvent = VDragAndDropManager.get().startDrag(transferable, event, true);

    transferable.setData("clientX", event.getClientX());
    transferable.setData("clientY", event.getClientY());

    dragEvent.createDragImage(getElement(), true);

    return true;

}

From source file:app.dnd.drag.DraggableCellDecorator.java

License:Apache License

public void onBrowserEvent(Context context, Element parent, final T value, NativeEvent event,
        ValueUpdater<T> valueUpdater) {
    if (MOUSE_DOWN.equals(event.getType())) {
        EventTarget eventTarget = event.getEventTarget();
        if (Element.is(eventTarget)) {
            Element target = eventTarget.cast();
            Element wrapper = target.getParentElement();
            if (wrapper != null && dragHandlerClass.equals(wrapper.getClassName())) {
                DNDContext dndContext = dragSource.startDragging(value);
                dragController.dragStart(dndContext, parent);
                event.stopPropagation();
                event.preventDefault();//  w w w  .  j ava2 s.c  om
                return;
            }
        }
    }
    final Element cellParent = getCellParent(parent);
    cell.onBrowserEvent(context, cellParent, getValue(value), event, getValueUpdater());
}

From source file:cc.alcina.framework.gwt.client.cell.EditTextCell.java

License:Apache License

private void editEvent(Context context, Element parent, String value, ViewData viewData, NativeEvent event,
        ValueUpdater<String> valueUpdater) {
    String type = event.getType();
    boolean keyUp = KEYUP.equals(type);
    boolean keyDown = KEYDOWN.equals(type);
    if (keyUp || keyDown) {
        int keyCode = event.getKeyCode();
        if (keyUp && keyCode == KeyCodes.KEY_ENTER) {
            // Commit the change.
            commit(context, parent, viewData, valueUpdater);
        } else if (keyUp && keyCode == KeyCodes.KEY_ESCAPE) {
            // Cancel edit mode.
            String originalText = viewData.getOriginal();
            if (viewData.isEditingAgain()) {
                viewData.setText(originalText);
                viewData.setEditing(false);
            } else {
                setViewData(context.getKey(), null);
            }/*w w  w  .  jav  a  2s . c o  m*/
            cancel(context, parent, value);
        } else {
            // Update the text in the view data on each key.
            updateViewData(parent, viewData, true);
        }
    } else if (BLUR.equals(type)) {
        // Commit the change. Ensure that we are blurring the input element
        // and
        // not the parent element itself.
        EventTarget eventTarget = event.getEventTarget();
        if (Element.is(eventTarget)) {
            Element target = Element.as(eventTarget);
            if ("input".equals(target.getTagName().toLowerCase(Locale.ROOT))) {
                commit(context, parent, viewData, valueUpdater);
            }
        }
    }
}

From source file:cc.alcina.framework.gwt.client.cell.FunctionalCell.java

License:Apache License

@Override
public void onBrowserEvent(Context context, Element parent, FunctionalTuple value, NativeEvent event,
        ValueUpdater<FunctionalTuple> valueUpdater) {
    super.onBrowserEvent(context, parent, value, event, valueUpdater);
    if (CLICK.equals(event.getType())) {
        EventTarget eventTarget = event.getEventTarget();
        if (!Element.is(eventTarget)) {
            return;
        }/*from  www. j  ava 2  s . c o m*/
        if (parent.getFirstChildElement().isOrHasChild(Element.as(eventTarget))) {
            event.stopPropagation();
        }
    }
}

From source file:cc.alcina.framework.gwt.client.widget.dialog.RelativePopupPanel.java

License:Apache License

/**
 * Does the event target one of the partner elements?
 * // w  w  w.j av  a2 s .  c o  m
 * @param event
 *            the native event
 * @return true if the event targets a partner
 */
private boolean eventTargetsPartner(NativeEvent event) {
    if (autoHidePartners == null) {
        return false;
    }
    EventTarget target = event.getEventTarget();
    if (Element.is(target)) {
        for (Element elem : autoHidePartners) {
            if (elem.isOrHasChild(Element.as(target))) {
                return true;
            }
        }
    }
    return false;
}

From source file:cc.alcina.framework.gwt.client.widget.dialog.RelativePopupPanel.java

License:Apache License

/**
 * Does the event target this popup?/*from   w  w  w  .  j  av a  2s  .co  m*/
 * 
 * @param event
 *            the native event
 * @return true if the event targets the popup
 */
private boolean eventTargetsPopup(NativeEvent event) {
    EventTarget target = event.getEventTarget();
    if (Element.is(target)) {
        Element eTarget = Element.as(target);
        return getElement().isOrHasChild(eTarget);
    }
    return false;
}

From source file:ch.cern.atlas.apvs.client.widget.EditTextCell.java

License:Apache License

private void editEvent(Context context, Element parent, String value, ViewData viewData, NativeEvent event,
        ValueUpdater<String> valueUpdater) {
    String type = event.getType();
    boolean keyUp = KEYUP.equals(type);
    boolean keyDown = KEYDOWN.equals(type);
    if (keyUp || keyDown) {
        int keyCode = event.getKeyCode();
        if (keyUp && keyCode == KeyCodes.KEY_ENTER) {
            // Commit the change.
            commit(context, parent, viewData, valueUpdater);
        } else if (keyUp && keyCode == KeyCodes.KEY_ESCAPE) {
            // Cancel edit mode.
            String originalText = viewData.getOriginal();
            if (viewData.isEditingAgain()) {
                viewData.setText(originalText);
                viewData.setEditing(false);
            } else {
                setViewData(context.getKey(), null);
            }/*from   w w  w.  ja  v  a2s  .  c  o  m*/
            cancel(context, parent, value);
        } else {
            // Update the text in the view data on each key.
            updateViewData(parent, viewData, true);
        }
    } else if (BLUR.equals(type)) {
        // Commit the change. Ensure that we are blurring the input element and
        // not the parent element itself.
        EventTarget eventTarget = event.getEventTarget();
        if (Element.is(eventTarget)) {
            Element target = Element.as(eventTarget);
            if ("input".equals(target.getTagName().toLowerCase())) {
                commit(context, parent, viewData, valueUpdater);
            }
        }
    }
}

From source file:com.agnie.gwt.common.client.rpc.MultiSelectEventTranslator.java

License:Open Source License

@Override
public SelectAction translateSelectionEvent(CellPreviewEvent<T> event) {
    NativeEvent nativeEvent = event.getNativeEvent();
    if ("click".equals(nativeEvent.getType())) {

        // Determine if we clicked on a checkbox.
        Element target = nativeEvent.getEventTarget().cast();
        if ("input".equals(target.getTagName().toLowerCase())) {
            final InputElement input = target.cast();
            if ("checkbox".equals(input.getType().toLowerCase())) {
                // Synchronize the checkbox with the current selection state.
                input.setChecked(event.getDisplay().getSelectionModel().isSelected(event.getValue()));
                return SelectAction.TOGGLE;
            }/*from w  ww.  j a  v  a 2s . com*/
        } else if (cmd != null) {
            cmd.setSelected(event.getValue());
            Scheduler.get().scheduleDeferred(cmd);
        }
    }
    return SelectAction.IGNORE;
}

From source file:com.alkacon.acacia.client.ButtonBarHandler.java

License:Open Source License

/**
 * Constructor.<p>//  w w w . j  av a 2s  .  co m
 */
private ButtonBarHandler() {

    Event.addNativePreviewHandler(new NativePreviewHandler() {

        public void onPreviewNativeEvent(NativePreviewEvent event) {

            NativeEvent nativeEvent = event.getNativeEvent();
            if (event.getTypeInt() != Event.ONMOUSEDOWN) {
                return;
            }
            if (nativeEvent == null) {
                return;
            }
            if (m_buttonBar == null) {
                return;
            }
            EventTarget target = nativeEvent.getEventTarget();

            if (Element.is(target)) {
                Element targetElement = Element.as(target);
                boolean clickedOnMenu = m_buttonBar.getElement().isOrHasChild(targetElement);
                if (!clickedOnMenu) {
                    closeAll();

                }
            }
        }
    });
    m_choiceTimer = new Timer() {

        @Override
        public void run() {

            closeAllChoices();
        }
    };
    m_buttonBarTimer = new Timer() {

        @Override
        public void run() {

            closeAll();
        }
    };
}

From source file:com.alkacon.geranium.client.ui.Popup.java

License:Open Source License

/**
 * Checks if the target of the given event is the caption or a child of the caption.<p>
 * /*from   w  w w. ja  va 2  s  . c o  m*/
 * @param event the event to check
 * 
 * @return <code>true</code> if the target of the given event is the caption <code>false</code> otherwise
 */
private boolean isCaptionEvent(NativeEvent event) {

    EventTarget target = event.getEventTarget();
    if (com.google.gwt.dom.client.Element.is(target)) {
        return m_caption.getElement().isOrHasChild(com.google.gwt.dom.client.Element.as(target));
    }
    return false;
}