List of usage examples for com.google.gwt.user.client.ui DialogBox DialogBox
public DialogBox(boolean autoHide, boolean modal)
From source file:com.databasepreservation.visualization.client.common.Dialogs.java
public static void showPromptDialog(String title, String message, String placeHolder, final RegExp validator, String cancelButtonText, String confirmButtonText, final AsyncCallback<String> callback) { final DialogBox dialogBox = new DialogBox(false, true); dialogBox.setText(title);/*from w ww . j av a2 s .c o m*/ final FlowPanel layout = new FlowPanel(); if (message != null) { final Label messageLabel = new Label(message); layout.add(messageLabel); messageLabel.addStyleName("wui-dialog-message"); } final TextBox inputBox = new TextBox(); if (placeHolder != null) { inputBox.getElement().setPropertyString("placeholder", placeHolder); } final Button cancelButton = new Button(cancelButtonText); final Button confirmButton = new Button(confirmButtonText); layout.add(inputBox); layout.add(cancelButton); layout.add(confirmButton); dialogBox.setWidget(layout); dialogBox.setGlassEnabled(true); dialogBox.setAnimationEnabled(false); cancelButton.addClickHandler(new ClickHandler() { @Override public void onClick(ClickEvent event) { dialogBox.hide(); callback.onFailure(null); } }); confirmButton.addClickHandler(new ClickHandler() { @Override public void onClick(ClickEvent event) { dialogBox.hide(); callback.onSuccess(inputBox.getText()); } }); inputBox.addValueChangeHandler(new ValueChangeHandler<String>() { @Override public void onValueChange(ValueChangeEvent<String> event) { boolean isValid = validator.test(inputBox.getText()); if (isValid) { inputBox.addStyleName("error"); } else { inputBox.removeStyleName("error"); } } }); inputBox.addKeyPressHandler(new KeyPressHandler() { @Override public void onKeyPress(KeyPressEvent event) { boolean isValid = validator.test(inputBox.getText()); confirmButton.setEnabled(isValid); } }); inputBox.addKeyDownHandler(new KeyDownHandler() { @Override public void onKeyDown(KeyDownEvent event) { if (event.getNativeKeyCode() == KeyCodes.KEY_ENTER) { boolean isValid = validator.test(inputBox.getText()); if (isValid) { dialogBox.hide(); callback.onSuccess(inputBox.getText()); } } } }); confirmButton.setEnabled(validator.test(inputBox.getText())); dialogBox.addStyleName("wui-dialog-prompt"); layout.addStyleName("wui-dialog-layout"); inputBox.addStyleName("form-textbox wui-dialog-message"); cancelButton.addStyleName("btn btn-link"); confirmButton.addStyleName("pull-right btn btn-play"); dialogBox.center(); dialogBox.show(); inputBox.setFocus(true); }
From source file:com.databasepreservation.visualization.client.common.Dialogs.java
public static DialogBox showLoadingModel() { final DialogBox dialogBox = new DialogBox(false, true); dialogBox.setText("Loading..."); FlowPanel layout = new FlowPanel(); Label messageLabel = new Label(messages.executingTaskMessage()); layout.add(messageLabel);//from ww w . java 2 s . c om dialogBox.setWidget(layout); dialogBox.setGlassEnabled(true); dialogBox.setAnimationEnabled(false); dialogBox.addStyleName("wui-dialog-information"); layout.addStyleName("wui-dialog-layout"); messageLabel.addStyleName("wui-dialog-message"); dialogBox.center(); dialogBox.show(); return dialogBox; }
From source file:com.devbliss.gwtbliss.client.ExceptionPreBootstrapper.java
License:Apache License
/** * Shows the given exception to the user. *//*w w w . ja v a 2 s. c o m*/ private void showExceptionPopup(final Throwable e) { final String output = getQuote() + getStacktrace(e); final DialogBox dialogBox = new DialogBox(true, false); DOM.setStyleAttribute(dialogBox.getElement(), "backgroundColor", "#ABCDEF"); dialogBox.setHTML("<pre style='font-family: monospace; font-size: 0.8em; margin: 0; padding: 10px;'>" + output + "</pre>"); dialogBox.center(); }
From source file:com.google.appinventor.client.editor.youngandroid.TutorialPanel.java
License:Open Source License
/** * Creates video on page!/*from w ww. j av a 2 s.c o m*/ */ private static void createVideoDialog(String tutorialId) { // Create the UI elements of the DialogBox final DialogBox dialogBox = new DialogBox(true, true); // DialogBox(autohide, modal) dialogBox.setStylePrimaryName("ode-DialogBox"); dialogBox.setText("Tutorial Video"); dialogBox.setGlassEnabled(true); dialogBox.setAnimationEnabled(true); VerticalPanel DialogBoxContents = new VerticalPanel(); // Adds Youtube Video HTML message = new HTML("<iframe width=\"560\" height=\"315\" src=\"https://www.youtube.com/embed/" + tutorialId + "?rel=0&autoplay=1\" frameborder=\"0\" allowfullscreen></iframe>"); message.setStyleName("DialogBox-message"); FlowPanel holder = new FlowPanel(); Button ok = new Button("Close"); ok.addClickListener(new ClickListener() { public void onClick(Widget sender) { dialogBox.hide(); } }); ok.setStyleName("DialogBox-button"); holder.add(ok); DialogBoxContents.add(message); DialogBoxContents.add(holder); dialogBox.setWidget(DialogBoxContents); dialogBox.center(); dialogBox.show(); }
From source file:com.google.appinventor.client.editor.youngandroid.TutorialPanel.java
License:Open Source License
/** * Enlarges image on page/*from ww w . j ava 2 s .c o m*/ */ private static void createImageDialog(String img) { // Create the UI elements of the DialogBox final DialogBox dialogBox = new DialogBox(true, true); // DialogBox(autohide, modal) dialogBox.setStylePrimaryName("ode-DialogBox"); dialogBox.setGlassEnabled(true); dialogBox.setAnimationEnabled(true); VerticalPanel DialogBoxContents = new VerticalPanel(); FlowPanel holder = new FlowPanel(); Button ok = new Button("Close"); ok.addClickListener(new ClickListener() { public void onClick(Widget sender) { dialogBox.hide(); } }); ok.setStyleName("DialogBox-button"); // Adds Image Image image = new Image(img); image.addLoadHandler(new LoadHandler() { public void onLoad(LoadEvent evt) { dialogBox.center(); } }); image.setStyleName("DialogBox-image"); holder.add(ok); DialogBoxContents.add(image); DialogBoxContents.add(holder); dialogBox.setWidget(DialogBoxContents); dialogBox.center(); dialogBox.show(); }
From source file:com.google.appinventor.client.Ode.java
License:Open Source License
/** * Creates, visually centers, and optionally displays the dialog box * that informs the user how to start learning about using App Inventor * or create a new project./*from w w w. j a v a 2 s . c om*/ * @param showDialog Convenience variable to show the created DialogBox. * @return The created and optionally displayed Dialog box. */ public DialogBox createNoProjectsDialog(boolean showDialog) { // Create the UI elements of the DialogBox final DialogBox dialogBox = new DialogBox(true, false); //DialogBox(autohide, modal) dialogBox.setStylePrimaryName("ode-DialogBox"); dialogBox.setText(MESSAGES.createNoProjectsDialogText()); Grid mainGrid = new Grid(2, 2); mainGrid.getCellFormatter().setAlignment(0, 0, HasHorizontalAlignment.ALIGN_CENTER, HasVerticalAlignment.ALIGN_MIDDLE); mainGrid.getCellFormatter().setAlignment(0, 1, HasHorizontalAlignment.ALIGN_CENTER, HasVerticalAlignment.ALIGN_MIDDLE); mainGrid.getCellFormatter().setAlignment(1, 1, HasHorizontalAlignment.ALIGN_RIGHT, HasVerticalAlignment.ALIGN_MIDDLE); Image dialogImage = new Image(Ode.getImageBundle().androidGreenSmall()); Grid messageGrid = new Grid(2, 1); messageGrid.getCellFormatter().setAlignment(0, 0, HasHorizontalAlignment.ALIGN_JUSTIFY, HasVerticalAlignment.ALIGN_MIDDLE); messageGrid.getCellFormatter().setAlignment(1, 0, HasHorizontalAlignment.ALIGN_LEFT, HasVerticalAlignment.ALIGN_MIDDLE); Label messageChunk1 = new HTML(MESSAGES.createNoProjectsDialogMessage1()); messageChunk1.setWidth("23em"); Label messageChunk2 = new Label(MESSAGES.createNoprojectsDialogMessage2()); // Add the elements to the grids and DialogBox. messageGrid.setWidget(0, 0, messageChunk1); messageGrid.setWidget(1, 0, messageChunk2); mainGrid.setWidget(0, 0, dialogImage); mainGrid.setWidget(0, 1, messageGrid); dialogBox.setWidget(mainGrid); dialogBox.center(); if (showDialog) { dialogBox.show(); } return dialogBox; }
From source file:com.google.appinventor.client.Ode.java
License:Open Source License
/** * Possibly display the MIT App Inventor "Splash Screen" * * @param force Bypass the check to see if they have dimissed this version *//*from ww w.j a v a2 s.c o m*/ private void createWelcomeDialog(boolean force) { if (!shouldShowWelcomeDialog() && !force) { openProjectsTab(); return; } // Create the UI elements of the DialogBox final DialogBox dialogBox = new DialogBox(false, true); // DialogBox(autohide, modal) dialogBox.setStylePrimaryName("ode-DialogBox"); dialogBox.setText(MESSAGES.createWelcomeDialogText()); dialogBox.setHeight(splashConfig.height + "px"); dialogBox.setWidth(splashConfig.width + "px"); dialogBox.setGlassEnabled(true); dialogBox.setAnimationEnabled(true); dialogBox.center(); VerticalPanel DialogBoxContents = new VerticalPanel(); HTML message = new HTML(splashConfig.content); message.setStyleName("DialogBox-message"); FlowPanel holder = new FlowPanel(); Button ok = new Button(MESSAGES.createWelcomeDialogButton()); final CheckBox noshow = new CheckBox(MESSAGES.doNotShow()); ok.addClickListener(new ClickListener() { public void onClick(Widget sender) { dialogBox.hide(); if (noshow.getValue()) { // User checked the box userSettings.getSettings(SettingsConstants.SPLASH_SETTINGS).changePropertyValue( SettingsConstants.SPLASH_SETTINGS_VERSION, "" + splashConfig.version); userSettings.saveSettings(null); } openProjectsTab(); } }); holder.add(ok); holder.add(noshow); DialogBoxContents.add(message); DialogBoxContents.add(holder); dialogBox.setWidget(DialogBoxContents); dialogBox.show(); }
From source file:com.google.appinventor.client.Ode.java
License:Open Source License
/** * Show a Survey Splash Screen to the user if they have not previously * acknowledged it.//from www . ja va 2 s . c o m */ private void showSurveySplash() { // Create the UI elements of the DialogBox if (isReadOnly) { // Bypass the survey if we are read-only maybeShowSplash(); return; } final DialogBox dialogBox = new DialogBox(false, true); // DialogBox(autohide, modal) dialogBox.setStylePrimaryName("ode-DialogBox"); dialogBox.setText(MESSAGES.createWelcomeDialogText()); dialogBox.setHeight("200px"); dialogBox.setWidth("600px"); dialogBox.setGlassEnabled(true); dialogBox.setAnimationEnabled(true); dialogBox.center(); VerticalPanel DialogBoxContents = new VerticalPanel(); HTML message = new HTML(MESSAGES.showSurveySplashMessage()); message.setStyleName("DialogBox-message"); FlowPanel holder = new FlowPanel(); Button takesurvey = new Button(MESSAGES.showSurveySplashButtonNow()); takesurvey.addClickListener(new ClickListener() { public void onClick(Widget sender) { dialogBox.hide(); // Update Splash Settings here userSettings.getSettings(SettingsConstants.SPLASH_SETTINGS).changePropertyValue( SettingsConstants.SPLASH_SETTINGS_SHOWSURVEY, "" + YaVersion.SPLASH_SURVEY); userSettings.saveSettings(null); takeSurvey(); // Open survey in a new window maybeShowSplash(); } }); holder.add(takesurvey); Button latersurvey = new Button(MESSAGES.showSurveySplashButtonLater()); latersurvey.addClickListener(new ClickListener() { public void onClick(Widget sender) { dialogBox.hide(); maybeShowSplash(); } }); holder.add(latersurvey); Button neversurvey = new Button(MESSAGES.showSurveySplashButtonNever()); neversurvey.addClickListener(new ClickListener() { public void onClick(Widget sender) { dialogBox.hide(); // Update Splash Settings here Settings settings = userSettings.getSettings(SettingsConstants.SPLASH_SETTINGS); settings.changePropertyValue(SettingsConstants.SPLASH_SETTINGS_SHOWSURVEY, "" + YaVersion.SPLASH_SURVEY); String declined = settings.getPropertyValue(SettingsConstants.SPLASH_SETTINGS_DECLINED); if (declined == null) declined = ""; // Shouldn't happen if (declined != "") declined += ","; declined += "" + YaVersion.SPLASH_SURVEY; // Record that we declined this survey settings.changePropertyValue(SettingsConstants.SPLASH_SETTINGS_DECLINED, declined); userSettings.saveSettings(null); maybeShowSplash(); } }); holder.add(neversurvey); DialogBoxContents.add(message); DialogBoxContents.add(holder); dialogBox.setWidget(DialogBoxContents); dialogBox.show(); }
From source file:com.google.appinventor.client.Ode.java
License:Open Source License
/** * Show a Dialog Box when we receive an SC_PRECONDITION_FAILED * response code to any Async RPC call. This is a signal that * either our session has expired, or our login cookie has otherwise * become invalid. This is a fatal error and the user should not * be permitted to continue (many ignore the red error bar and keep * working, in vain). So now when this happens, we put up this * modal dialog box which cannot be dismissed. Instead it presents * just one option, a "Reload" button which reloads the browser. * This should trigger a re-authentication (or in the case of an * App Inventor upgrade trigging the problem, the loading of newer * code)./*from w w w . j a va2s. c o m*/ */ public void sessionDead() { // Create the UI elements of the DialogBox final DialogBox dialogBox = new DialogBox(false, true); // DialogBox(autohide, modal) dialogBox.setStylePrimaryName("ode-DialogBox"); dialogBox.setText(MESSAGES.invalidSessionDialogText()); dialogBox.setWidth("400px"); dialogBox.setGlassEnabled(true); dialogBox.setAnimationEnabled(true); dialogBox.center(); VerticalPanel DialogBoxContents = new VerticalPanel(); HTML message = new HTML(MESSAGES.sessionDead()); message.setStyleName("DialogBox-message"); FlowPanel holder = new FlowPanel(); Button reloadSession = new Button(MESSAGES.reloadWindow()); reloadSession.addClickListener(new ClickListener() { public void onClick(Widget sender) { dialogBox.hide(); reloadWindow(true); } }); holder.add(reloadSession); DialogBoxContents.add(message); DialogBoxContents.add(holder); dialogBox.setWidget(DialogBoxContents); dialogBox.show(); }
From source file:com.google.appinventor.client.Ode.java
License:Open Source License
/** * Show a Warning Dialog box when another login session has been * created. The user is then given two choices. They can either * close this session of App Inventor, which will close the current * window, or they can click "Take Over" which will reload this * window effectively making it the latest login and invalidating * all other sessions.//www .ja v a2 s. c o m * * We are called from OdeAsyncCallback when we detect that our * session has been invalidated. */ public void invalidSessionDialog() { // Create the UI elements of the DialogBox final DialogBox dialogBox = new DialogBox(false, true); // DialogBox(autohide, modal) dialogBox.setStylePrimaryName("ode-DialogBox"); dialogBox.setText(MESSAGES.invalidSessionDialogText()); dialogBox.setHeight("200px"); dialogBox.setWidth("800px"); dialogBox.setGlassEnabled(true); dialogBox.setAnimationEnabled(true); dialogBox.center(); VerticalPanel DialogBoxContents = new VerticalPanel(); HTML message = new HTML(MESSAGES.invalidSessionDialogMessage()); message.setStyleName("DialogBox-message"); FlowPanel holder = new FlowPanel(); Button closeSession = new Button(MESSAGES.invalidSessionDialogButtonEnd()); closeSession.addClickListener(new ClickListener() { public void onClick(Widget sender) { dialogBox.hide(); finalDialog(); } }); holder.add(closeSession); Button reloadSession = new Button(MESSAGES.invalidSessionDialogButtonCurrent()); reloadSession.addClickListener(new ClickListener() { public void onClick(Widget sender) { dialogBox.hide(); reloadWindow(false); } }); holder.add(reloadSession); Button continueSession = new Button(MESSAGES.invalidSessionDialogButtonContinue()); continueSession.addClickListener(new ClickListener() { public void onClick(Widget sender) { dialogBox.hide(); bashWarningDialog(); } }); holder.add(continueSession); DialogBoxContents.add(message); DialogBoxContents.add(holder); dialogBox.setWidget(DialogBoxContents); dialogBox.show(); }