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 }