Example usage for com.intellij.openapi.ui.popup BalloonBuilder setDisposable

List of usage examples for com.intellij.openapi.ui.popup BalloonBuilder setDisposable

Introduction

In this page you can find the example usage for com.intellij.openapi.ui.popup BalloonBuilder setDisposable.

Prototype

@NotNull
BalloonBuilder setDisposable(@NotNull Disposable anchor);

Source Link

Document

Links target balloon life cycle to the given object.

Usage

From source file:com.intellij.ui.GotItMessage.java

License:Apache License

public void show(RelativePoint point, Balloon.Position position) {
    final GotItPanel panel = new GotItPanel();
    panel.myTitle.setText(myTitle);/*from   ww w  . j a v a 2  s  .  c o m*/
    panel.myMessage.setText(myMessage);

    panel.myButton.setCursor(Cursor.getPredefinedCursor(Cursor.HAND_CURSOR));
    final BalloonBuilder builder = JBPopupFactory.getInstance().createBalloonBuilder(panel.myRoot);
    if (myDisposable != null) {
        builder.setDisposable(myDisposable);
    }

    final Balloon balloon = builder.setFillColor(UIUtil.getListBackground()).setHideOnClickOutside(false)
            .setHideOnAction(false).setHideOnFrameResize(false).setHideOnKeyOutside(false)
            .setShowCallout(myShowCallout).setBlockClicksThroughBalloon(true).createBalloon();
    panel.myButton.addMouseListener(new MouseAdapter() {
        @Override
        public void mouseClicked(MouseEvent e) {
            balloon.hide();
            if (myCallback != null) {
                myCallback.run();
            }
        }
    });

    balloon.show(point, position);
}