Reports: Use quickFind.
[online-glom:gwt-glom.git] / src / main / java / org / glom / web / client / ClientFactory.java
1 /*
2  * Copyright (C) 2011 Openismus GmbH
3  *
4  * This file is part of GWT-Glom.
5  *
6  * GWT-Glom is free software: you can redistribute it and/or modify it
7  * under the terms of the GNU Lesser General Public License as published by the
8  * Free Software Foundation, either version 3 of the License, or (at your
9  * option) any later version.
10  *
11  * GWT-Glom is distributed in the hope that it will be useful, but WITHOUT
12  * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
13  * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU Lesser General Public License
14  * for more details.
15  *
16  * You should have received a copy of the GNU Lesser General Public License
17  * along with GWT-Glom.  If not, see <http://www.gnu.org/licenses/>.
18  */
19
20 package org.glom.web.client;
21
22 import org.glom.web.client.ui.AuthenticationPopup;
23 import org.glom.web.client.ui.DocumentSelectionView;
24 import org.glom.web.client.ui.DetailsView;
25 import org.glom.web.client.ui.ListView;
26 import org.glom.web.client.ui.ReportView;
27 import org.glom.web.client.ui.TableSelectionView;
28
29 import com.google.gwt.place.shared.PlaceController;
30 import com.google.web.bindery.event.shared.EventBus;
31
32 /**
33  * This creates the various views and other objects for OnlineGlom.
34  * 
35  * GWT.create(ClientFactory.class) actually instantiates ClientFactoryImpl (or an alternative) according to the rules in
36  * our OnlineGlom.gwt.xml. See http://code.google.com/webtoolkit/doc/latest/DevGuideMvpActivitiesAndPlaces.html
37  * 
38  * The *View types returned here are just interfaces, allowing alternative ClientFactory implementations to return
39  * instances of different actual view classes.
40  */
41 public interface ClientFactory {
42
43         EventBus getEventBus();
44
45         PlaceController getPlaceController();
46
47         DocumentSelectionView getDocumentSelectionView();
48
49         TableSelectionView getTableSelectionView();
50
51         ListView getListView();
52
53         AuthenticationPopup getAuthenticationPopup();
54
55         DetailsView getDetailsView();
56
57         ReportView getReportView();
58
59 }