Example usage for com.google.gwt.user.client Window getScrollTop

List of usage examples for com.google.gwt.user.client Window getScrollTop

Introduction

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

Prototype

public static int getScrollTop() 

Source Link

Usage

From source file:org.pentaho.gwt.widgets.client.dialogs.ResizableDialogBox.java

License:Open Source License

public void center() {
    boundaryPanel.clear();//from   w ww  . j av  a  2 s .c  o  m
    int left = (Window.getClientWidth() - windowPanel.getOffsetWidth()) >> 1;
    int top = (Window.getClientHeight() - windowPanel.getOffsetHeight()) >> 1;
    boundaryPanel.add(windowPanel, Window.getScrollLeft() + left, Window.getScrollTop() + top);
    left = (Window.getClientWidth() - windowPanel.getOffsetWidth()) >> 1;
    top = (Window.getClientHeight() - windowPanel.getOffsetHeight()) >> 1;
    boundaryPanel.clear();
    boundaryPanel.add(windowPanel, Window.getScrollLeft() + left, Window.getScrollTop() + top);
    // hide <embeds>
    FrameUtils.toggleEmbedVisibility(false);
}

From source file:org.pentaho.mantle.client.commands.NewDropdownCommand.java

License:Open Source License

protected void performOperation(boolean feedback) {
    final PopupPanel popup = new PopupPanel(true, false) {
        public void show() {
            // show glass pane
            super.show();
            if (pageBackground == null) {
                pageBackground = new FocusPanel() {
                    public void onBrowserEvent(Event event) {
                        int type = event.getTypeInt();
                        switch (type) {
                        case Event.ONKEYDOWN: {
                            if ((char) event.getKeyCode() == KeyCodes.KEY_ESCAPE) {
                                event.stopPropagation();
                                hide();//w  ww . j av a2  s .  c  o  m
                            }
                            return;
                        }
                        }
                        super.onBrowserEvent(event);
                    };
                };
                pageBackground.addClickHandler(new ClickHandler() {
                    public void onClick(ClickEvent event) {
                        hide();
                        pageBackground.setVisible(false);
                        pageBackground.getElement().getStyle().setDisplay(Display.NONE);
                    }
                });
                RootPanel.get().add(pageBackground, 0, 0);
            }
            pageBackground.setSize("100%", Window.getClientHeight() + Window.getScrollTop() + "px"); //$NON-NLS-1$ //$NON-NLS-2$
            pageBackground.setVisible(true);
            pageBackground.getElement().getStyle().setDisplay(Display.BLOCK);

            // hide <embeds>
            // TODO: migrate to GlassPane Listener
            FrameUtils.toggleEmbedVisibility(false);

            // Notify listeners that we're showing a dialog (hide PDFs, flash).
            GlassPane.getInstance().show();
        }

        public void hide(boolean autoClosed) {
            super.hide(autoClosed);
            pageBackground.setVisible(false);
            GlassPane.getInstance().hide();
        }

        protected void onPreviewNativeEvent(final NativePreviewEvent event) {
            // Switch on the event type
            int type = event.getTypeInt();
            switch (type) {
            case Event.ONKEYDOWN: {
                Event nativeEvent = Event.as(event.getNativeEvent());
                if ((char) nativeEvent.getKeyCode() == KeyCodes.KEY_ESCAPE) {
                    event.cancel();
                    hide();
                }
                return;
            }
            }
        };
    };

    if (popup.isShowing()) {
        popup.hide();
        return;
    }

    String url = GWT.getHostPageBaseURL() + "api/plugin-manager/settings/new-toolbar-button"; //$NON-NLS-1$
    RequestBuilder rb = new RequestBuilder(RequestBuilder.GET, url);
    rb.setHeader("Content-Type", "text/plain"); //$NON-NLS-1$//$NON-NLS-2$
    rb.setHeader("accept", "application/json"); //$NON-NLS-1$//$NON-NLS-2$
    rb.setHeader("If-Modified-Since", "01 Jan 1970 00:00:00 GMT");
    try {
        rb.sendRequest(null, new RequestCallback() {

            @Override
            public void onError(Request request, Throwable exception) {
                MessageDialogBox dialogBox = new MessageDialogBox(Messages.getString("error"), //$NON-NLS-1$
                        exception.getMessage(), //$NON-NLS-2$
                        false, false, true);
                dialogBox.center();
            }

            @Override
            public void onResponseReceived(Request request, Response response) {
                if (response.getStatusCode() == 200) {
                    JsArray<JsCreateNewConfig> jsarray = parseJson(
                            JsonUtils.escapeJsonForEval(response.getText()));
                    final ArrayList<JsCreateNewConfig> sorted = new ArrayList<JsCreateNewConfig>();
                    for (int i = 0; i < jsarray.length(); i++) {
                        sorted.add(jsarray.get(i));
                    }
                    Collections.sort(sorted, new JsCreateNewConfigComparator());
                    popup.setStyleName("newToolbarDropdown");
                    VerticalPanel buttonPanel = new VerticalPanel();
                    popup.add(buttonPanel);
                    for (int i = 0; i < sorted.size(); i++) {
                        final int finali = i;
                        String enabledUrl = sorted.get(i).getEnabledUrl();
                        if (buttonEnabled(enabledUrl)) {
                            Button button = new Button(Messages.getString(sorted.get(i).getLabel()));
                            button.setStyleName("pentaho-button");
                            button.getElement().addClassName("newToolbarDropdownButton");
                            button.addClickHandler(new ClickHandler() {
                                public void onClick(ClickEvent event) {
                                    if (sorted.get(finali).getActionUrl().startsWith("javascript:")) {
                                        doEvalJS(sorted.get(finali).getActionUrl()
                                                .substring("javascript:".length()));
                                    } else {
                                        SolutionBrowserPanel.getInstance().getContentTabPanel().showNewURLTab(
                                                Messages.getString(sorted.get(finali).getTabName()),
                                                Messages.getString(sorted.get(finali).getTabName()),
                                                sorted.get(finali).getActionUrl(), false);
                                    }
                                    popup.hide();
                                }
                            });
                            String name = sorted.get(i).getName();
                            if ("data-access".equals(name)) {
                                buttonPanel.add(new HTML("<hr style='color: #a7a7a7' />"));
                            }
                            buttonPanel.add(button);
                        }
                    }
                    popup.setPopupPosition(anchorWidget.getAbsoluteLeft(),
                            anchorWidget.getAbsoluteTop() + anchorWidget.getOffsetHeight());
                    popup.show();
                } else {
                    MessageDialogBox dialogBox = new MessageDialogBox(Messages.getString("error"), //$NON-NLS-1$
                            Messages.getString("error"), //$NON-NLS-1$
                            false, false, true);
                    dialogBox.center();
                }
            }

            private boolean buttonEnabled(String enabledUrl) {
                if (enabledUrl == null || enabledUrl.isEmpty()) {
                    return true;
                } else {
                    Boolean enabled = false;
                    try {
                        enabled = Boolean.valueOf(sendRequest(enabledUrl));
                    } catch (Exception e) {
                    }
                    return enabled;
                }
            }

        });
    } catch (RequestException e) {
        MessageDialogBox dialogBox = new MessageDialogBox(Messages.getString("error"), e.getMessage(), //$NON-NLS-1$ //$NON-NLS-2$
                false, false, true);
        dialogBox.center();
    }

}

From source file:org.pentaho.mantle.client.solutionbrowser.tabs.TabWidget.java

License:Open Source License

public void onBrowserEvent(Event event) {
    // the id's which are set on these menu items must be set AFTER the items are added to their menu
    // when an element is added to a menu an auto-generated id will be assigned, so we must override this
    if (perspective != null) {
        if ((DOM.eventGetType(event) & Event.ONDBLCLICK) == Event.ONDBLCLICK) {
            openTabInNewWindow();//w w  w.j a v  a2  s. c  o m
        } else if (DOM.eventGetButton(event) == Event.BUTTON_RIGHT) {
            int left = Window.getScrollLeft() + DOM.eventGetClientX(event);
            int top = Window.getScrollTop() + DOM.eventGetClientY(event);
            popupMenu.setPopupPosition(left, top);
            MenuBar menuBar = new MenuBar(true);
            menuBar.setAutoOpen(true);
            if (tabContent instanceof IFrameTabPanel) {
                MenuItem backMenuItem = new MenuItem(Messages.getString("back"), //$NON-NLS-1$
                        new TabCommand(TABCOMMANDTYPE.BACK, popupMenu));
                menuBar.addItem(backMenuItem);
                backMenuItem.getElement().setId("back"); //$NON-NLS-1$
                menuBar.addSeparator();
                MenuItem reloadTabMenuItem = new MenuItem(Messages.getString("reloadTab"), //$NON-NLS-1$
                        new TabCommand(TABCOMMANDTYPE.RELOAD, popupMenu));
                menuBar.addItem(reloadTabMenuItem);
                reloadTabMenuItem.getElement().setId("reloadTab"); //$NON-NLS-1$
            }
            if (tabPanel.getTabBar().getTabCount() > 1) {
                MenuItem reloadAllTabsMenuItem = new MenuItem(Messages.getString("reloadAllTabs"), //$NON-NLS-1$
                        new TabCommand(TABCOMMANDTYPE.RELOAD_ALL, popupMenu));
                menuBar.addItem(reloadAllTabsMenuItem);
                reloadAllTabsMenuItem.getElement().setId("reloadAllTabs"); //$NON-NLS-1$
            } else {
                MenuItem reloadAllTabsMenuItem = new MenuItem(Messages.getString("reloadAllTabs"), //$NON-NLS-1$
                        (Command) null);
                menuBar.addItem(reloadAllTabsMenuItem);
                reloadAllTabsMenuItem.getElement().setId("reloadAllTabs"); //$NON-NLS-1$
                reloadAllTabsMenuItem.setStyleName("disabledMenuItem"); //$NON-NLS-1$
            }
            menuBar.addSeparator();
            if (tabContent instanceof IFrameTabPanel) {
                MenuItem openTabInNewWindowMenuItem = new MenuItem(Messages.getString("openTabInNewWindow"), //$NON-NLS-1$
                        new TabCommand(TABCOMMANDTYPE.NEW_WINDOW, popupMenu));
                menuBar.addItem(openTabInNewWindowMenuItem);
                openTabInNewWindowMenuItem.getElement().setId("openTabInNewWindow"); //$NON-NLS-1$
                MenuItem createDeepLinkMenuItem = new MenuItem(Messages.getString("createDeepLink"), //$NON-NLS-1$
                        new TabCommand(TABCOMMANDTYPE.CREATE_DEEP_LINK, popupMenu));
                menuBar.addItem(createDeepLinkMenuItem);
                createDeepLinkMenuItem.getElement().setId("deepLink"); //$NON-NLS-1$
                menuBar.addSeparator();
            }
            menuBar.addItem(new MenuItem(Messages.getString("closeTab"), //$NON-NLS-1$
                    new TabCommand(TABCOMMANDTYPE.CLOSE, popupMenu)));
            if (tabPanel.getTabBar().getTabCount() > 1) {
                MenuItem closeOtherTabsMenuItem = new MenuItem(Messages.getString("closeOtherTabs"), //$NON-NLS-1$
                        new TabCommand(TABCOMMANDTYPE.CLOSE_OTHERS, popupMenu));
                menuBar.addItem(closeOtherTabsMenuItem);
                closeOtherTabsMenuItem.getElement().setId("closeOtherTabs"); //$NON-NLS-1$
                MenuItem closeAllTabsMenuItem = new MenuItem(Messages.getString("closeAllTabs"), //$NON-NLS-1$
                        new TabCommand(TABCOMMANDTYPE.CLOSE_ALL, popupMenu));
                menuBar.addItem(closeAllTabsMenuItem);
                closeAllTabsMenuItem.getElement().setId("closeAllTabs"); //$NON-NLS-1$
            } else {
                MenuItem closeOtherTabsMenuItem = new MenuItem(Messages.getString("closeOtherTabs"), //$NON-NLS-1$
                        (Command) null);
                closeOtherTabsMenuItem.setStyleName("disabledMenuItem"); //$NON-NLS-1$
                MenuItem closeAllTabsMenuItem = new MenuItem(Messages.getString("closeAllTabs"), //$NON-NLS-1$
                        (Command) null);
                closeAllTabsMenuItem.setStyleName("disabledMenuItem"); //$NON-NLS-1$
                menuBar.addItem(closeOtherTabsMenuItem);
                menuBar.addItem(closeAllTabsMenuItem);
                closeOtherTabsMenuItem.getElement().setId("closeOtherTabs"); //$NON-NLS-1$
                closeAllTabsMenuItem.getElement().setId("closeAllTabs"); //$NON-NLS-1$
            }
            popupMenu.setWidget(menuBar);
            popupMenu.hide();
            popupMenu.show();
        }
    }
    super.onBrowserEvent(event);
}

From source file:org.pentaho.mantle.client.ui.tabs.MantleTab.java

License:Open Source License

public void onRightClick(Event event) {
    FrameUtils.setEmbedVisibility(((IFrameTabPanel) getTabPanel().getSelectedTab().getContent()).getFrame(),
            false);/*from ww  w .jav a  2  s  .  c o  m*/

    int left = Window.getScrollLeft() + DOM.eventGetClientX(event);
    int top = Window.getScrollTop() + DOM.eventGetClientY(event);
    popupMenu.setPopupPosition(adjustLeftIfNecessary(left), top);
    MenuBar menuBar = new MenuBar(true);
    menuBar.setAutoOpen(true);
    if (getContent() instanceof IFrameTabPanel) {
        MenuItem backMenuItem = new MenuItem(Messages.getString("back"), //$NON-NLS-1$
                new TabCommand(TABCOMMANDTYPE.BACK, popupMenu));
        menuBar.addItem(backMenuItem);
        backMenuItem.getElement().setId("back"); //$NON-NLS-1$
        menuBar.addSeparator();
        MenuItem reloadTabMenuItem = new MenuItem(Messages.getString("reloadTab"), //$NON-NLS-1$
                new TabCommand(TABCOMMANDTYPE.RELOAD, popupMenu));
        menuBar.addItem(reloadTabMenuItem);
        reloadTabMenuItem.getElement().setId("reloadTab"); //$NON-NLS-1$
    }
    if (getTabPanel().getTabCount() > 1) {
        MenuItem reloadAllTabsMenuItem = new MenuItem(Messages.getString("reloadAllTabs"), //$NON-NLS-1$
                new TabCommand(TABCOMMANDTYPE.RELOAD_ALL, popupMenu));
        menuBar.addItem(reloadAllTabsMenuItem);
        reloadAllTabsMenuItem.getElement().setId("reloadAllTabs"); //$NON-NLS-1$
    } else {
        MenuItem reloadAllTabsMenuItem = new MenuItem(Messages.getString("reloadAllTabs"), (Command) null); //$NON-NLS-1$
        menuBar.addItem(reloadAllTabsMenuItem);
        reloadAllTabsMenuItem.getElement().setId("reloadAllTabs"); //$NON-NLS-1$
        reloadAllTabsMenuItem.setStyleName("disabledMenuItem"); //$NON-NLS-1$
    }
    menuBar.addSeparator();
    if (getContent() instanceof IFrameTabPanel) {
        MenuItem openTabInNewWindowMenuItem = new MenuItem(Messages.getString("openTabInNewWindow"), //$NON-NLS-1$
                new TabCommand(TABCOMMANDTYPE.NEW_WINDOW, popupMenu));
        menuBar.addItem(openTabInNewWindowMenuItem);
        openTabInNewWindowMenuItem.getElement().setId("openTabInNewWindow"); //$NON-NLS-1$
        MenuItem createDeepLinkMenuItem = new MenuItem(Messages.getString("createDeepLink"), //$NON-NLS-1$
                new TabCommand(TABCOMMANDTYPE.CREATE_DEEP_LINK, popupMenu));
        menuBar.addItem(createDeepLinkMenuItem);
        createDeepLinkMenuItem.getElement().setId("deepLink"); //$NON-NLS-1$
        menuBar.addSeparator();
    }
    menuBar.addItem(
            new MenuItem(Messages.getString("closeTab"), new TabCommand(TABCOMMANDTYPE.CLOSE, popupMenu))); //$NON-NLS-1$
    if (getTabPanel().getTabCount() > 1) {
        MenuItem closeOtherTabsMenuItem = new MenuItem(Messages.getString("closeOtherTabs"), //$NON-NLS-1$
                new TabCommand(TABCOMMANDTYPE.CLOSE_OTHERS, popupMenu));
        menuBar.addItem(closeOtherTabsMenuItem);
        closeOtherTabsMenuItem.getElement().setId("closeOtherTabs"); //$NON-NLS-1$
        MenuItem closeAllTabsMenuItem = new MenuItem(Messages.getString("closeAllTabs"), //$NON-NLS-1$
                new TabCommand(TABCOMMANDTYPE.CLOSE_ALL, popupMenu));
        menuBar.addItem(closeAllTabsMenuItem);
        closeAllTabsMenuItem.getElement().setId("closeAllTabs"); //$NON-NLS-1$
    } else {
        MenuItem closeOtherTabsMenuItem = new MenuItem(Messages.getString("closeOtherTabs"), (Command) null); //$NON-NLS-1$
        closeOtherTabsMenuItem.setStyleName("disabledMenuItem"); //$NON-NLS-1$
        MenuItem closeAllTabsMenuItem = new MenuItem(Messages.getString("closeAllTabs"), (Command) null); //$NON-NLS-1$
        closeAllTabsMenuItem.setStyleName("disabledMenuItem"); //$NON-NLS-1$
        menuBar.addItem(closeOtherTabsMenuItem);
        menuBar.addItem(closeAllTabsMenuItem);
        closeOtherTabsMenuItem.getElement().setId("closeOtherTabs"); //$NON-NLS-1$
        closeAllTabsMenuItem.getElement().setId("closeAllTabs"); //$NON-NLS-1$
    }
    popupMenu.setWidget(menuBar);

    if (isIEBrowser()) {
        Frame iFrame = new Frame("about:blank");
        Style iFrameStyle = iFrame.getElement().getStyle();
        iFrameStyle.setWidth(100, Style.Unit.PCT);
        iFrameStyle.setHeight(100, Style.Unit.PCT);
        iFrameStyle.setBorderStyle(Style.BorderStyle.NONE);
        iFrameStyle.setTop(0, Unit.PX);
        iFrameStyle.setPosition(Style.Position.ABSOLUTE);
        iFrameStyle.setZIndex(-1);
        Element element = popupMenu.getElement();
        Node firstChild = element.getFirstChild();
        if (firstChild != null) {
            firstChild.appendChild(iFrame.getElement());
        }
    }

    popupMenu.hide();
    popupMenu.show();
}

From source file:org.psystems.dicom.browser.client.Browser.java

License:Open Source License

/**
 *  ??//from  w  w  w  .j  a va 2s  . c om
 */
private void workStatusPopuppopupCentering() {
    workStatusPopup.setPopupPositionAndShow(new PositionCallback() {

        @Override
        public void setPosition(int offsetWidth, int offsetHeight) {

            workStatusPopup.setPopupPosition(offsetWidth, offsetHeight);
            int left = (Window.getClientWidth() - offsetWidth) >> 1;
            int top = 0;

            workStatusPopup.setPopupPosition(Window.getScrollLeft() + left, Window.getScrollTop() + top);
        }

    });

}

From source file:org.roda.wui.common.client.widgets.Toast.java

/**
 * Start showing popup//  ww  w .  jav  a 2  s  .com
 */
public void start() {
    setPopupPositionAndShow(new PositionCallback() {

        @Override
        public void setPosition(int offsetWidth, int offsetHeight) {
            int slotOffset = 0;
            for (int i = 0; i < slotNumber; i++) {
                if (slots[i] != null) {
                    slotOffset += slots[i].getOffsetHeight() + PADDING;
                }
            }

            // scrollTo - go to the top of the page when showing toast
            Window.scrollTo(Window.getScrollLeft(), 0);
            Toast.this.setPopupPosition(Window.getClientWidth() - offsetWidth - PADDING,
                    Window.getScrollTop() + PADDING + slotOffset);
        }

    });

    hideTimer.schedule(HIDE_DELAY_MS);

}

From source file:org.rstudio.studio.client.workbench.views.console.shell.assist.PopupPositioner.java

License:Open Source License

public void setPosition(int popupWidth, int popupHeight) {
    if (cursorBounds_ == null) {
        assert false : "Positioning popup but no cursor bounds available";
        return;/*from  w  w w. j  ava 2 s  .  c om*/
    }

    int windowBottom = Window.getScrollTop() + Window.getClientHeight();
    int cursorBottom = cursorBounds_.getBottom();

    if (windowBottom - cursorBottom >= popupHeight)
        popup_.setPopupPosition(cursorBounds_.getLeft(), cursorBottom);
    else
        popup_.setPopupPosition(cursorBounds_.getLeft(), cursorBounds_.getTop() - popupHeight);
}

From source file:org.seamless.gwt.notify.client.PopupNotificationDisplay.java

License:Open Source License

@Override
public void showMessage(final Message message) {

    final PopupMessagePanel messagePanel = new PopupMessagePanel(message);

    messagePanel.setPopupPositionAndShow(new PopupPanel.PositionCallback() {
        public void setPosition(int offsetWidth, int offsetHeight) {
            int originLeft = Window.getScrollLeft() + Window.getClientWidth() - offsetWidth
                    - MARGIN_RIGHT_PIXEL;
            int originTop = Window.getScrollTop() + Window.getClientHeight() - offsetHeight
                    - MARGIN_BOTTOM_PIXEL;
            setRelativePosition(messagePanels.values(), messagePanel, originLeft, originTop, originTop,
                    offsetHeight, offsetWidth);
        }//from w  w  w . j a  v  a  2  s  .c  o  m
    });

    messagePanels.put(message, messagePanel);
}

From source file:org.squale.gwt.distributionmap.widget.DistributionMap.java

License:Open Source License

/**
 * Moves the current detail popup to the specified position.
 * /*from   w w  w . java 2s . com*/
 * @param xPosition X position
 * @param yPosition Y position
 */
void updateDetailPopup(int xPosition, int yPosition) {
    detailPopup.setPopupPosition(xPosition + 1 + Window.getScrollLeft(), yPosition + 1 + Window.getScrollTop());
}

From source file:org.unitime.timetable.gwt.client.events.AddMeetingsDialog.java

License:Apache License

public void recenter() {
    GwtHint.getInstance().hide();/*from w w  w  . j  a  v  a2  s .  co  m*/

    iScrollRooms.getElement().getStyle().clearHeight();
    if (getElement().getClientHeight() > Window.getClientHeight() - 100)
        iScrollRooms.getElement().getStyle().setHeight(Window.getClientHeight() - 200, Unit.PX);

    iScrollDates.getElement().getStyle().clearHeight();
    if (getElement().getClientHeight() > Window.getClientHeight() - 100) {
        iScrollDates.getElement().getStyle().setHeight(Window.getClientHeight() - 200, Unit.PX);
    }

    int left = (Window.getClientWidth() - getOffsetWidth()) >> 1;
    int top = (Window.getClientHeight() - getOffsetHeight()) >> 1;
    setPopupPosition(Math.max(Window.getScrollLeft() + left, 0), Math.max(Window.getScrollTop() + top, 0));
}