/* * GNU GENERAL PUBLIC LICENSE, Version 3, 29 June 2007 */ package com.google.gwt.gwtpages.client.event; import com.google.gwt.event.shared.EventHandler; import com.google.gwt.event.shared.GwtEvent; import com.google.gwt.gwtpages.client.GotoPageCommand; import com.google.gwt.gwtpages.client.page.LoadedPageContainer; import com.google.gwt.gwtpages.client.page.parameters.PageParameters; /** * Event representing that a page has been shown. * * @author Joe Hudson */ public class PageShownEvent extends GwtEvent<PageShownEvent.PageShownHandler> { public interface PageShownHandler extends EventHandler { /** * Event handler fired when a page is shown using the display manager * * @param currentPageData * the page load result for the page to be shown * @param previousPageData * the page load result for the previous page * @param pageStack * the current page stack */ void onPageShown(LoadedPageContainer currentPageData, PageParameters parameters, GotoPageCommand command, LoadedPageContainer previousPageData); } private LoadedPageContainer previousPageData; private LoadedPageContainer currentPageData; private PageParameters parameters; private GotoPageCommand command; public PageShownEvent(LoadedPageContainer currentPageData, PageParameters parameters, GotoPageCommand command, LoadedPageContainer previousPageData) { this.currentPageData = currentPageData; this.parameters = parameters; this.command = command; this.previousPageData = previousPageData; } public static final GwtEvent.Type<PageShownEvent.PageShownHandler> TYPE = new GwtEvent.Type<PageShownHandler>(); @Override public com.google.gwt.event.shared.GwtEvent.Type<PageShownHandler> getAssociatedType() { return TYPE; } @Override protected void dispatch(PageShownEvent.PageShownHandler handler) { handler.onPageShown(currentPageData, parameters, command, previousPageData); } }