Example usage for com.google.gwt.user.client.ui PopupPanel isShowing

List of usage examples for com.google.gwt.user.client.ui PopupPanel isShowing

Introduction

In this page you can find the example usage for com.google.gwt.user.client.ui PopupPanel isShowing.

Prototype

public boolean isShowing() 

Source Link

Document

Determines whether or not this popup is showing.

Usage

From source file:com.edgenius.wiki.gwt.client.widgets.Lightbox.java

License:Open Source License

/**
 * Only show background mask on owner scope. if owner is null, then it is entire page scope. 
 * @param owner/* w  ww.j a va2s  .c o m*/
 * @param popup
 */
public Lightbox(UIObject owner, final PopupPanel popup) {
    this.popup = popup;
    this.owner = owner;
    background = new PopupPanel();
    background.setStyleName(Css.LIGHT_BOX_BK);

    if (owner == null) {
        DOM.setStyleAttribute(background.getElement(), "width", "100%");
        DOM.setStyleAttribute(background.getElement(), "height", "5000px"); //Window.getClientHeight()

        evtReg = Window.addResizeHandler(new ResizeHandler() {
            public void onResize(ResizeEvent event) {
                //background need be adjust size, but popup won't display if it is not showing. 
                if (popup.isShowing()) {
                    popup.center();
                    if (popup instanceof DialogBox) {
                        List<DialogListener> listeners = ((DialogBox) popup).getDialogListeners();
                        if (listeners != null) {
                            for (DialogListener listener : listeners) {
                                listener.dialogRelocated((DialogBox) popup);
                            }
                        }
                    }
                }
            }
        });
    } else {
        background.setPopupPosition(owner.getAbsoluteLeft(), owner.getAbsoluteTop());
        DOM.setStyleAttribute(background.getElement(), "width", owner.getOffsetWidth() + "px");
        DOM.setStyleAttribute(background.getElement(), "height", owner.getOffsetHeight() + "px");
    }

}

From source file:com.google.gwt.sample.stockwatcher.client.Menu.java

public MouseOverHandler addShowPopupMouseHandler(final PopupPanel popupPanel) {
    MouseOverHandler handler = new MouseOverHandler() {
        @Override/*from   w ww . j  a  v  a 2 s. com*/
        public void onMouseOver(MouseOverEvent event) {
            if (!popupPanel.isShowing()) {
                for (int i = 0; i < popupList.size(); i++) {
                    popupList.get(i).hide();
                }
                event.preventDefault();
                event.stopPropagation();
                event.getRelativeElement().getStyle().setBackgroundColor("#15B5EA");
                popupPanel.setPopupPosition(event.getRelativeElement().getAbsoluteLeft(),
                        event.getRelativeElement().getAbsoluteBottom());
                popupPanel.show();
            }
        }
    };
    return handler;
}

From source file:com.google.gwt.sample.stockwatcher.client.Menu.java

public ClickHandler addShowPopupHandler(final PopupPanel popupPanel) {
    ClickHandler handler = new ClickHandler() {
        @Override//from w w  w  . jav a 2 s  .  c  om
        public void onClick(ClickEvent event) {
            if (!popupPanel.isShowing()) {
                for (int i = 0; i < popupList.size(); i++) {
                    popupList.get(i).hide();
                }
                event.preventDefault();
                event.stopPropagation();
                event.getRelativeElement().getStyle().setBackgroundColor("#15B5EA");
                popupPanel.setPopupPosition(event.getRelativeElement().getAbsoluteLeft(),
                        event.getRelativeElement().getAbsoluteBottom());
                popupPanel.show();
            }
        }
    };
    return handler;
}

From source file:com.tasktop.c2c.server.common.web.client.widgets.chooser.AbstractValueChooser.java

License:Open Source License

public static SuggestBox createSuggestBox(SuggestOracle oracle, final boolean hideOnScroll,
        final boolean hideOnResize) {
    final SuggestBoxProxy proxy = new SuggestBoxProxy();
    SuggestBox suggestBox = new SuggestBox(oracle, new TextBox(), new SuggestBox.DefaultSuggestionDisplay() {
        @Override/*from www .  j  av a 2  s.c  om*/
        protected PopupPanel createPopup() {
            final PopupPanel popupPanel = super.createPopup();
            CommonGinjector.get.instance().getEventBus().addHandler(ScrollEvent.getType(), new ScrollHandler() {
                @Override
                public void onScroll(ScrollEvent event) {
                    if (popupPanel.isShowing()) {
                        if (proxy.getSuggestBox() != null && !hideOnScroll) {
                            popupPanel.showRelativeTo(proxy.getSuggestBox());
                        } else {
                            popupPanel.hide();
                        }
                    }
                }
            });
            Window.addResizeHandler(new ResizeHandler() {
                @Override
                public void onResize(ResizeEvent event) {
                    if (popupPanel.isShowing()) {
                        if (proxy.getSuggestBox() != null && !hideOnResize) {
                            popupPanel.showRelativeTo(proxy.getSuggestBox());
                        } else {
                            popupPanel.hide();
                        }
                    }
                }
            });
            return popupPanel;
        }
    });
    proxy.setSuggestBox(suggestBox);
    if (oracle instanceof SuggestBoxAware) {
        ((SuggestBoxAware) oracle).setSuggestBox(suggestBox);
    }
    return suggestBox;
}

From source file:com.tasktop.c2c.server.profile.web.ui.client.presenter.components.TeamMemberPresenter.java

License:Open Source License

@Override
public void onClick(ClickEvent event) {
    Object source = event.getSource();
    if (source == view.rolesAnchor) {
        PopupPanel panel = WidgetUtil.createPopupPanel(view.rolesAnchor);
        panel.addAutoHidePartner(view.rolesAnchor.getElement());
        VerticalPanel content = new VerticalPanel();
        for (final ProjectRole role : ProjectRole.values()) {
            CheckBox checkbox = new CheckBox(
                    projectRoleMessageSelector.getInternationalizedMessage(role, commonProfileMessages));
            checkbox.setValue(member.getRoles().contains(role));
            boolean enableChanges = true;
            if (role.equals(ProjectRole.MEMBER) || (role.equals(ProjectRole.OWNER) && self)) {
                enableChanges = false;/* www  .  ja  v  a2s  . c o  m*/
            }

            checkbox.setEnabled(enableChanges);
            if (enableChanges) {
                checkbox.addValueChangeHandler(new ValueChangeHandler<Boolean>() {
                    @Override
                    public void onValueChange(ValueChangeEvent<Boolean> event) {
                        if (event.getValue()) {
                            member.getRoles().add(role);
                        } else {
                            member.getRoles().remove(role);
                        }
                        updateRoles();
                    }
                });
            }
            content.add(checkbox);
        }
        panel.add(content);
        if (panel.isShowing()) {
            panel.showRelativeTo(view.rolesAnchor);
        } else {
            panel.hide();
        }
    } else if (source == view.removeButton) {
        removeMember();
    }
}

From source file:com.tasktop.c2c.server.tasks.client.widgets.WidgetUtil.java

License:Open Source License

public static PopupPanel createPopupPanel(final UIObject relativeTo, final boolean hideOnScroll,
        final boolean hideOnResize) {
    final PopupPanel popupPanel = new PopupPanel(true);
    CommonGinjector.get.instance().getEventBus().addHandler(ScrollEvent.getType(), new ScrollHandler() {
        @Override//w w w.  j a va2 s. com
        public void onScroll(ScrollEvent event) {
            if (popupPanel.isShowing()) {
                if (relativeTo != null && !hideOnScroll) {
                    popupPanel.showRelativeTo(relativeTo);
                } else {
                    popupPanel.hide();
                }
            }
        }
    });
    Window.addResizeHandler(new ResizeHandler() {
        @Override
        public void onResize(ResizeEvent event) {
            if (relativeTo != null && !hideOnResize) {
                popupPanel.showRelativeTo(relativeTo);
            } else {
                popupPanel.hide();
            }
        }
    });
    return popupPanel;
}

From source file:nl.strohalm.cyclos.mobile.client.ui.widgets.CustomDateBox.java

License:Open Source License

public CustomDateBox() {
    super(new DatePicker(), null, DateFormat.get());
    setStyleName("dateBox-input-field");

    // Center date picker if it is visible
    Window.addResizeHandler(new ResizeHandler() {
        @Override/*from  ww  w .  ja va 2 s. c  om*/
        public void onResize(ResizeEvent event) {
            PopupPanel popup = (PopupPanel) getDatePicker().getParent();
            if (popup.isShowing()) {
                popup.center();
            }
        }
    });

    // Set date format as place holder
    UIHelper.setPlaceHolder(DateFormat.get().getDateTimeFormat().getPattern(), getTextBox().getElement());
}

From source file:org.openelis.modules.pws.client.PWSScreen.java

License:Open Source License

/**
 * creates a popup that shows the progress of parsing the PWS files
 *///from www  . j  ava2 s.  c o  m
private void parse() {
    final PopupPanel statusPanel;

    if (statusScreen == null)
        statusScreen = new StatusBarPopupScreenUI() {
            @Override
            public boolean isStopVisible() {
                return false;
            }

            @Override
            public void stop() {
                // ignore           
            }
        };

    /*
     * initialize and show the popup screen
     */
    statusPanel = new PopupPanel();
    statusPanel.setSize("450px", "125px");
    statusPanel.setWidget(statusScreen);
    statusPanel.setPopupPosition(this.getAbsoluteLeft(), this.getAbsoluteTop());
    statusPanel.setModal(true);
    statusPanel.show();
    statusScreen.setStatus(null);

    /*
     * Read pws files and update database. Hide popup when database is
     * updated successfully or error is thrown.
     */
    PWSService.get().importFiles(new AsyncCallback<Void>() {
        public void onSuccess(Void result) {
            statusPanel.hide();
            statusScreen.setStatus(null);
        }

        public void onFailure(Throwable e) {
            statusPanel.hide();
            statusScreen.setStatus(null);
            Window.alert(e.getMessage());
            logger.log(Level.SEVERE, e.getMessage(), e);
        }
    });

    /*
     * refresh the status of reading the files and updating the database
     * every second, until the process successfully completes or is aborted
     * because of an error
     */
    Timer timer = new Timer() {
        public void run() {
            ReportStatus status;
            try {
                status = PWSService.get().getStatus();
                /*
                 * the status only needs to be refreshed while the status
                 * panel is showing because once the job is finished, the
                 * panel is closed
                 */
                if (statusPanel.isShowing()) {
                    statusScreen.setStatus(status);
                    this.schedule(1000);
                }
            } catch (Exception e) {
                Window.alert(e.getMessage());
                logger.log(Level.SEVERE, e.getMessage(), e);
            }
        }
    };
    timer.schedule(1000);
}

From source file:org.openelis.portal.modules.dataView.client.DataViewScreen.java

License:Open Source License

/**
 * creates a popup that shows the progress of creating data view report
 *//*  www.  j a  va2  s.  c o m*/
private void popup(DataView1VO data) {
    final PopupPanel statusPanel;

    if (statusScreen == null)
        statusScreen = new StatusBarPopupScreenUI();
    statusScreen.setStatus(null);

    /*
     * initialize and show the popup screen
     */
    statusPanel = new PopupPanel();
    statusPanel.setSize("450px", "125px");
    statusScreen.setSize("450px", "125px");
    statusPanel.setWidget(statusScreen);
    statusPanel.setPopupPosition(this.getAbsoluteLeft() + 50, this.getAbsoluteTop() + 50);
    statusPanel.setModal(true);
    statusPanel.show();

    /*
     * Create final reports. Hide popup when database is updated
     * successfully or error is thrown.
     */
    DataViewService.get().runReportForPortal(data, new AsyncCallback<ReportStatus>() {

        @Override
        public void onSuccess(ReportStatus result) {
            if (result.getStatus() == ReportStatus.Status.SAVED) {
                String url = "/openelisweb/openelisweb/report?file=" + result.getMessage();
                Window.open(URL.encode(url), "DataView", "resizable=yes");
            }
            window.clearStatus();
            statusPanel.hide();
            statusScreen.setStatus(null);
        }

        @Override
        public void onFailure(Throwable caught) {
            window.clearStatus();
            statusPanel.hide();
            statusScreen.setStatus(null);
            if (caught instanceof NotFoundException)
                window.setError(Messages.get().dataView_error_noResults());
            else
                Window.alert(caught.getMessage());
        }

    });

    /*
     * refresh the status of creating the reports every second, until the
     * process successfully completes or is aborted because of an error
     */
    Timer timer = new Timer() {
        public void run() {
            ReportStatus status;
            try {
                status = DataViewService.get().getStatus();
                /*
                 * the status only needs to be refreshed while the status
                 * panel is showing because once the job is finished, the
                 * panel is closed
                 */
                if (statusPanel.isShowing()) {
                    statusScreen.setStatus(status);
                    this.schedule(50);
                }
            } catch (Exception e) {
                Window.alert(e.getMessage());
                remote.log(Level.SEVERE, e.getMessage(), e);
            }
        }
    };
    timer.schedule(50);
}

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();//ww w . j  a v  a  2 s .c om
                            }
                            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();
    }

}