package com.google.gwt.gwtpages.demo.client.pages; import com.google.gwt.event.dom.client.ClickEvent; import com.google.gwt.event.dom.client.HasClickHandlers; import com.google.gwt.event.shared.HasHandlers; import com.google.gwt.gwtpages.client.PageRequestSession; import com.google.gwt.gwtpages.client.message.Message; import com.google.gwt.gwtpages.client.message.Messages; import com.google.gwt.gwtpages.client.page.AsyncPageCallback; import com.google.gwt.gwtpages.client.page.impl.EventBoundPresenterPage; import com.google.gwt.gwtpages.client.page.parameters.PageParameters; import com.google.gwt.user.client.ui.HasText; import com.google.gwt.user.client.ui.HasWidgets; public class MessagesPage extends EventBoundPresenterPage { public interface View { HasWidgets sourceReferences(); HasText successMessage(); HasClickHandlers addSuccessMessage(); HasClickHandlers clearAndAddSuccessMessage(); HasText errorMessage(); HasClickHandlers addErrorMessage(); HasClickHandlers clearAndAddErrorMessage(); HasText warnMessage(); HasClickHandlers addWarnMessage(); HasClickHandlers clearAndAddWarnMessage(); HasText infoMessage(); HasClickHandlers addInfoMessage(); HasClickHandlers clearAndAddInfoMessage(); HasClickHandlers clearMessages(); } public MessagesPage() { } public void addSuccessMessage$onClick(ClickEvent event) { Messages.get().addMessage( Message.success(view().successMessage().getText())); resetMessages(); } public void clearAndAddSuccessMessage$onClick(ClickEvent event) { Messages.get().success(view().successMessage().getText()); resetMessages(); } public void addErrorMessage$onClick(ClickEvent event) { Messages.get().addMessage( Message.error(view().errorMessage().getText(), (HasHandlers) view().errorMessage())); resetMessages(); } public void clearAndAddErrorMessage$onClick(ClickEvent event) { Messages.get().error(view().errorMessage().getText(), (HasHandlers) view().errorMessage()); resetMessages(); } public void addWarnMessage$onClick(ClickEvent event) { Messages.get().addMessage(Message.warn(view().warnMessage().getText())); resetMessages(); } public void clearAndAddWarnMessage$onClick(ClickEvent event) { Messages.get().warn(view().warnMessage().getText()); resetMessages(); } public void addInfoMessage$onClick(ClickEvent event) { Messages.get().addMessage(Message.info(view().infoMessage().getText())); resetMessages(); } public void clearAndAddInfoMessage$onClick(ClickEvent event) { Messages.get().info(view().infoMessage().getText()); resetMessages(); } public void clearMessages$onClick(ClickEvent event) { Messages.get().clear(); } @Override protected void onConstruct(Object view) { } @Override public void onEnterPage(PageParameters parameters, PageRequestSession pageRequestData, AsyncPageCallback callback) { resetMessages(); } private void resetMessages() { view().successMessage().setText("Enter a message"); view().errorMessage().setText("Enter a message"); view().warnMessage().setText("Enter a message"); view().infoMessage().setText("Enter a message"); } private View view() { return (View) getRawView(); } }