ColorGradientControl colorGradient = new ColorGradientControl();
mapWidget.addControl(colorGradient);
mapOverlayManager.setMapWidget(mapWidget);
SearchWidget searchWidget = new SearchWidget();
searchWidget.setControl(control);
searchWidget.setMapWidget(mapWidget);
WelcomePagePresenter welcome = new WelcomePagePresenter();
AddressLookupPresenter addressLookup = new AddressLookupPresenter();
addressLookup.setControl(control);
ResultsFilterPresenter filter = new ResultsFilterPresenter();
filter.setControl(control);
ResultsTablePresenter resultsTable = new ResultsTablePresenter();
resultsTable.setControl(control);
resultsTable.setResultsModel(pagedResultsModel);
resultsTable.setMapOverlayManager(mapOverlayManager);
resultsTable.setResultsFilterWidget(filter.getWidget());
CustomTimedOverlayManager timedOverlayManager = new CustomTimedOverlayManager();
timedOverlayManager.setMapOverlayManager(mapOverlayManager);
timedOverlayManager.setQueryModel(queryModel);
timedOverlayManager.setColorGradientControl(colorGradient);
CustomTripPlanResultTablePresenter plansWidget = new CustomTripPlanResultTablePresenter();
plansWidget.setMapWidget(mapWidget);
ActiveResultPresenter activeResult = new ActiveResultPresenter();
activeResult.setMapOverlayManager(mapOverlayManager);
activeResult.setControl(control);
MainPage mainPage = new MainPage();
mainPage.setControl(control);
mainPage.setMapWidget(mapWidget);
mainPage.setSearchWidget(searchWidget);
mainPage.addResultsPanelWidget(welcome.getWidget());
mainPage.addResultsPanelWidget(addressLookup.getWidget());
mainPage.addResultsPanelWidget(resultsTable.getWidget());
mainPage.addResultsPanelWidget(activeResult.getWidget());
mainPage.addResultsPanelWidget(plansWidget.getWidget());
manager.addContextListener(mainPage);
SearchOriginMapPresenter searchOriginMapMarker = new SearchOriginMapPresenter();
searchOriginMapMarker.setMapOverlayManager(mapOverlayManager);
searchOriginMapMarker.setLocationQueryModel(queryModel);
/**
* Wire up all the listeners
*/
timedRegionModel.addModelListener(timedOverlayManager.getRegionModelListener());
timedPolygonModel.addModelListener(timedOverlayManager.getPolygonModelListener());
locationQueryModelEvents.addModelListener(control.getQueryModelHandler());
queryModelEvents.addModelListener(searchWidget.getQueryModelHandler());
resultsModelEvents.addModelListener(filteredResultsModel.getResultsModelHandler());
resultsModelEvents.addModelListener(filter.getResultsModelHandler());
filteredResultsModelEvents.addModelListener(pagedResultsModel.getModelListener());