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

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

Introduction

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

Prototype

public void addAutoHidePartner(Element partner) 

Source Link

Document

Mouse events that occur within an autoHide partner will not hide a panel set to autoHide.

Usage

From source file:com.google.gerrit.client.api.PopupHelper.java

License:Apache License

void show() {
    final PopupPanel p = new PopupPanel(true);
    p.setStyleName(Resources.I.style().popup());
    p.addAutoHidePartner(activatingButton.getElement());
    p.addCloseHandler(new CloseHandler<PopupPanel>() {
        @Override//from   ww w . j av a  2s . co  m
        public void onClose(CloseEvent<PopupPanel> event) {
            activatingButton.unlink();
            if (popup == p) {
                popup = null;
            }
        }
    });
    p.add(panel);
    p.showRelativeTo(activatingButton);
    GlobalKey.dialog(p);
    popup = p;
}

From source file:com.google.gerrit.client.change.ActionMessageBox.java

License:Apache License

void show() {
    if (popup != null) {
        popup.hide();/*from ww w. j  a v  a2s .c om*/
        popup = null;
        return;
    }

    final PopupPanel p = new PopupPanel(true);
    p.setStyleName(style.popup());
    p.addAutoHidePartner(activatingButton.getElement());
    p.addCloseHandler(new CloseHandler<PopupPanel>() {
        @Override
        public void onClose(CloseEvent<PopupPanel> event) {
            if (popup == p) {
                popup = null;
            }
        }
    });
    p.add(this);
    p.showRelativeTo(activatingButton);
    GlobalKey.dialog(p);
    message.setFocus(true);
    popup = p;
}

From source file:com.google.gerrit.client.change.AddFileAction.java

License:Apache License

public void onEdit() {
    if (popup != null) {
        popup.hide();//w w  w  .j  a v a2 s  . c  o m
        return;
    }

    files.unregisterKeys();
    if (addBox == null) {
        addBox = new AddFileBox(changeId, revision, files);
    }
    addBox.clearPath();

    final PopupPanel p = new PopupPanel(true);
    p.setStyleName(style.replyBox());
    p.addAutoHidePartner(addButton.getElement());
    p.addCloseHandler(new CloseHandler<PopupPanel>() {
        @Override
        public void onClose(CloseEvent<PopupPanel> event) {
            if (popup == p) {
                popup = null;
            }
        }
    });
    p.add(addBox);
    p.showRelativeTo(addButton);
    GlobalKey.dialog(p);
    addBox.setFocus(true);
    popup = p;
}

From source file:com.google.gerrit.client.change.DeleteFileAction.java

License:Apache License

void onDelete() {
    if (popup != null) {
        popup.hide();/*from  www  .  j  a  va2  s .c  om*/
        return;
    }

    if (deleteBox == null) {
        deleteBox = new DeleteFileBox(changeId, revision);
    }
    deleteBox.clearPath();

    final PopupPanel p = new PopupPanel(true);
    p.setStyleName(style.replyBox());
    p.addAutoHidePartner(deleteButton.getElement());
    p.addCloseHandler(new CloseHandler<PopupPanel>() {
        @Override
        public void onClose(CloseEvent<PopupPanel> event) {
            if (popup == p) {
                popup = null;
            }
        }
    });
    p.add(deleteBox);
    p.showRelativeTo(deleteButton);
    GlobalKey.dialog(p);
    deleteBox.setFocus(true);
    popup = p;
}

From source file:com.google.gerrit.client.change.RenameFileAction.java

License:Apache License

void onRename() {
    if (popup != null) {
        popup.hide();/*from   w  ww  .  j a  v  a2s . c  om*/
        return;
    }

    if (renameBox == null) {
        renameBox = new RenameFileBox(changeId, revision);
    }
    renameBox.clearPath();

    final PopupPanel p = new PopupPanel(true);
    p.setStyleName(style.replyBox());
    p.addAutoHidePartner(renameButton.getElement());
    p.addCloseHandler(new CloseHandler<PopupPanel>() {
        @Override
        public void onClose(CloseEvent<PopupPanel> event) {
            if (popup == p) {
                popup = null;
            }
        }
    });
    p.add(renameBox);
    p.showRelativeTo(renameButton);
    GlobalKey.dialog(p);
    renameBox.setFocus(true);
    popup = p;
}

From source file:com.google.gerrit.client.change.ReplyAction.java

License:Apache License

void onReply(MessageInfo msg) {
    if (popup != null) {
        popup.hide();//from   w w w. j a v  a  2  s .  c  o  m
        return;
    }

    if (replyBox == null) {
        replyBox = new ReplyBox(clp, psId, revision, allLabels, permittedLabels);
        allLabels = null;
        permittedLabels = null;
    }
    if (msg != null) {
        replyBox.replyTo(msg);
    }

    final PopupPanel p = new PopupPanel(true, false);
    p.setStyleName(style.replyBox());
    p.addAutoHidePartner(replyButton.getElement());
    p.addAutoHidePartner(quickApproveButton.getElement());
    p.addCloseHandler(new CloseHandler<PopupPanel>() {
        @Override
        public void onClose(CloseEvent<PopupPanel> event) {
            if (popup == p) {
                popup = null;
                if (hasDraftComments || replyBox.hasMessage()) {
                    replyButton.setStyleName(style.highlight());
                }
            }
        }
    });
    p.add(replyBox);
    Window.scrollTo(0, 0);
    replyButton.removeStyleName(style.highlight());
    p.showRelativeTo(replyButton);
    GlobalKey.dialog(p);
    popup = p;
}

From source file:com.google.gerrit.client.change.RightSidePopdownAction.java

License:Apache License

void show() {
    if (popup != null) {
        button.removeStyleName(style.selected());
        popup.hide();/* w  w  w . j av a 2  s  .c  om*/
        return;
    }

    final PopupPanel p = new PopupPanel(true) {
        @Override
        public void setPopupPosition(int left, int top) {
            top -= Document.get().getBodyOffsetTop();

            int w = Window.getScrollLeft() + Window.getClientWidth();
            int r = relativeTo.getAbsoluteLeft() + relativeTo.getOffsetWidth();
            int right = w - r;
            Style style = getElement().getStyle();
            style.clearProperty("left");
            style.setPropertyPx("right", right);
            style.setPropertyPx("top", top);
        }
    };
    p.setStyleName(style.replyBox());
    p.addAutoHidePartner(button.getElement());
    p.addCloseHandler(new CloseHandler<PopupPanel>() {
        @Override
        public void onClose(CloseEvent<PopupPanel> event) {
            if (popup == p) {
                button.removeStyleName(style.selected());
                popup = null;
            }
        }
    });
    p.add(getWidget());
    p.showRelativeTo(relativeTo);
    GlobalKey.dialog(p);
    button.addStyleName(style.selected());
    popup = p;
}

From source file:com.googlesource.gerrit.plugins.cookbook.client.PopDownButton.java

License:Apache License

private void show() {
    if (popup != null) {
        getElement().getStyle().clearFontWeight();
        popup.hide();/*from  www. j  av  a2 s.co  m*/
        return;
    }

    final Widget relativeTo = getParent();
    final PopupPanel p = new PopupPanel(true) {
        @Override
        public void setPopupPosition(int left, int top) {
            top -= Document.get().getBodyOffsetTop();

            int w = Window.getScrollLeft() + Window.getClientWidth();
            int r = relativeTo.getAbsoluteLeft() + relativeTo.getOffsetWidth();
            int right = w - r;
            Style style = getElement().getStyle();
            style.clearProperty("left");
            style.setPropertyPx("right", right);
            style.setPropertyPx("top", top);
        }
    };
    Style popupStyle = p.getElement().getStyle();
    popupStyle.setBorderWidth(0, Unit.PX);
    popupStyle.setBackgroundColor("#EEEEEE");
    p.addAutoHidePartner(getElement());
    p.addCloseHandler(new CloseHandler<PopupPanel>() {
        @Override
        public void onClose(CloseEvent<PopupPanel> event) {
            if (popup == p) {
                getElement().getStyle().clearFontWeight();
                popup = null;
            }
        }
    });
    p.add(widget);
    p.showRelativeTo(relativeTo);
    GlobalKey.dialog(p);
    getElement().getStyle().setFontWeight(FontWeight.BOLD);
    popup = p;
}

From source file:com.mashery.examples.api.client.HotwireExample.java

License:Open Source License

public HotwireExample(final PopupMapWidget mapWidget) {
    FlowPanel panel = new FlowPanel();

    panel.add(new HTML("<h1>Hotel Deals</h1>"));

    FormPanel form = new FormPanel();
    panel.add(form);/*from   w w w .  jav a2s.  c o  m*/

    FlexTable entryGrid = new FlexTable();
    form.add(entryGrid);
    FlexTable.FlexCellFormatter formatter = (FlexCellFormatter) entryGrid.getCellFormatter();
    entryGrid.setWidget(0, 0, new Label("Destination:"));
    formatter.setHorizontalAlignment(0, 0, HasHorizontalAlignment.ALIGN_RIGHT);

    FlowPanel destPanel = new FlowPanel();
    entryGrid.setWidget(0, 1, destPanel);
    formatter.setColSpan(0, 1, 5);

    final TextBox destText = new TextBox();
    destPanel.add(destText);
    destText.setWidth("220px");

    Anchor fromMapLink = new Anchor("<- from Map");
    fromMapLink.addClickHandler(new ClickHandler() {
        @Override
        public void onClick(ClickEvent event) {
            HasLatLng center = mapWidget.getMap().getCenter();
            destText.setText(center.getLatitude() + "," + center.getLongitude());
        }
    });

    destPanel.add(new InlineHTML("&nbsp;"));
    destPanel.add(fromMapLink);

    entryGrid.setWidget(1, 0, new Label("From:"));
    formatter.setHorizontalAlignment(1, 0, HasHorizontalAlignment.ALIGN_RIGHT);

    final TextBox startDateText = new TextBox();
    entryGrid.setWidget(1, 1, startDateText);
    startDateText.setWidth("100px");

    final PopupPanel startDatePanel = new PopupPanel(true);
    startDatePanel.setAutoHideOnHistoryEventsEnabled(true);

    final ToggleButton startDateButton = new ToggleButton(new Image("resources/img/date-picker.gif"));
    entryGrid.setWidget(1, 2, startDateButton);
    startDateButton.setPixelSize(16, 16);
    startDatePanel.addAutoHidePartner(startDateButton.getElement());
    startDateButton.addClickHandler(new ClickHandler() {
        @Override
        public void onClick(ClickEvent event) {
            startDatePanel.showRelativeTo(startDateButton);
        }
    });

    startDatePanel.addCloseHandler(new CloseHandler<PopupPanel>() {
        @Override
        public void onClose(CloseEvent<PopupPanel> event) {
            startDateButton.setDown(false);
        }
    });

    final DateTimeFormat dateFormat = DateTimeFormat.getFormat("MM/dd/yyyy");

    final DatePicker startDatePicker = new DatePicker();
    startDatePanel.setWidget(startDatePicker);
    startDatePicker.addValueChangeHandler(new ValueChangeHandler<Date>() {
        @Override
        public void onValueChange(ValueChangeEvent<Date> event) {
            startDateText.setText(dateFormat.format(event.getValue()));
            startDatePanel.hide();
        }
    });

    startDateText.addValueChangeHandler(new ValueChangeHandler<String>() {
        @Override
        public void onValueChange(ValueChangeEvent<String> event) {
            try {
                Date date = dateFormat.parse(event.getValue());
                startDatePicker.setValue(date);
            } catch (IllegalArgumentException e) {
                // ignore
            }
        }
    });

    Date date = new Date();
    startDatePicker.setValue(date, true);

    entryGrid.setWidget(1, 3, new Label("To:"));
    formatter.setHorizontalAlignment(1, 2, HasHorizontalAlignment.ALIGN_RIGHT);

    final TextBox endDateText = new TextBox();
    entryGrid.setWidget(1, 4, endDateText);
    endDateText.setWidth("100px");

    final PopupPanel endDatePanel = new PopupPanel(true);
    endDatePanel.setAutoHideOnHistoryEventsEnabled(true);

    final ToggleButton endDateButton = new ToggleButton(new Image("resources/img/date-picker.gif"));
    entryGrid.setWidget(1, 5, endDateButton);
    endDateButton.setPixelSize(16, 16);
    endDatePanel.addAutoHidePartner(endDateButton.getElement());
    endDateButton.addClickHandler(new ClickHandler() {
        @Override
        public void onClick(ClickEvent event) {
            endDatePanel.showRelativeTo(endDateButton);
        }
    });

    endDatePanel.addCloseHandler(new CloseHandler<PopupPanel>() {
        @Override
        public void onClose(CloseEvent<PopupPanel> event) {
            endDateButton.setDown(false);
        }
    });

    final DatePicker endDatePicker = new DatePicker();
    endDatePanel.setWidget(endDatePicker);
    endDatePicker.addValueChangeHandler(new ValueChangeHandler<Date>() {
        @Override
        public void onValueChange(ValueChangeEvent<Date> event) {
            endDateText.setText(dateFormat.format(event.getValue()));
            endDatePanel.hide();
        }
    });

    endDateText.addValueChangeHandler(new ValueChangeHandler<String>() {
        @Override
        public void onValueChange(ValueChangeEvent<String> event) {
            try {
                Date date = dateFormat.parse(event.getValue());
                endDatePicker.setValue(date);
            } catch (IllegalArgumentException e) {
                // ignore
            }
        }
    });

    date = CalendarUtil.copyDate(date);
    CalendarUtil.addDaysToDate(date, 1);
    endDatePicker.setValue(date, true);

    SubmitButton submitButton = new SubmitButton("Search");
    entryGrid.setWidget(2, 0, submitButton);
    formatter.setColSpan(2, 0, 6);
    formatter.setHorizontalAlignment(2, 0, HasHorizontalAlignment.ALIGN_RIGHT);

    final HotelDealsTable table = new HotelDealsTable(10);
    panel.add(table);
    table.setWidth("500px");

    form.addSubmitHandler(new FormPanel.SubmitHandler() {
        @Override
        public void onSubmit(SubmitEvent event) {
            String dest = destText.getValue().trim();
            String start = startDateText.getValue().trim();
            String end = endDateText.getValue().trim();
            table.loadData(dest.length() == 0 ? null : dest, start.length() == 0 ? null : start,
                    end.length() == 0 ? null : end);
            event.cancel();
        }
    });

    infoPanel = new PopupPanel(true);
    infoPanel.setAutoHideOnHistoryEventsEnabled(true);
    infoGrid = new FlexTable();
    infoPanel.setWidget(infoGrid);
    FlowPanel linkPanel = new FlowPanel();
    infoGrid.setWidget(3, 0, linkPanel);

    Anchor mapLink = new Anchor("Map", "#");
    linkPanel.add(mapLink);
    mapLink.addClickHandler(new ClickHandler() {
        @Override
        public void onClick(ClickEvent event) {
            event.preventDefault();
            if (selectedResult == null)
                return;

            MarkerOptions opt = new MarkerOptions();
            opt.setTitle(selectedResult.getHeadline());
            LatLng latLng = new LatLng(selectedResult.getNeighborhoodLatitude(),
                    selectedResult.getNeighborhoodLongitude());
            opt.setPosition(latLng);
            opt.setClickable(true);
            opt.setVisible(true);
            mapWidget.show(new Marker(opt));

        }
    });

    mapWidget.addAutoHidePartner(mapLink.getElement());

    linkPanel.add(new InlineHTML("&nbsp;|&nbsp;"));
    linkPanel.add(visitLink = new Anchor("Visit", "#"));

    initWidget(new ScrollPanel(panel));
}

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;/*  ww  w . j  ava2s . co  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();
    }
}