Example usage for com.google.gwt.dom.client FrameElement getContentDocument

List of usage examples for com.google.gwt.dom.client FrameElement getContentDocument

Introduction

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

Prototype

public final Document getContentDocument() 

Source Link

Usage

From source file:ch.unifr.pai.twice.multipointer.client.MouseCursor.java

License:Apache License

/**
 * Get the element within an embedded frame
 * /*from  w ww  . j  a  v a2 s.  c  o m*/
 * @param e
 * @param x
 * @param y
 * @return
 */
private Element getElementInFrame(Element e, int x, int y) {
    if (e != null && e.getTagName() != null && e.getTagName().equalsIgnoreCase("iframe")) {
        FrameElement frame = FrameElement.as(e);
        Document doc = frame.getContentDocument();
        if (doc == null)
            return e;
        x = x - frame.getAbsoluteLeft();
        y = y - frame.getAbsoluteTop();
        e = elementFromPoint(doc, x, y);
        return getElementInFrame(e, x, y);
    } else
        return e;
}

From source file:cz.filmtit.client.subgestbox.PosteditBox.java

License:Open Source License

public int getCorrectVerticalSize() {
    FrameElement frameElement = (FrameElement) this.getElement().cast();
    int newHeight = frameElement.getContentDocument().getScrollHeight();
    return newHeight;
}

From source file:org.unitime.timetable.gwt.client.widgets.UniTimeFrameDialogImpl.java

License:Apache License

public UniTimeFrameDialogImpl() {
    super(true, true);

    setEscapeToHide(true);/*  www  .  j  a va 2s .c o  m*/
    iFrame = new Frame();
    iFrame.getElement().getStyle().setBorderWidth(0, Unit.PX);
    hookFrameLoaded((FrameElement) iFrame.getElement().cast());
    setWidget(iFrame);

    iCheckLoadingWidgetIsShowing = new Timer() {
        @Override
        public void run() {
            if (LoadingWidget.getInstance().isShowing()) {
                LoadingWidget.getInstance().hide();
                UniTimeNotifications.error(
                        getText() + " does not seem to load, " + "please check <a href='" + iFrame.getUrl()
                                + "' style='white-space: nowrap;'>" + iFrame.getUrl() + "</a> for yourself.");
            }
        }
    };

    addCloseHandler(new CloseHandler<PopupPanel>() {
        @Override
        public void onClose(CloseEvent<PopupPanel> event) {
            if (LoadingWidget.getInstance().isShowing())
                LoadingWidget.getInstance().hide();
            RootPanel.getBodyElement().getStyle().setOverflow(Overflow.AUTO);
        }
    });

    iFrame.addLoadHandler(new LoadHandler() {
        @Override
        public void onLoad(LoadEvent event) {
            LoadingWidget.getInstance().hide();
            try {
                FrameElement frame = (FrameElement) iFrame.getElement().cast();
                BodyElement body = frame.getContentDocument().getBody();
                if (body.getScrollWidth() > body.getClientWidth()) {
                    iFrame.setWidth(
                            Math.min(frame.getClientWidth() + body.getScrollWidth() - body.getClientWidth(),
                                    Window.getClientWidth() * 95 / 100) + "px");
                    setPopupPosition(
                            Math.max(Window.getScrollLeft() + (Window.getClientWidth() - getOffsetWidth()) / 2,
                                    0),
                            Math.max(Window.getScrollTop() + (Window.getClientHeight() - getOffsetHeight()) / 2,
                                    0));
                }
            } catch (Exception e) {
            }
        }
    });
}