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

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

Introduction

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

Prototype

@Deprecated
public static int getAbsoluteLeft(Element elem) 

Source Link

Document

Gets an element's absolute left coordinate in the document's coordinate system.

Usage

From source file:asquare.gwt.tests.coordinates.client.Demo.java

License:Apache License

public void onModuleLoad() {
    DialogBox dialog = new DialogBox() {
        {/*ww w  .  j a  v a2 s  .c  o m*/
            addDomHandler(new MouseDownHandler() {
                public void onMouseDown(MouseDownEvent event) {
                    Debug.println("DialogBox.onMouseDown(" + event.getX() + "," + event.getY() + ")");
                }
            }, MouseDownEvent.getType());
        }
    };
    dialog.setText("Dialog Caption");
    Image image = new Image("one.gif");
    DOM.setStyleAttribute(image.getElement(), "height", "100px");
    DOM.setStyleAttribute(image.getElement(), "width", "200px");

    dialog.setWidget(image);
    dialog.show();
    dialog.setPopupPosition(200, 200);

    Debug.enable();
    if (!GWT.isScript())
        DebugConsole.getInstance().disable();

    new DebugHierarchyInspector().install();
    new DebugElementDumpInspector().install();
    new DebugEventListener('a', Event.ONMOUSEDOWN, "Absolute position inspector") {
        protected void doEvent(Event event) {
            Element target = DOM.eventGetTarget(event);
            Debug.println(getTagName(target) + "[absLeft=" + DOM.getAbsoluteLeft(target) + ",absTop="
                    + DOM.getAbsoluteTop(target) + "]");
        }
    }.install();

    new DebugEventListener('o', Event.ONMOUSEDOWN, "Offset hierarchy inspector") {
        protected void doEvent(Event event) {
            Element target = DOM.eventGetTarget(event);
            printOffsetHierarchy(target);
        }
    }.install();

    new DebugEventListener().install();
}

From source file:asquare.gwt.tk.client.ui.behavior.MouseEventImpl.java

License:Apache License

/**
 * @param source the widget which is receiving the mouse event
 * @param mouseEvent a <code>mousedown</code>, <code>mousemove</code> or <code>mouseup</code> event
 * @param type the DOM event type// w  w w  . j av a  2  s. com
 * @param previewPhase <code>true</code> if the event was caught in event preview
 */
public MouseEventImpl(Widget source, Event mouseEvent, int type, boolean previewPhase) {
    super(source, mouseEvent, type, previewPhase);
    Element e = source.getElement();
    m_clientX = DOM.eventGetClientX(mouseEvent);
    m_clientY = DOM.eventGetClientY(mouseEvent);
    m_absoluteX = Window.getScrollLeft() + m_clientX;
    m_absoluteY = Window.getScrollTop() + m_clientY;
    m_widgetLeft = DOM.getAbsoluteLeft(source.getElement());
    m_widgetTop = DOM.getAbsoluteTop(source.getElement());

    /*
     * Translate the coordinates into the source widget's coordinate space
     * see MouseListenerCollection.fireMouseEvent()
     */
    m_widgetX = m_absoluteX - m_widgetLeft + DOM.getElementPropertyInt(e, "scrollLeft");
    m_widgetY = m_absoluteY - m_widgetTop + DOM.getElementPropertyInt(e, "scrollTop");
}

From source file:asquare.gwt.tk.uitest.alertdialog.client.Demo.java

License:Apache License

public void onModuleLoad() {
    Debug.enable();//from www  .j  a va2  s .  co m

    new DebugEventListener('x', Event.ONMOUSEDOWN, null) {
        @Override
        protected void doEvent(Event event) {
            Element target = DOM.eventGetTarget(event);
            Debug.println("target=" + DebugUtil.prettyPrintElement(target));
            int screenX = DOM.eventGetScreenX(event);
            int screenY = DOM.eventGetScreenY(event);
            int clientX = DOM.eventGetClientX(event);
            int clientY = DOM.eventGetClientY(event);
            int absLeft = DOM.getAbsoluteLeft(target);
            int absTop = DOM.getAbsoluteTop(target);
            int offsetLeft = getOffsetLeft(target);
            int offsetTop = getOffsetTop(target);
            int docScrollX = Window.getScrollLeft();
            int docScrollY = Window.getScrollTop();
            Debug.println("screenX=" + screenX + ",screenY=" + screenY + ",clientX=" + clientX + ",clientY="
                    + clientY + ",absLeft=" + absLeft + ",absTop=" + absTop + ",offsetLeft=" + offsetLeft
                    + ",offsetTop=" + offsetTop + ",docScrollX=" + docScrollX + ",docScrollY=" + docScrollY);
        }
    }.install();
    new DebugEventListener('z', Event.ONMOUSEDOWN, "Offset hierarchy inspector") {
        @Override
        protected void doEvent(Event event) {
            Element target = DOM.eventGetTarget(event);
            printOffsetTopHierarchy(target);
        }
    }.install();

    new DebugHierarchyInspector().install();

    new DebugElementDumpInspector().install();

    new DebugEventListener(Event.ONMOUSEDOWN | Event.ONMOUSEUP).install();

    if (!GWT.isScript()) {
        DebugConsole.getInstance().disable();
    }

    final Button button = new Button();
    button.setText("Default Info dialog");
    button.addClickHandler(new ClickHandler() {
        public void onClick(ClickEvent event) {
            final AlertDialog alert = AlertDialog.createInfo(new Command() {
                public void execute() {
                    Debug.println("OK clicked");
                }
            }, "Info Dialog", "this is a default info dialog");
            alert.show();
        }
    });
    RootPanel.get().add(button);

    Command showDialog = new Command() {
        private AlertDialog m_dialog;

        public void execute() {
            if (m_dialog == null) {
                m_dialog = AlertDialog.createWarning(this, "Caption text", null);
                ScrollPanel message = new ScrollPanel();
                message.setAlwaysShowScrollBars(true);
                message.setWidth("100%");
                message.setHeight("100px");
                message.setWidget(new Label(
                        "These packages contain reference information about the main GWT user interface and utility classes. For higher-level explanations of how to take advantage of all this stuff, check out the Developer Guide. Among other things, there's a handy widget gallery and an explanation of how remote procedure calls work.These packages contain reference information about the main GWT user interface and utility classes. For higher-level explanations of how to take advantage of all this stuff, check out the Developer Guide. Among other things, there's a handy widget gallery and an explanation of how remote procedure calls work."));
                m_dialog.setMessage(message);
                m_dialog.setSize("400px", "300px");
                m_dialog.addController(new ControllerAdaptor(Controller.class, Event.ONMOUSEDOWN) {
                    @Override
                    public void onBrowserEvent(Widget widget, Event event) {
                        int x = DomUtil.eventGetAbsoluteX(event) - DOM.getAbsoluteLeft(widget.getElement());
                        int y = DomUtil.eventGetAbsoluteY(event) - DOM.getAbsoluteTop(widget.getElement());
                        Debug.println("onMouseDown(" + x + "," + y + ")");
                    }
                });
            }
            m_dialog.show();
        }
    };
    showDialog.execute();
}

From source file:asquare.gwt.tk.uitest.modaldialog.client.Demo.java

License:Apache License

public void onModuleLoad() {
    AlertDialog dialog = new AlertDialog();
    dialog.setCaptionText("Caption Text", false);
    dialog.addButton("Save", 's', null, AlertDialog.BUTTON_DEFAULT);
    dialog.addButton("Don't Save", 'd', null, AlertDialog.BUTTON_PLAIN);
    dialog.addButton("Cancel", 'c', null, AlertDialog.BUTTON_CANCEL);
    dialog.removeController(dialog.getController(ModalDialog.PositionDialogController.class));
    dialog.setSize("400px", "200px");
    dialog.setPopupPosition(200, 200);/*from   w ww.j  a va 2 s.co  m*/
    dialog.addController(new ControllerAdaptor(Event.ONMOUSEDOWN, Controller.class) {
        public void onBrowserEvent(Widget widget, Event event) {
            int x = DomUtil.eventGetAbsoluteX(event) - DOM.getAbsoluteLeft(widget.getElement());
            int y = DomUtil.eventGetAbsoluteY(event) - DOM.getAbsoluteTop(widget.getElement());
            Debug.println("onMouseDown(" + x + "," + y + ")");
        }
    });
    dialog.show();

    new DebugEventListener('x', Event.ONMOUSEDOWN, null) {
        protected void doEvent(Event event) {
            Element target = DOM.eventGetTarget(event);
            Debug.println("target=" + DebugUtil.prettyPrintElement(target));
            int screenX = DOM.eventGetScreenX(event);
            int screenY = DOM.eventGetScreenY(event);
            int clientX = DOM.eventGetClientX(event);
            int clientY = DOM.eventGetClientY(event);
            int absLeft = DOM.getAbsoluteLeft(target);
            int absTop = DOM.getAbsoluteTop(target);
            int offsetLeft = getOffsetLeft(target);
            int offsetTop = getOffsetTop(target);
            int docScrollX = DomUtil.getViewportScrollX();
            int docScrollY = DomUtil.getViewportScrollY();
            Debug.println("screenX=" + screenX + ",screenY=" + screenY + ",clientX=" + clientX + ",clientY="
                    + clientY + ",absLeft=" + absLeft + ",absTop=" + absTop + ",offsetLeft=" + offsetLeft
                    + ",offsetTop=" + offsetTop + ",docScrollX=" + docScrollX + ",docScrollY=" + docScrollY);
        }
    }.install();
    new DebugEventListener('z', Event.ONMOUSEDOWN, "Offset hierarchy inspector") {
        protected void doEvent(Event event) {
            Element target = DOM.eventGetTarget(event);
            printOffsetTopHierarchy(target);
        }
    }.install();

    new DebugHierarchyInspector().install();

    new DebugElementDumpInspector().install();

    new DebugEventListener(Event.ONMOUSEDOWN | Event.ONMOUSEUP).install();

    Debug.enable();
    if (!GWT.isScript()) {
        DebugConsole.getInstance().disable();
    }
}

From source file:cc.alcina.framework.gwt.client.widget.complex.SliderBar.java

License:Apache License

/**
 * Slide the knob to a new location.//from  ww  w . j a  v  a  2 s .c  o m
 *
 * @param event
 *            the mouse event
 */
private void slideKnob(Event event) {
    int d = vertical ? DOM.eventGetClientY(event) + Window.getScrollTop()
            : DOM.eventGetClientX(event) + Window.getScrollLeft();
    if (d > 0) {
        int lineMajorDimension = getLineMajorDimension();
        int linePreOffset = vertical ? DOM.getAbsoluteTop(lineElement) : DOM.getAbsoluteLeft(lineElement);
        double percent = (double) (d - linePreOffset) / lineMajorDimension * 1.0;
        setCurrentValue(getTotalRange() * percent + minValue, true);
    }
}

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

License:Apache License

/**
 * Gets the popup's left position relative to the browser's client area.
 * //from w  w w . j  av  a 2 s.c o m
 * @return the popup's left position
 */
public int getPopupLeft() {
    return DOM.getAbsoluteLeft(getElement());
}

From source file:cc.kune.events.client.viewer.CalendarViewerPanel.java

License:GNU Affero Public License

/**
 * Instantiates a new calendar viewer panel.
 *
 * @param gsArmor//from ww  w .  j  a  v a 2s  .c  om
 *          the gs armor
 * @param eventBus
 *          the event bus
 * @param i18n
 *          the i18n
 * @param guiProvider
 *          the gui provider
 * @param res
 *          the res
 * @param capabilitiesRegistry
 *          the capabilities registry
 * @param dragController
 *          the drag controller
 * @param contentDropControllerProv
 *          the content drop controller prov
 * @param containerDropControllerProv
 *          the container drop controller prov
 */
@Inject
public CalendarViewerPanel(final GSpaceArmor gsArmor, final EventBus eventBus,
        final I18nTranslationService i18n, final GuiProvider guiProvider, final CoreResources res,
        final ContentCapabilitiesRegistry capabilitiesRegistry, final KuneDragController dragController,
        final Provider<FolderContentDropController> contentDropControllerProv,
        final Provider<FolderContainerDropController> containerDropControllerProv,
        final InboxToContainerDropController inbDropController) {
    super(gsArmor, eventBus, i18n, capabilitiesRegistry, dragController, contentDropControllerProv,
            containerDropControllerProv, inbDropController);
    calendar = new Calendar();
    calendar.setSettings(setCalendarSettings());
    widget = calendar;
    calendar.sinkEvents(
            Event.ONMOUSEDOWN | Event.ONDBLCLICK | Event.KEYEVENTS | Event.ONMOUSEOVER | Event.ONCLICK);
    Event.addNativePreviewHandler(new NativePreviewHandler() {
        @Override
        public void onPreviewNativeEvent(final NativePreviewEvent eventPrev) {
            // We store click position in onder to show the menu
            final NativeEvent natEvent = eventPrev.getNativeEvent();
            if (Event.getTypeInt(natEvent.getType()) != Event.ONCLICK) {
                clientX = natEvent.getClientX();
                clientY = natEvent.getClientY();
                return;
            }
        }
    });
    contentTitle = new ContentTitleWidget(i18n, gsArmor, capabilitiesRegistry.getIconsRegistry());
    Window.addResizeHandler(new ResizeHandler() {
        @Override
        public void onResize(final ResizeEvent event) {
            resizeCalendar();
        }
    });
    tooltipPanel = new PopupPanel();
    Tooltip.to(tooltipPanel, "FIXME");
    addMouseOverHandler(new MouseOverHandler<Appointment>() {
        @Override
        public void onMouseOver(final MouseOverEvent<Appointment> event) {
            final Element element = (Element) event.getElement();
            tooltipPanel.setPopupPosition(DOM.getAbsoluteLeft(element),
                    DOM.getAbsoluteTop(element) + element.getOffsetHeight());
            tooltipPanel.show();
            if (Tooltip.getTip().isShowing()) {
                tooltipPanel.hide();
                Tooltip.getTip().hide();
            } else {
                Tooltip.getTip().showTemporally(tooltipPanel, tooltipText);
            }
            // NotifyUser.info("On mouse");
        }
    });
}

From source file:com.areahomeschoolers.baconbits.client.content.calendar.monthview.MonthView.java

License:Open Source License

private void dayClicked(Event event) {
    int y = event.getClientY() + Window.getScrollTop() - DOM.getAbsoluteTop(appointmentCanvas.getElement());
    int x = event.getClientX() + Window.getScrollLeft() - DOM.getAbsoluteLeft(appointmentCanvas.getElement());

    int row = (int) Math.floor(y / (appointmentCanvas.getOffsetHeight() / monthViewRequiredRows));
    int col = (int) Math.floor(x / (appointmentCanvas.getOffsetWidth() / DAYS_IN_A_WEEK));
    calendarWidget.fireTimeBlockClickEvent(cellDate(row * DAYS_IN_A_WEEK + col));
}

From source file:com.cardfight.client.SliderBar.java

License:Apache License

/**
 * Slide the knob to a new location./*from www .j  a va 2s .  c  om*/
 * 
 * @param event the mouse event
 */
private void slideKnob(Event event) {
    int x = DOM.eventGetClientX(event);
    if (x > 0) {
        int lineWidth = DOM.getElementPropertyInt(lineElement, "offsetWidth");
        int lineLeft = DOM.getAbsoluteLeft(lineElement);
        double percent = (double) (x - lineLeft) / lineWidth * 1.0;
        /*
        double p1 = getKnobPercent();
        double p2 = getKnob2Percent();
        double d1 = Math.abs(percent - p1);
        double d2 = Math.abs(percent - p2);
        */
        if (knob1HasFocus)
            setCurrentValue(getTotalRange() * percent + minValue, true);
        else
            setCurrentValue2(getTotalRange() * percent + minValue);
    }
}

From source file:com.cardfight.client.SliderBar.java

License:Apache License

private void decideWhichKnobGetsFocus(Event event) {
    if (!displaySecondKnob) {
        knob1HasFocus = true;/*from w  ww . j a  v a2s. c o m*/
        return;
    }
    int x = DOM.eventGetClientX(event);
    if (x > 0) {
        int lineWidth = DOM.getElementPropertyInt(lineElement, "offsetWidth");
        int lineLeft = DOM.getAbsoluteLeft(lineElement);
        double percent = (double) (x - lineLeft) / lineWidth * 1.0;
        double p1 = getKnobPercent();
        double p2 = getKnob2Percent();
        double d1 = Math.abs(percent - p1);
        double d2 = Math.abs(percent - p2);
        if (d1 < d2)
            knob1HasFocus = true;
        else
            knob1HasFocus = false;
    }
}