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

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

Introduction

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

Prototype

@Override
@SuppressWarnings("unchecked")
public <T extends JavascriptObjectEquivalent> T cast() 

Source Link

Document

A helper method to enable cross-casting from any JavaScriptObject type to any other JavaScriptObject type.

Usage

From source file:com.sencha.gxt.widget.core.client.DatePicker.java

License:sencha.com license

protected void onKeyLeft(NativeEvent evt) {
    XEvent e = evt.cast();
    e.stopEvent();//w ww . jav  a 2  s  . c o m
    if (e.getCtrlOrMetaKey()) {
        showPrevMonth();
    } else {
        setValue(activeDate.addDays(-1).asDate(), false);
    }
}

From source file:com.sencha.gxt.widget.core.client.DatePicker.java

License:sencha.com license

protected void onKeyRight(NativeEvent evt) {
    XEvent e = evt.cast();
    e.stopEvent();//  w w  w .ja  v a 2  s  .  c  om
    if (e.getCtrlOrMetaKey()) {
        showNextMonth();
    } else {
        setValue(activeDate.addDays(1).asDate(), false);
    }
}

From source file:com.sencha.gxt.widget.core.client.DatePicker.java

License:sencha.com license

protected void onKeyUp(NativeEvent evt) {
    XEvent e = evt.cast();
    e.stopEvent();/*from   ww w  .java 2 s  .  c  om*/
    if (e.getCtrlOrMetaKey()) {
        showNextYear();
    } else {
        setValue(activeDate.addDays(-7).asDate(), false);
    }
}

From source file:com.sencha.gxt.widget.core.client.ListViewSelectionModel.java

License:sencha.com license

protected void onMouseClick(NativeEvent event) {
    XEvent e = event.cast();
    XElement target = e.getEventTargetEl();

    if (isLocked() || isInput(target)) {
        return;/*from w  w w  .  ja v  a 2  s .com*/
    }

    if (fireSelectionChangeOnClick) {
        fireSelectionChange();
        fireSelectionChangeOnClick = false;
    }

    int index = listView.findElementIndex(target);

    if (index == -1) {
        deselectAll();
        return;
    }
    if (selectionMode == SelectionMode.MULTI) {
        M sel = listStore.get(index);
        if (e.getCtrlOrMetaKey() && isSelected(sel)) {
            // reset the starting location of the click
            indexOnSelectNoShift = index;
            doDeselect(Collections.singletonList(sel), false);
        } else if (e.getCtrlOrMetaKey()) {
            // reset the starting location of the click
            indexOnSelectNoShift = index;
            doSelect(Collections.singletonList(sel), true, false);
            listView.focusItem(index);
        } else if (isSelected(sel) && !e.getShiftKey() && !e.getCtrlOrMetaKey() && selected.size() > 1) {
            doSelect(Collections.singletonList(sel), false, false);
            listView.focusItem(index);
        }
    }
}

From source file:com.sencha.gxt.widget.core.client.tree.TreeSelectionModel.java

License:sencha.com license

protected void onMouseClick(NativeEvent event) {
    XEvent e = event.cast();

    if (isLocked()) {
        return;/*from   w ww .j  a  v  a  2s.  c  om*/
    }

    if (fireSelectionChangeOnClick) {
        fireSelectionChange();
        fireSelectionChangeOnClick = false;
    }

    if (selectionMode == SelectionMode.MULTI) {
        TreeNode<M> node = tree.findNode((Element) e.getEventTarget().cast());
        // on dnd prevent drag the node will be null
        if (node != null) {
            M sel = node.getModel();
            if (e.getCtrlOrMetaKey() && isSelected(sel)) {
                doDeselect(Collections.singletonList(sel), false);
                tree.focus();

                // reset the starting location of the click when meta is used during a multiselect
                lastSelected = sel;
            } else if (e.getCtrlOrMetaKey()) {
                doSelect(Collections.singletonList(sel), true, false);
                tree.focus();

                // reset the starting location of the click when meta is used during a multiselect
                lastSelected = sel;
            } else if (isSelected(sel) && !e.getShiftKey() && !e.getCtrlOrMetaKey() && selected.size() > 0) {
                doSelect(Collections.singletonList(sel), false, false);
                tree.focus();
            }
        }
    }
}

From source file:com.sencha.gxt.widget.core.client.tree.TreeSelectionModel.java

License:sencha.com license

protected void onMouseDown(NativeEvent event) {
    XEvent e = event.cast();
    XElement target = e.getEventTargetEl();
    TreeNode<M> selNode = tree.findNode(target);

    if (selNode == null || tree == null || isLocked()) {
        return;// w w  w .  j  av  a2  s .  co m
    }

    M sel = selNode.getModel();
    if (!tree.getView().isSelectableTarget(sel, target)) {
        return;
    }

    mouseDown = true;

    boolean isSelected = isSelected(sel);
    boolean isMeta = e.getCtrlOrMetaKey();
    boolean isShift = e.getShiftKey();

    if (e.isRightClick() && isSelected) {
        return;
    } else {
        switch (selectionMode) {
        case SIMPLE:
            tree.focus();
            if (isSelected(sel)) {
                deselect(sel);
            } else {
                doSelect(Collections.singletonList(sel), true, false);
            }
            break;

        case SINGLE:
            tree.focus();
            if (isMeta && isSelected) {
                deselect(sel);
            } else if (!isSelected) {
                select(sel, false);
            }
            break;

        case MULTI:
            if (isMeta) {
                break;
            }

            if (isShift && lastSelected != null) {
                List<M> selectedItems = new ArrayList<M>();

                // from last selected or firstly selected
                TreeNode<M> lastSelTreeNode = tree.findNode(lastSelected);
                XElement lastSelTreeEl = tree.getView().getElement(lastSelTreeNode);

                // to selected or secondly selected
                TreeNode<M> selTreeNode = tree.findNode(sel);
                XElement selTreeNodeEl = tree.getView().getElement(selTreeNode);

                // holding shift down, selecting the same item again, selecting itself
                if (sel == lastSelected) {
                    tree.focus();
                    doSelect(Collections.singletonList(sel), false, false);

                } else if (lastSelTreeEl != null && selTreeNodeEl != null) {
                    // add the last selected, as its not added during the walk
                    selectedItems.add(lastSelected);

                    // After walking reset back to previously selected
                    final M previouslyLastSelected = lastSelected;

                    // This deals with flipping directions
                    if (lastSelTreeEl.getAbsoluteTop() < selTreeNodeEl.getAbsoluteTop()) {
                        // down selection
                        M next = next();
                        while (next != null) {
                            selectedItems.add(next);
                            lastSelected = next;
                            if (next == sel)
                                break;
                            next = next();
                        }

                    } else {
                        // up selection
                        M prev = prev();
                        while (prev != null) {
                            selectedItems.add(prev);
                            lastSelected = prev;
                            if (prev == sel)
                                break;
                            prev = prev();
                        }
                    }

                    tree.focus();
                    doSelect(selectedItems, false, false);

                    // change back to last selected, the walking causes this need
                    lastSelected = previouslyLastSelected;
                }

            } else if (!isSelected(sel)) {
                tree.focus();
                doSelect(Collections.singletonList(sel), false, false);

                // reset the starting location of multi select
                lastSelected = sel;
            }
            break;
        }
    }

    mouseDown = false;
}

From source file:org.appverse.web.framework.frontend.gwt.theme.bluetouch.client.button.AppverseWebButtonCellDefaultAppearance.java

License:sencha.com license

@Override
public void onOver(XElement parent, boolean over, NativeEvent event) {
    frame.onOver(parent, over, (Event) event.cast());
    parent.setClassName(style.over(), over);
}

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

License:Open Source License

protected void onKeyUp(NativeEvent ke) {
    NativeTreeEvent e = ke.cast();
    e.preventDefault();//from w  w  w  .  java 2s .c o  m
    Node prev = prev();
    if (prev != null) {
        doSingleSelect(prev, false);
        tree.scrollIntoView(prev);
    }
}