Example usage for com.google.gwt.event.dom.client DragStartEvent getType

List of usage examples for com.google.gwt.event.dom.client DragStartEvent getType

Introduction

In this page you can find the example usage for com.google.gwt.event.dom.client DragStartEvent getType.

Prototype

public static Type<DragStartHandler> getType() 

Source Link

Document

Gets the event type associated with drag start events.

Usage

From source file:co.fxl.gui.gwt.GWTElement.java

License:Open Source License

@SuppressWarnings("unchecked")
public R addDragStartListener(final IDraggable.IDragStartListener l) {
    draggable(true);/*from  www  . ja  va 2 s  .c o  m*/
    container.widget.addDomHandler(new DragStartHandler() {
        @Override
        public void onDragStart(final DragStartEvent event) {
            event.setData("text", "dragging");
            l.onDragStart(new IDragStartEvent() {

                @Override
                public int offsetX() {
                    return event.getNativeEvent().getClientX()
                            - container.widget.getElement().getAbsoluteLeft();
                }

                @Override
                public int offsetY() {
                    return event.getNativeEvent().getClientY() - container.widget.getElement().getAbsoluteTop();
                }

                @Override
                public IDragStartEvent dragImage(IElement<?> element) {
                    GWTElement<?, ?> gwtElement = (GWTElement<?, ?>) element;
                    Element domElement = gwtElement.getDOMElement();
                    if (domElement == null)
                        throw new RuntimeException("drag image element is null");
                    event.getDataTransfer().setDragImage(domElement, 0, 0);
                    return this;
                }

                @Override
                public IDragStartEvent iD(String iD) {
                    event.setData("text", iD);
                    return this;
                }
            });
        }
    }, DragStartEvent.getType());
    container.widget.addDomHandler(new DragEndHandler() {

        @Override
        public void onDragEnd(DragEndEvent event) {
            GWTDisplay.instance.resetScrollPanelTop();
            l.onDragEnd();
        }

    }, DragEndEvent.getType());
    return (R) this;
}

From source file:com.codenvy.ide.client.elements.widgets.element.ElementViewImpl.java

License:Open Source License

/** {@inheritDoc} */
@Override
public HandlerRegistration addDragStartHandler(DragStartHandler handler) {
    return addDomHandler(handler, DragStartEvent.getType());
}

From source file:com.github.gwtbootstrap.client.ui.Button.java

License:Apache License

/**
 * {@inheritDoc}
 */
public HandlerRegistration addDragStartHandler(DragStartHandler handler) {
    return addDomHandler(handler, DragStartEvent.getType());
}

From source file:com.gwtskeleton.client.application.widgets.booksclassifier.BooksClassifierView.java

License:Apache License

@Override
public void addBooks(List<Book> books) {
    for (Book book : books) {
        ListGroupItem item = new ListGroupItem();
        item.setText(book.getName());/*from w  w w .ja v a 2 s .  co m*/
        item.getElement().setDraggable(Element.DRAGGABLE_TRUE);
        item.addDomHandler(dragStartHandler, DragStartEvent.getType());
        list1.add(item);
    }
}

From source file:com.ponysdk.core.terminal.ui.PTWidget.java

License:Apache License

private void addDomHandler(final ReaderBuffer buffer, final DomHandlerType domHandlerType) {
    if (DomHandlerType.CLICK == domHandlerType) {
        uiObject.addDomHandler(event -> triggerMouseEvent(domHandlerType, event), ClickEvent.getType());
    } else if (DomHandlerType.DOUBLE_CLICK == domHandlerType) {
        uiObject.addDomHandler(event -> triggerMouseEvent(domHandlerType, event), DoubleClickEvent.getType());
    } else if (DomHandlerType.MOUSE_OVER == domHandlerType) {
        uiObject.addDomHandler(event -> triggerMouseEvent(domHandlerType, event), MouseOverEvent.getType());
    } else if (DomHandlerType.MOUSE_OUT == domHandlerType) {
        uiObject.addDomHandler(event -> triggerMouseEvent(domHandlerType, event), MouseOutEvent.getType());
    } else if (DomHandlerType.MOUSE_DOWN == domHandlerType) {
        uiObject.addDomHandler(event -> triggerMouseEvent(domHandlerType, event), MouseDownEvent.getType());
    } else if (DomHandlerType.MOUSE_UP == domHandlerType) {
        uiObject.addDomHandler(event -> triggerMouseEvent(domHandlerType, event), MouseUpEvent.getType());
    } else if (DomHandlerType.MOUSE_WHELL == domHandlerType) {
        uiObject.addDomHandler(event -> triggerMouseWhellEvent(domHandlerType, event),
                MouseWheelEvent.getType());
    } else if (DomHandlerType.BLUR == domHandlerType) {
        uiObject.addDomHandler(event -> triggerDomEvent(domHandlerType, event), BlurEvent.getType());
    } else if (DomHandlerType.FOCUS == domHandlerType) {
        uiObject.addDomHandler(event -> triggerDomEvent(domHandlerType, event), FocusEvent.getType());
    } else if (DomHandlerType.KEY_PRESS == domHandlerType) {
        final BinaryModel binaryModel = buffer.readBinaryModel();
        final JSONArray keyFilter;
        if (ServerToClientModel.KEY_FILTER == binaryModel.getModel()) {
            keyFilter = binaryModel.getJsonObject().get(ClientToServerModel.KEY_FILTER.toStringValue())
                    .isArray();/*from w  w w .  ja v  a  2 s.c  o  m*/
        } else {
            buffer.rewind(binaryModel);
            keyFilter = null;
        }

        uiObject.addDomHandler(event -> {
            final PTInstruction eventInstruction = buildEventInstruction(domHandlerType);
            eventInstruction.put(ClientToServerModel.VALUE_KEY, event.getNativeEvent().getKeyCode());

            if (keyFilter != null) {
                for (int i = 0; i < keyFilter.size(); i++) {
                    final JSONNumber keyCode = keyFilter.get(i).isNumber();
                    if (keyCode.doubleValue() == event.getNativeEvent().getKeyCode()) {
                        uiBuilder.sendDataToServer(uiObject, eventInstruction);
                        break;
                    }
                }
            } else {
                uiBuilder.sendDataToServer(uiObject, eventInstruction);
            }

            preventOrStopEvent(event);
        }, KeyPressEvent.getType());
    } else if (DomHandlerType.KEY_DOWN == domHandlerType) {
        final BinaryModel binaryModel = buffer.readBinaryModel();
        final JSONArray keyFilter;
        if (ServerToClientModel.KEY_FILTER == binaryModel.getModel()) {
            keyFilter = binaryModel.getJsonObject().get(ClientToServerModel.KEY_FILTER.toStringValue())
                    .isArray();
        } else {
            buffer.rewind(binaryModel);
            keyFilter = null;
        }

        uiObject.addDomHandler(event -> {
            final PTInstruction eventInstruction = buildEventInstruction(domHandlerType);
            eventInstruction.put(ClientToServerModel.VALUE_KEY, event.getNativeKeyCode());

            if (keyFilter != null) {
                for (int i = 0; i < keyFilter.size(); i++) {
                    final JSONNumber keyCode = keyFilter.get(i).isNumber();
                    if (keyCode.doubleValue() == event.getNativeKeyCode()) {
                        uiBuilder.sendDataToServer(uiObject, eventInstruction);
                        break;
                    }
                }
            } else {
                uiBuilder.sendDataToServer(uiObject, eventInstruction);
            }

            preventOrStopEvent(event);
        }, KeyDownEvent.getType());
    } else if (DomHandlerType.KEY_UP == domHandlerType) {
        final BinaryModel keyUpModel = buffer.readBinaryModel();
        final JSONArray keyUpFilter;
        if (ServerToClientModel.KEY_FILTER == keyUpModel.getModel()) {
            keyUpFilter = keyUpModel.getJsonObject().get(ClientToServerModel.KEY_FILTER.toStringValue())
                    .isArray();
        } else {
            buffer.rewind(keyUpModel);
            keyUpFilter = null;
        }

        if (uiObject instanceof TextBoxBase) {
            final TextBoxBase textBox = (TextBoxBase) uiObject;
            textBox.addKeyUpHandler(event -> {
                final PTInstruction changeHandlerInstruction = new PTInstruction(getObjectID());
                changeHandlerInstruction.put(ClientToServerModel.HANDLER_STRING_VALUE_CHANGE,
                        textBox.getText());

                final PTInstruction eventInstruction = buildEventInstruction(domHandlerType);
                eventInstruction.put(ClientToServerModel.VALUE_KEY, event.getNativeKeyCode());

                if (keyUpFilter != null) {
                    for (int i = 0; i < keyUpFilter.size(); i++) {
                        final JSONNumber keyCode = keyUpFilter.get(i).isNumber();
                        if (keyCode.doubleValue() == event.getNativeKeyCode()) {
                            uiBuilder.sendDataToServer(changeHandlerInstruction);
                            uiBuilder.sendDataToServer(eventInstruction);
                            break;
                        }
                    }
                } else {
                    uiBuilder.sendDataToServer(changeHandlerInstruction);
                    uiBuilder.sendDataToServer(eventInstruction);
                }
                preventOrStopEvent(event);
            });
        } else {
            uiObject.addDomHandler(event -> {
                final PTInstruction eventInstruction = buildEventInstruction(domHandlerType);
                eventInstruction.put(ClientToServerModel.VALUE_KEY, event.getNativeKeyCode());

                if (keyUpFilter != null) {
                    for (int i = 0; i < keyUpFilter.size(); i++) {
                        final JSONNumber keyCode = keyUpFilter.get(i).isNumber();
                        if (keyCode.doubleValue() == event.getNativeKeyCode()) {
                            uiBuilder.sendDataToServer(uiObject, eventInstruction);
                            break;
                        }
                    }
                } else {
                    uiBuilder.sendDataToServer(uiObject, eventInstruction);
                }
                preventOrStopEvent(event);
            }, KeyUpEvent.getType());
        }
    } else if (DomHandlerType.DRAG_START == domHandlerType) {
        uiObject.getElement().setDraggable(Element.DRAGGABLE_TRUE);
        uiObject.addBitlessDomHandler(event -> {
            event.setData("text", String.valueOf(getObjectID()));
            event.getDataTransfer().setDragImage(uiObject.getElement(), 10, 10);
            triggerDomEvent(domHandlerType, event);
        }, DragStartEvent.getType());
    } else if (DomHandlerType.DRAG_END == domHandlerType) {
        uiObject.addBitlessDomHandler(event -> triggerDomEvent(domHandlerType, event), DragEndEvent.getType());
    } else if (DomHandlerType.DRAG_ENTER == domHandlerType) {
        uiObject.addBitlessDomHandler(event -> triggerDomEvent(domHandlerType, event),
                DragEnterEvent.getType());
    } else if (DomHandlerType.DRAG_LEAVE == domHandlerType) {
        uiObject.addBitlessDomHandler(event -> triggerDomEvent(domHandlerType, event),
                DragLeaveEvent.getType());
    } else if (DomHandlerType.DROP == domHandlerType) {
        uiObject.addBitlessDomHandler(event -> {
            // required by GWT api
            // triggerDomEvent(addHandler.getObjectID(), domHandlerType);
        }, DragOverEvent.getType());

        uiObject.addBitlessDomHandler(event -> {
            event.preventDefault();
            final String dragWidgetID = event.getData("text");
            final PTInstruction eventInstruction = buildEventInstruction(domHandlerType);
            if (dragWidgetID != null)
                eventInstruction.put(ClientToServerModel.DRAG_SRC, Long.parseLong(dragWidgetID));
            uiBuilder.sendDataToServer(uiObject, eventInstruction);
        }, DropEvent.getType());
    } else if (DomHandlerType.CONTEXT_MENU == domHandlerType) {
        uiObject.addDomHandler(event -> triggerDomEvent(domHandlerType, event), ContextMenuEvent.getType());
    } else {
        log.info("Handler not supported #" + domHandlerType);
    }
}

From source file:com.ponysdk.ui.terminal.ui.PTWidget.java

License:Apache License

private void addDomHandler(final PTInstruction addHandler, final Widget widget, final int domHandlerType,
        final UIService uiService) {

    final DomHandlerType h = DomHandlerType.values()[domHandlerType];
    switch (h) {/*from   w ww .  j  a  v  a 2  s.  c  om*/
    case CLICK:
        widget.addDomHandler(new ClickHandler() {

            @Override
            public void onClick(final ClickEvent event) {
                triggerOnClick(addHandler, widget, domHandlerType, uiService, event);
            }

        }, ClickEvent.getType());
        break;
    case MOUSE_OVER:
        widget.addDomHandler(new MouseOverHandler() {

            @Override
            public void onMouseOver(final MouseOverEvent event) {
                triggerDomEvent(addHandler, domHandlerType, uiService);
            }

        }, MouseOverEvent.getType());
        break;
    case BLUR:
        widget.addDomHandler(new BlurHandler() {

            @Override
            public void onBlur(final BlurEvent event) {
                triggerDomEvent(addHandler, domHandlerType, uiService);
            }

        }, BlurEvent.getType());
        break;
    case FOCUS:
        widget.addDomHandler(new FocusHandler() {

            @Override
            public void onFocus(final FocusEvent event) {
                triggerDomEvent(addHandler, domHandlerType, uiService);
            }

        }, FocusEvent.getType());
        break;
    case MOUSE_OUT:
        widget.addDomHandler(new MouseOutHandler() {

            @Override
            public void onMouseOut(final MouseOutEvent event) {
                triggerDomEvent(addHandler, domHandlerType, uiService);
            }

        }, MouseOutEvent.getType());
        break;
    case MOUSE_DOWN:
        widget.addDomHandler(new MouseDownHandler() {

            @Override
            public void onMouseDown(final MouseDownEvent event) {
                triggerDomEvent(addHandler, domHandlerType, uiService);
            }

        }, MouseDownEvent.getType());
        break;
    case MOUSE_UP:
        widget.addDomHandler(new MouseUpHandler() {

            @Override
            public void onMouseUp(final MouseUpEvent event) {
                triggerDomEvent(addHandler, domHandlerType, uiService);
            }

        }, MouseUpEvent.getType());
        break;
    case KEY_PRESS:
        widget.addDomHandler(new KeyPressHandler() {

            @Override
            public void onKeyPress(final KeyPressEvent event) {
                triggerOnKeyPress(addHandler, domHandlerType, uiService, event);
            }

        }, KeyPressEvent.getType());
        break;
    case KEY_UP:

        if (widget instanceof TextBoxBase) {
            final TextBoxBase textBox = (TextBoxBase) widget;
            textBox.addKeyUpHandler(new KeyUpHandler() {

                @Override
                public void onKeyUp(final KeyUpEvent event) {
                    final PTInstruction changeHandlerInstruction = new PTInstruction();
                    changeHandlerInstruction.setObjectID(addHandler.getObjectID());
                    changeHandlerInstruction.put(TYPE.KEY, TYPE.KEY_.EVENT);
                    changeHandlerInstruction.put(HANDLER.KEY, HANDLER.KEY_.STRING_VALUE_CHANGE_HANDLER);
                    changeHandlerInstruction.put(PROPERTY.VALUE, textBox.getText());

                    final PTInstruction eventInstruction = buildEventInstruction(addHandler, domHandlerType);
                    eventInstruction.put(PROPERTY.VALUE, event.getNativeEvent().getKeyCode());

                    if (addHandler.containsKey(PROPERTY.KEY_FILTER)) {
                        final JSONArray jsonArray = addHandler.get(PROPERTY.KEY_FILTER).isArray();
                        for (int i = 0; i < jsonArray.size(); i++) {
                            final JSONNumber keyCode = jsonArray.get(i).isNumber();
                            if (keyCode.doubleValue() == event.getNativeEvent().getKeyCode()) {
                                uiService.stackEvent(changeHandlerInstruction);
                                uiService.stackEvent(eventInstruction);
                                uiService.flushEvents();
                                break;
                            }
                        }
                    } else {
                        uiService.stackEvent(changeHandlerInstruction);
                        uiService.stackEvent(eventInstruction);
                        uiService.flushEvents();
                    }
                }
            });
        } else {
            widget.addDomHandler(new KeyUpHandler() {

                @Override
                public void onKeyUp(final KeyUpEvent event) {
                    final PTInstruction eventInstruction = buildEventInstruction(addHandler, domHandlerType);
                    eventInstruction.put(PROPERTY.VALUE, event.getNativeEvent().getKeyCode());
                    if (eventInstruction.containsKey(PROPERTY.KEY_FILTER)) {
                        final JSONArray jsonArray = addHandler.get(PROPERTY.KEY_FILTER).isArray();
                        for (int i = 0; i < jsonArray.size(); i++) {
                            final JSONNumber keyCode = jsonArray.get(i).isNumber();
                            if (keyCode.doubleValue() == event.getNativeEvent().getKeyCode()) {
                                uiService.triggerEvent(eventInstruction);
                                break;
                            }
                        }
                    } else {
                        uiService.triggerEvent(eventInstruction);
                    }
                }
            }, KeyUpEvent.getType());
        }
        break;
    case DRAG_START:
        widget.getElement().setDraggable(Element.DRAGGABLE_TRUE);
        widget.addBitlessDomHandler(new DragStartHandler() {

            @Override
            public void onDragStart(final DragStartEvent event) {
                event.setData("text", Long.toString(addHandler.getObjectID()));
                event.getDataTransfer().setDragImage(uiObject.getElement(), 10, 10);
                triggerDomEvent(addHandler, domHandlerType, uiService);
            }
        }, DragStartEvent.getType());
        break;
    case DRAG_END:
        widget.addBitlessDomHandler(new DragEndHandler() {

            @Override
            public void onDragEnd(final DragEndEvent event) {
                triggerDomEvent(addHandler, domHandlerType, uiService);
            }
        }, DragEndEvent.getType());
        break;
    case DRAG_ENTER:
        widget.addBitlessDomHandler(new DragEnterHandler() {

            @Override
            public void onDragEnter(final DragEnterEvent event) {
                triggerDomEvent(addHandler, domHandlerType, uiService);
            }
        }, DragEnterEvent.getType());
        break;
    case DRAG_LEAVE:
        widget.addBitlessDomHandler(new DragLeaveHandler() {

            @Override
            public void onDragLeave(final DragLeaveEvent event) {
                triggerDomEvent(addHandler, domHandlerType, uiService);
            }
        }, DragLeaveEvent.getType());
        break;
    case DROP:
        widget.addBitlessDomHandler(new DragOverHandler() {

            @Override
            public void onDragOver(final DragOverEvent event) {
                // required by GWT api
                // triggerDomEvent(addHandler, domHandlerType, uiService);
            }
        }, DragOverEvent.getType());

        widget.addBitlessDomHandler(new DropHandler() {

            @Override
            public void onDrop(final DropEvent event) {
                event.preventDefault();
                final String dragWidgetID = event.getData("text");
                final PTInstruction eventInstruction = buildEventInstruction(addHandler, domHandlerType);
                if (dragWidgetID != null)
                    eventInstruction.put(PROPERTY.DRAG_SRC, Long.parseLong(dragWidgetID));
                uiService.triggerEvent(eventInstruction);
            }
        }, DropEvent.getType());
        break;
    default:
        log.info("Handler not supported #" + h);
        break;
    }
}

From source file:de.swm.commons.mobile.client.widgets.LoadingIndicatorPopup.java

License:Apache License

/**
 * Default constructor./*from  w  w w  .  java2  s .com*/
 */
public LoadingIndicatorPopup() {
    this(false);
    this.addDomHandler(new ClickHandler() {
        @Override
        public void onClick(ClickEvent event) {
            if (event != null) {
                event.stopPropagation();
            }
        }
    }, ClickEvent.getType());

    this.addDomHandler(new DragStartHandler() {
        @Override
        public void onDragStart(DragStartEvent event) {
            if (event != null) {
                event.stopPropagation();
            }
        }
    }, DragStartEvent.getType());

    this.addDomHandler(new DragEndHandler() {
        @Override
        public void onDragEnd(DragEndEvent event) {
            if (event != null) {
                event.stopPropagation();
            }
        }
    }, DragEndEvent.getType());

}

From source file:fr.putnami.pwt.core.widget.client.Anchor.java

License:Open Source License

@Override
public HandlerRegistration addDragStartHandler(DragStartHandler handler) {
    return this.addBitlessDomHandler(handler, DragStartEvent.getType());
}

From source file:fr.putnami.pwt.core.widget.client.base.AbstractInput.java

License:Open Source License

@Override
public com.google.gwt.event.shared.HandlerRegistration addDragStartHandler(DragStartHandler handler) {
    return this.addBitlessDomHandler(handler, DragStartEvent.getType());
}

From source file:geogebra.web.gui.view.algebra.RadioButtonTreeItem.java

License:Open Source License

public void setDraggable() {

    getElement().setAttribute("position", "absolute");
    addDomHandler(new DragStartHandler() {

        public void onDragStart(DragStartEvent event) {
            event.setData("text", "draggginggg");
            event.getDataTransfer().setDragImage(getElement(), 10, 10);
            event.stopPropagation();// w ww .  j  a va 2 s .  c  o  m
            ((AlgebraViewW) av).dragStart(event, geo);
        }
    }, DragStartEvent.getType());

}