1   
2   
3   
4   
5   
6   
7   
8   
9   
10  
11  
12  
13  
14  
15  
16  
17  
18  
19  package com.hack23.cia.web.impl.ui.page.common;
20  
21  import org.slf4j.Logger;
22  import org.slf4j.LoggerFactory;
23  import org.vaadin.navigator7.NavigableApplication;
24  
25  import com.hack23.cia.service.api.ApplicationManager;
26  import com.hack23.cia.service.api.ConfigurationManager;
27  import com.hack23.cia.web.impl.ui.common.ApplicationUserState;
28  import com.hack23.cia.web.impl.ui.common.ApplicationUserStateHolder;
29  import com.vaadin.Application;
30  import com.vaadin.terminal.gwt.server.WebApplicationContext;
31  import com.vaadin.terminal.gwt.server.WebBrowser;
32  import com.vaadin.ui.Component;
33  import com.vaadin.ui.CustomComponent;
34  
35  
36  
37  
38  public abstract class AbstractPage extends CustomComponent implements Page {
39  
40  	
41  	private static final long serialVersionUID = 1L;
42  
43  	
44  	private final transient ApplicationUserState userState;
45  
46  	
47  	private final transient ConfigurationManager configurationManager;
48  
49  	
50  	private final transient ApplicationManager applicationManager;
51  
52  	
53  	private static final Logger LOGGER = LoggerFactory
54  			.getLogger(AbstractPage.class);
55  
56  	
57  	private final String screenHeight;
58  
59  	
60  
61  
62  	protected AbstractPage() {
63  		super();
64  		userState = ApplicationUserStateHolder.getUserState();
65  		configurationManager = userState.getConfigurationManager();
66  		applicationManager = userState.getApplicationManager();
67  		screenHeight=calculateScreenHeightFromBrowser();
68  	}
69  
70  	
71  
72  
73  
74  
75  	private String calculateScreenHeightFromBrowser() {
76  		return (((((WebApplicationContext) ((Application) userState).getContext()).getBrowser().getScreenHeight()-120)  * 75) / 100) +"px";
77  	}
78  
79  	
80  
81  
82  
83  
84  	protected final ApplicationManager getApplicationManager() {
85  		return applicationManager;
86  	}
87  
88  	
89  
90  
91  
92  
93  	protected final WebBrowser getBrowser() {
94  		return ((WebApplicationContext) ((Application) userState).getContext()).getBrowser();
95  	}
96  
97  	
98  
99  
100 
101 
102 	protected final ConfigurationManager getConfigurationManager() {
103 		return configurationManager;
104 	}
105 
106 	
107 
108 
109 	@Override
110 	public final Logger getLogger() {
111 		return LOGGER;
112 	}
113 
114 	
115 
116 
117 	@Override
118 	public abstract String getPageTitle();
119 
120 	
121 
122 
123 
124 
125 	protected final String getScreenHeight() {
126 		return screenHeight;
127 	}
128 
129 	
130 
131 
132 	
133 
134 
135 
136 
137 	protected final ApplicationUserState getUserState() {
138 		return userState;
139 	}
140 
141 	
142 
143 
144 	@Override
145 	public final void navigateTo(final Class<? extends Component> page) {
146 		NavigableApplication.getCurrentNavigableAppLevelWindow().getNavigator().navigateTo(page);
147 
148 	}
149 
150 	
151 
152 
153 	@Override
154 	public final void navigateTo(final Class<? extends Component> page,final String params) {
155 		NavigableApplication.getCurrentNavigableAppLevelWindow().getNavigator().navigateTo(page,params);
156 	}
157 
158 	
159 
160 
161 
162 
163 
164 
165 	protected final String translateFromEnglish(final String string) {
166 		return userState.translateFromEnglish(string);
167 	}
168 
169 }