Package org.jboss.gwt.circuit.sample.todo.client.views

Source Code of org.jboss.gwt.circuit.sample.todo.client.views.Dialog

package org.jboss.gwt.circuit.sample.todo.client.views;

import com.google.gwt.core.client.Scheduler;
import com.google.gwt.event.dom.client.ClickEvent;
import com.google.gwt.event.dom.client.ClickHandler;
import com.google.gwt.event.logical.shared.CloseEvent;
import com.google.gwt.event.logical.shared.CloseHandler;
import com.google.gwt.user.client.rpc.AsyncCallback;
import com.google.gwt.user.client.ui.Button;
import com.google.gwt.user.client.ui.DialogBox;
import com.google.gwt.user.client.ui.PopupPanel;
import com.google.gwt.user.client.ui.TextArea;
import com.google.gwt.user.client.ui.VerticalPanel;

/**
* @author Heiko Braun
* @date 25/06/14
*/
public class Dialog {

    public static void askFor(String message, final AsyncCallback<String> callback) {

        final DialogBox dialog = new DialogBox();
        dialog.setText(message);
        dialog.setPixelSize(320, 240);
        dialog.setModal(true);
        dialog.setAutoHideEnabled(true);

        VerticalPanel panel = new VerticalPanel();
        final TextArea text = new TextArea();
        panel.add(text);
        panel.add(new Button("Done", new ClickHandler() {
            @Override
            public void onClick(ClickEvent clickEvent) {
                dialog.hide();
            }
        }));

        dialog.setWidget(panel);

        dialog.addCloseHandler(new CloseHandler<PopupPanel>() {
            @Override
            public void onClose(CloseEvent<PopupPanel> popupPanelCloseEvent) {
                callback.onSuccess(text.getText());
            }
        });

        dialog.center();
        Scheduler.get().scheduleDeferred(new Scheduler.ScheduledCommand() {
            @Override
            public void execute() {
                text.setFocus(true);
            }
        });
    }
}
TOP

Related Classes of org.jboss.gwt.circuit.sample.todo.client.views.Dialog

TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.