/** * Display a Prompting Message to enter some text in the Application. The OK button will be * enabled iff the text is not empty or blank. * * @param title * @param message * @param callback */ public static MessageBox promptMessage( String title, String message, Listener<MessageBoxEvent> callback) { final MessageBox box = MessageBox.prompt(title, message, callback); final Button okButton = box.getDialog().getButtonById(Dialog.OK); okButton.disable(); final TextField<String> textBox = box.getTextBox(); textBox.addKeyListener( new KeyListener() { @Override public void componentKeyPress(ComponentEvent event) { if (okButton.isEnabled() && event.getKeyCode() == KeyCodes.KEY_ENTER) { box.getDialog().hide(okButton); } } }); box.addListener( Events.OnKeyUp, new Listener<MessageBoxEvent>() { @Override public void handleEvent(MessageBoxEvent be) { String value = textBox.getValue(); if (value == null || value.trim().equals("")) { okButton.disable(); } else { okButton.enable(); } } }); return box; }