Mercurial > dive4elements > river
annotate flys-client/src/main/java/de/intevation/flys/client/client/ui/FLYSHeader.java @ 5144:2c31625d4e6a
New icons! Use the new icons in project list and for export buttons.
author | Raimund Renkert <rrenkert@intevation.de> |
---|---|
date | Thu, 28 Feb 2013 16:40:16 +0100 |
parents | 33bb8bf3899a |
children |
rev | line source |
---|---|
27
e4155a6833a9
Integrated a header that contains a FLYS and a BfG logo.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
1 package de.intevation.flys.client.client.ui; |
e4155a6833a9
Integrated a header that contains a FLYS and a BfG logo.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
2 |
e4155a6833a9
Integrated a header that contains a FLYS and a BfG logo.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
3 import com.google.gwt.core.client.GWT; |
4602
33bb8bf3899a
Merge the MainMenu into the FLYSHeader
Björn Ricks <bjoern.ricks@intevation.de>
parents:
1401
diff
changeset
|
4 import com.google.gwt.i18n.client.LocaleInfo; |
33bb8bf3899a
Merge the MainMenu into the FLYSHeader
Björn Ricks <bjoern.ricks@intevation.de>
parents:
1401
diff
changeset
|
5 import com.google.gwt.user.client.Window; |
33bb8bf3899a
Merge the MainMenu into the FLYSHeader
Björn Ricks <bjoern.ricks@intevation.de>
parents:
1401
diff
changeset
|
6 import com.google.gwt.user.client.rpc.AsyncCallback; |
27
e4155a6833a9
Integrated a header that contains a FLYS and a BfG logo.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
7 |
e4155a6833a9
Integrated a header that contains a FLYS and a BfG logo.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
8 import com.smartgwt.client.types.Alignment; |
4602
33bb8bf3899a
Merge the MainMenu into the FLYSHeader
Björn Ricks <bjoern.ricks@intevation.de>
parents:
1401
diff
changeset
|
9 import com.smartgwt.client.types.VerticalAlignment; |
33bb8bf3899a
Merge the MainMenu into the FLYSHeader
Björn Ricks <bjoern.ricks@intevation.de>
parents:
1401
diff
changeset
|
10 import com.smartgwt.client.util.BooleanCallback; |
33bb8bf3899a
Merge the MainMenu into the FLYSHeader
Björn Ricks <bjoern.ricks@intevation.de>
parents:
1401
diff
changeset
|
11 import com.smartgwt.client.util.SC; |
33bb8bf3899a
Merge the MainMenu into the FLYSHeader
Björn Ricks <bjoern.ricks@intevation.de>
parents:
1401
diff
changeset
|
12 import com.smartgwt.client.widgets.Button; |
27
e4155a6833a9
Integrated a header that contains a FLYS and a BfG logo.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
13 import com.smartgwt.client.widgets.Img; |
e4155a6833a9
Integrated a header that contains a FLYS and a BfG logo.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
14 import com.smartgwt.client.widgets.Label; |
e4155a6833a9
Integrated a header that contains a FLYS and a BfG logo.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
15 import com.smartgwt.client.widgets.layout.HLayout; |
4602
33bb8bf3899a
Merge the MainMenu into the FLYSHeader
Björn Ricks <bjoern.ricks@intevation.de>
parents:
1401
diff
changeset
|
16 import com.smartgwt.client.widgets.events.ClickEvent; |
33bb8bf3899a
Merge the MainMenu into the FLYSHeader
Björn Ricks <bjoern.ricks@intevation.de>
parents:
1401
diff
changeset
|
17 import com.smartgwt.client.widgets.events.ClickHandler; |
27
e4155a6833a9
Integrated a header that contains a FLYS and a BfG logo.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
18 |
4602
33bb8bf3899a
Merge the MainMenu into the FLYSHeader
Björn Ricks <bjoern.ricks@intevation.de>
parents:
1401
diff
changeset
|
19 import de.intevation.flys.client.client.FLYS; |
211
b92281182c6b
Removed the FLYSMessages interface and replaced it with a FLYSConstants interface - this interface has the ability to lookup i18n strings with given keys.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
66
diff
changeset
|
20 import de.intevation.flys.client.client.FLYSConstants; |
4602
33bb8bf3899a
Merge the MainMenu into the FLYSHeader
Björn Ricks <bjoern.ricks@intevation.de>
parents:
1401
diff
changeset
|
21 import de.intevation.flys.client.client.services.UserService; |
33bb8bf3899a
Merge the MainMenu into the FLYSHeader
Björn Ricks <bjoern.ricks@intevation.de>
parents:
1401
diff
changeset
|
22 import de.intevation.flys.client.client.services.UserServiceAsync; |
33bb8bf3899a
Merge the MainMenu into the FLYSHeader
Björn Ricks <bjoern.ricks@intevation.de>
parents:
1401
diff
changeset
|
23 import de.intevation.flys.client.shared.model.User; |
27
e4155a6833a9
Integrated a header that contains a FLYS and a BfG logo.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
24 |
e4155a6833a9
Integrated a header that contains a FLYS and a BfG logo.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
25 |
e4155a6833a9
Integrated a header that contains a FLYS and a BfG logo.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
26 /** |
e4155a6833a9
Integrated a header that contains a FLYS and a BfG logo.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
27 * @author <a href="mailto:ingo.weinzierl@intevation.de">Ingo Weinzierl</a> |
e4155a6833a9
Integrated a header that contains a FLYS and a BfG logo.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
28 */ |
e4155a6833a9
Integrated a header that contains a FLYS and a BfG logo.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
29 public class FLYSHeader extends HLayout { |
e4155a6833a9
Integrated a header that contains a FLYS and a BfG logo.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
30 |
e4155a6833a9
Integrated a header that contains a FLYS and a BfG logo.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
31 /** The interface that provides the message resources. */ |
211
b92281182c6b
Removed the FLYSMessages interface and replaced it with a FLYSConstants interface - this interface has the ability to lookup i18n strings with given keys.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
66
diff
changeset
|
32 private FLYSConstants MESSAGES = GWT.create(FLYSConstants.class); |
27
e4155a6833a9
Integrated a header that contains a FLYS and a BfG logo.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
33 |
e4155a6833a9
Integrated a header that contains a FLYS and a BfG logo.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
34 /** The height used for this header.*/ |
4602
33bb8bf3899a
Merge the MainMenu into the FLYSHeader
Björn Ricks <bjoern.ricks@intevation.de>
parents:
1401
diff
changeset
|
35 public static final int HEIGHT = 56; |
27
e4155a6833a9
Integrated a header that contains a FLYS and a BfG logo.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
36 |
e4155a6833a9
Integrated a header that contains a FLYS and a BfG logo.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
37 /** The height used for the images.*/ |
e4155a6833a9
Integrated a header that contains a FLYS and a BfG logo.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
38 public static final int IMG_HEIGHT = 50; |
e4155a6833a9
Integrated a header that contains a FLYS and a BfG logo.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
39 |
4602
33bb8bf3899a
Merge the MainMenu into the FLYSHeader
Björn Ricks <bjoern.ricks@intevation.de>
parents:
1401
diff
changeset
|
40 /** The user that is currently logged in. */ |
33bb8bf3899a
Merge the MainMenu into the FLYSHeader
Björn Ricks <bjoern.ricks@intevation.de>
parents:
1401
diff
changeset
|
41 private User currentUser; |
27
e4155a6833a9
Integrated a header that contains a FLYS and a BfG logo.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
42 |
4602
33bb8bf3899a
Merge the MainMenu into the FLYSHeader
Björn Ricks <bjoern.ricks@intevation.de>
parents:
1401
diff
changeset
|
43 /** The label that displays the current logged in user. */ |
33bb8bf3899a
Merge the MainMenu into the FLYSHeader
Björn Ricks <bjoern.ricks@intevation.de>
parents:
1401
diff
changeset
|
44 private Label userText; |
33bb8bf3899a
Merge the MainMenu into the FLYSHeader
Björn Ricks <bjoern.ricks@intevation.de>
parents:
1401
diff
changeset
|
45 |
33bb8bf3899a
Merge the MainMenu into the FLYSHeader
Björn Ricks <bjoern.ricks@intevation.de>
parents:
1401
diff
changeset
|
46 /** The button to log the current user out.*/ |
33bb8bf3899a
Merge the MainMenu into the FLYSHeader
Björn Ricks <bjoern.ricks@intevation.de>
parents:
1401
diff
changeset
|
47 private Button logout; |
33bb8bf3899a
Merge the MainMenu into the FLYSHeader
Björn Ricks <bjoern.ricks@intevation.de>
parents:
1401
diff
changeset
|
48 |
33bb8bf3899a
Merge the MainMenu into the FLYSHeader
Björn Ricks <bjoern.ricks@intevation.de>
parents:
1401
diff
changeset
|
49 /** The button to open the project list.*/ |
33bb8bf3899a
Merge the MainMenu into the FLYSHeader
Björn Ricks <bjoern.ricks@intevation.de>
parents:
1401
diff
changeset
|
50 private Button projectList; |
33bb8bf3899a
Merge the MainMenu into the FLYSHeader
Björn Ricks <bjoern.ricks@intevation.de>
parents:
1401
diff
changeset
|
51 |
33bb8bf3899a
Merge the MainMenu into the FLYSHeader
Björn Ricks <bjoern.ricks@intevation.de>
parents:
1401
diff
changeset
|
52 /** The button to switch between the english and german version.*/ |
33bb8bf3899a
Merge the MainMenu into the FLYSHeader
Björn Ricks <bjoern.ricks@intevation.de>
parents:
1401
diff
changeset
|
53 private Button language; |
33bb8bf3899a
Merge the MainMenu into the FLYSHeader
Björn Ricks <bjoern.ricks@intevation.de>
parents:
1401
diff
changeset
|
54 |
33bb8bf3899a
Merge the MainMenu into the FLYSHeader
Björn Ricks <bjoern.ricks@intevation.de>
parents:
1401
diff
changeset
|
55 /** The button to open an info panel.*/ |
33bb8bf3899a
Merge the MainMenu into the FLYSHeader
Björn Ricks <bjoern.ricks@intevation.de>
parents:
1401
diff
changeset
|
56 private Button info; |
33bb8bf3899a
Merge the MainMenu into the FLYSHeader
Björn Ricks <bjoern.ricks@intevation.de>
parents:
1401
diff
changeset
|
57 |
33bb8bf3899a
Merge the MainMenu into the FLYSHeader
Björn Ricks <bjoern.ricks@intevation.de>
parents:
1401
diff
changeset
|
58 private UserServiceAsync userService = |
33bb8bf3899a
Merge the MainMenu into the FLYSHeader
Björn Ricks <bjoern.ricks@intevation.de>
parents:
1401
diff
changeset
|
59 GWT.create(UserService.class); |
33bb8bf3899a
Merge the MainMenu into the FLYSHeader
Björn Ricks <bjoern.ricks@intevation.de>
parents:
1401
diff
changeset
|
60 |
33bb8bf3899a
Merge the MainMenu into the FLYSHeader
Björn Ricks <bjoern.ricks@intevation.de>
parents:
1401
diff
changeset
|
61 /** An instance to FLYS.*/ |
33bb8bf3899a
Merge the MainMenu into the FLYSHeader
Björn Ricks <bjoern.ricks@intevation.de>
parents:
1401
diff
changeset
|
62 private FLYS flys; |
33bb8bf3899a
Merge the MainMenu into the FLYSHeader
Björn Ricks <bjoern.ricks@intevation.de>
parents:
1401
diff
changeset
|
63 |
33bb8bf3899a
Merge the MainMenu into the FLYSHeader
Björn Ricks <bjoern.ricks@intevation.de>
parents:
1401
diff
changeset
|
64 |
33bb8bf3899a
Merge the MainMenu into the FLYSHeader
Björn Ricks <bjoern.ricks@intevation.de>
parents:
1401
diff
changeset
|
65 public FLYSHeader(FLYS flys) { |
33bb8bf3899a
Merge the MainMenu into the FLYSHeader
Björn Ricks <bjoern.ricks@intevation.de>
parents:
1401
diff
changeset
|
66 this.flys = flys; |
33bb8bf3899a
Merge the MainMenu into the FLYSHeader
Björn Ricks <bjoern.ricks@intevation.de>
parents:
1401
diff
changeset
|
67 |
33bb8bf3899a
Merge the MainMenu into the FLYSHeader
Björn Ricks <bjoern.ricks@intevation.de>
parents:
1401
diff
changeset
|
68 String guest = MESSAGES.user() + " " + MESSAGES.guest(); |
33bb8bf3899a
Merge the MainMenu into the FLYSHeader
Björn Ricks <bjoern.ricks@intevation.de>
parents:
1401
diff
changeset
|
69 |
33bb8bf3899a
Merge the MainMenu into the FLYSHeader
Björn Ricks <bjoern.ricks@intevation.de>
parents:
1401
diff
changeset
|
70 userText = new Label(guest); |
33bb8bf3899a
Merge the MainMenu into the FLYSHeader
Björn Ricks <bjoern.ricks@intevation.de>
parents:
1401
diff
changeset
|
71 projectList = new Button(MESSAGES.manage_projects()); |
33bb8bf3899a
Merge the MainMenu into the FLYSHeader
Björn Ricks <bjoern.ricks@intevation.de>
parents:
1401
diff
changeset
|
72 logout = new Button(MESSAGES.logout()); |
33bb8bf3899a
Merge the MainMenu into the FLYSHeader
Björn Ricks <bjoern.ricks@intevation.de>
parents:
1401
diff
changeset
|
73 language = new Button(MESSAGES.switch_language()); |
33bb8bf3899a
Merge the MainMenu into the FLYSHeader
Björn Ricks <bjoern.ricks@intevation.de>
parents:
1401
diff
changeset
|
74 info = new Button(MESSAGES.info()); |
33bb8bf3899a
Merge the MainMenu into the FLYSHeader
Björn Ricks <bjoern.ricks@intevation.de>
parents:
1401
diff
changeset
|
75 |
33bb8bf3899a
Merge the MainMenu into the FLYSHeader
Björn Ricks <bjoern.ricks@intevation.de>
parents:
1401
diff
changeset
|
76 projectList.addClickHandler(new ClickHandler() { |
33bb8bf3899a
Merge the MainMenu into the FLYSHeader
Björn Ricks <bjoern.ricks@intevation.de>
parents:
1401
diff
changeset
|
77 @Override |
33bb8bf3899a
Merge the MainMenu into the FLYSHeader
Björn Ricks <bjoern.ricks@intevation.de>
parents:
1401
diff
changeset
|
78 public void onClick(ClickEvent event) { |
33bb8bf3899a
Merge the MainMenu into the FLYSHeader
Björn Ricks <bjoern.ricks@intevation.de>
parents:
1401
diff
changeset
|
79 GWT.log("Clicked 'Open ProjectList' button."); |
33bb8bf3899a
Merge the MainMenu into the FLYSHeader
Björn Ricks <bjoern.ricks@intevation.de>
parents:
1401
diff
changeset
|
80 getFlys().openProjectList(); |
33bb8bf3899a
Merge the MainMenu into the FLYSHeader
Björn Ricks <bjoern.ricks@intevation.de>
parents:
1401
diff
changeset
|
81 } |
33bb8bf3899a
Merge the MainMenu into the FLYSHeader
Björn Ricks <bjoern.ricks@intevation.de>
parents:
1401
diff
changeset
|
82 }); |
33bb8bf3899a
Merge the MainMenu into the FLYSHeader
Björn Ricks <bjoern.ricks@intevation.de>
parents:
1401
diff
changeset
|
83 |
33bb8bf3899a
Merge the MainMenu into the FLYSHeader
Björn Ricks <bjoern.ricks@intevation.de>
parents:
1401
diff
changeset
|
84 logout.addClickHandler(new ClickHandler() { |
33bb8bf3899a
Merge the MainMenu into the FLYSHeader
Björn Ricks <bjoern.ricks@intevation.de>
parents:
1401
diff
changeset
|
85 @Override |
33bb8bf3899a
Merge the MainMenu into the FLYSHeader
Björn Ricks <bjoern.ricks@intevation.de>
parents:
1401
diff
changeset
|
86 public void onClick(ClickEvent event) { |
33bb8bf3899a
Merge the MainMenu into the FLYSHeader
Björn Ricks <bjoern.ricks@intevation.de>
parents:
1401
diff
changeset
|
87 GWT.log("Clicked 'logout' button."); |
33bb8bf3899a
Merge the MainMenu into the FLYSHeader
Björn Ricks <bjoern.ricks@intevation.de>
parents:
1401
diff
changeset
|
88 userService.logoutCurrentUser(new AsyncCallback<Void>() { |
33bb8bf3899a
Merge the MainMenu into the FLYSHeader
Björn Ricks <bjoern.ricks@intevation.de>
parents:
1401
diff
changeset
|
89 public void onFailure(Throwable caught) { |
33bb8bf3899a
Merge the MainMenu into the FLYSHeader
Björn Ricks <bjoern.ricks@intevation.de>
parents:
1401
diff
changeset
|
90 } |
33bb8bf3899a
Merge the MainMenu into the FLYSHeader
Björn Ricks <bjoern.ricks@intevation.de>
parents:
1401
diff
changeset
|
91 |
33bb8bf3899a
Merge the MainMenu into the FLYSHeader
Björn Ricks <bjoern.ricks@intevation.de>
parents:
1401
diff
changeset
|
92 public void onSuccess(Void result) { |
33bb8bf3899a
Merge the MainMenu into the FLYSHeader
Björn Ricks <bjoern.ricks@intevation.de>
parents:
1401
diff
changeset
|
93 /* Just reload the page. GGInAFilter is goint to redirect |
33bb8bf3899a
Merge the MainMenu into the FLYSHeader
Björn Ricks <bjoern.ricks@intevation.de>
parents:
1401
diff
changeset
|
94 * to the correct login page */ |
33bb8bf3899a
Merge the MainMenu into the FLYSHeader
Björn Ricks <bjoern.ricks@intevation.de>
parents:
1401
diff
changeset
|
95 Window.Location.reload(); |
33bb8bf3899a
Merge the MainMenu into the FLYSHeader
Björn Ricks <bjoern.ricks@intevation.de>
parents:
1401
diff
changeset
|
96 } |
33bb8bf3899a
Merge the MainMenu into the FLYSHeader
Björn Ricks <bjoern.ricks@intevation.de>
parents:
1401
diff
changeset
|
97 }); |
33bb8bf3899a
Merge the MainMenu into the FLYSHeader
Björn Ricks <bjoern.ricks@intevation.de>
parents:
1401
diff
changeset
|
98 |
33bb8bf3899a
Merge the MainMenu into the FLYSHeader
Björn Ricks <bjoern.ricks@intevation.de>
parents:
1401
diff
changeset
|
99 } |
33bb8bf3899a
Merge the MainMenu into the FLYSHeader
Björn Ricks <bjoern.ricks@intevation.de>
parents:
1401
diff
changeset
|
100 }); |
33bb8bf3899a
Merge the MainMenu into the FLYSHeader
Björn Ricks <bjoern.ricks@intevation.de>
parents:
1401
diff
changeset
|
101 |
33bb8bf3899a
Merge the MainMenu into the FLYSHeader
Björn Ricks <bjoern.ricks@intevation.de>
parents:
1401
diff
changeset
|
102 language.addClickHandler(new ClickHandler() { |
33bb8bf3899a
Merge the MainMenu into the FLYSHeader
Björn Ricks <bjoern.ricks@intevation.de>
parents:
1401
diff
changeset
|
103 @Override |
33bb8bf3899a
Merge the MainMenu into the FLYSHeader
Björn Ricks <bjoern.ricks@intevation.de>
parents:
1401
diff
changeset
|
104 public void onClick(ClickEvent event) { |
33bb8bf3899a
Merge the MainMenu into the FLYSHeader
Björn Ricks <bjoern.ricks@intevation.de>
parents:
1401
diff
changeset
|
105 LocaleInfo info = LocaleInfo.getCurrentLocale(); |
33bb8bf3899a
Merge the MainMenu into the FLYSHeader
Björn Ricks <bjoern.ricks@intevation.de>
parents:
1401
diff
changeset
|
106 final String currentLocale = info.getLocaleName(); |
33bb8bf3899a
Merge the MainMenu into the FLYSHeader
Björn Ricks <bjoern.ricks@intevation.de>
parents:
1401
diff
changeset
|
107 final String newLocale = currentLocale.equals("de") |
33bb8bf3899a
Merge the MainMenu into the FLYSHeader
Björn Ricks <bjoern.ricks@intevation.de>
parents:
1401
diff
changeset
|
108 ? "en" |
33bb8bf3899a
Merge the MainMenu into the FLYSHeader
Björn Ricks <bjoern.ricks@intevation.de>
parents:
1401
diff
changeset
|
109 : "de"; |
33bb8bf3899a
Merge the MainMenu into the FLYSHeader
Björn Ricks <bjoern.ricks@intevation.de>
parents:
1401
diff
changeset
|
110 |
33bb8bf3899a
Merge the MainMenu into the FLYSHeader
Björn Ricks <bjoern.ricks@intevation.de>
parents:
1401
diff
changeset
|
111 SC.confirm(MESSAGES.warning(), MESSAGES.warning_language(), |
33bb8bf3899a
Merge the MainMenu into the FLYSHeader
Björn Ricks <bjoern.ricks@intevation.de>
parents:
1401
diff
changeset
|
112 new BooleanCallback() { |
33bb8bf3899a
Merge the MainMenu into the FLYSHeader
Björn Ricks <bjoern.ricks@intevation.de>
parents:
1401
diff
changeset
|
113 @Override |
33bb8bf3899a
Merge the MainMenu into the FLYSHeader
Björn Ricks <bjoern.ricks@intevation.de>
parents:
1401
diff
changeset
|
114 public void execute(Boolean value) { |
33bb8bf3899a
Merge the MainMenu into the FLYSHeader
Björn Ricks <bjoern.ricks@intevation.de>
parents:
1401
diff
changeset
|
115 if (value) { |
33bb8bf3899a
Merge the MainMenu into the FLYSHeader
Björn Ricks <bjoern.ricks@intevation.de>
parents:
1401
diff
changeset
|
116 switchLanguage(currentLocale, newLocale); |
33bb8bf3899a
Merge the MainMenu into the FLYSHeader
Björn Ricks <bjoern.ricks@intevation.de>
parents:
1401
diff
changeset
|
117 } |
33bb8bf3899a
Merge the MainMenu into the FLYSHeader
Björn Ricks <bjoern.ricks@intevation.de>
parents:
1401
diff
changeset
|
118 } |
33bb8bf3899a
Merge the MainMenu into the FLYSHeader
Björn Ricks <bjoern.ricks@intevation.de>
parents:
1401
diff
changeset
|
119 }); |
33bb8bf3899a
Merge the MainMenu into the FLYSHeader
Björn Ricks <bjoern.ricks@intevation.de>
parents:
1401
diff
changeset
|
120 } |
33bb8bf3899a
Merge the MainMenu into the FLYSHeader
Björn Ricks <bjoern.ricks@intevation.de>
parents:
1401
diff
changeset
|
121 }); |
33bb8bf3899a
Merge the MainMenu into the FLYSHeader
Björn Ricks <bjoern.ricks@intevation.de>
parents:
1401
diff
changeset
|
122 |
33bb8bf3899a
Merge the MainMenu into the FLYSHeader
Björn Ricks <bjoern.ricks@intevation.de>
parents:
1401
diff
changeset
|
123 info.addClickHandler(new ClickHandler() { |
33bb8bf3899a
Merge the MainMenu into the FLYSHeader
Björn Ricks <bjoern.ricks@intevation.de>
parents:
1401
diff
changeset
|
124 @Override |
33bb8bf3899a
Merge the MainMenu into the FLYSHeader
Björn Ricks <bjoern.ricks@intevation.de>
parents:
1401
diff
changeset
|
125 public void onClick(ClickEvent event) { |
33bb8bf3899a
Merge the MainMenu into the FLYSHeader
Björn Ricks <bjoern.ricks@intevation.de>
parents:
1401
diff
changeset
|
126 GWT.log("Clicked 'info' button."); |
33bb8bf3899a
Merge the MainMenu into the FLYSHeader
Björn Ricks <bjoern.ricks@intevation.de>
parents:
1401
diff
changeset
|
127 GWT.log("IMPLEMENT the 'open info panel' function."); |
33bb8bf3899a
Merge the MainMenu into the FLYSHeader
Björn Ricks <bjoern.ricks@intevation.de>
parents:
1401
diff
changeset
|
128 } |
33bb8bf3899a
Merge the MainMenu into the FLYSHeader
Björn Ricks <bjoern.ricks@intevation.de>
parents:
1401
diff
changeset
|
129 }); |
27
e4155a6833a9
Integrated a header that contains a FLYS and a BfG logo.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
130 init(); |
e4155a6833a9
Integrated a header that contains a FLYS and a BfG logo.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
131 } |
e4155a6833a9
Integrated a header that contains a FLYS and a BfG logo.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
132 |
e4155a6833a9
Integrated a header that contains a FLYS and a BfG logo.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
133 public void init() { |
4602
33bb8bf3899a
Merge the MainMenu into the FLYSHeader
Björn Ricks <bjoern.ricks@intevation.de>
parents:
1401
diff
changeset
|
134 setStyleName("header"); |
27
e4155a6833a9
Integrated a header that contains a FLYS and a BfG logo.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
135 setWidth100(); |
e4155a6833a9
Integrated a header that contains a FLYS and a BfG logo.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
136 setHeight(HEIGHT); |
4602
33bb8bf3899a
Merge the MainMenu into the FLYSHeader
Björn Ricks <bjoern.ricks@intevation.de>
parents:
1401
diff
changeset
|
137 setBackgroundColor("#a9c9e6"); |
27
e4155a6833a9
Integrated a header that contains a FLYS and a BfG logo.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
138 setLayoutLeftMargin(5); |
e4155a6833a9
Integrated a header that contains a FLYS and a BfG logo.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
139 setLayoutRightMargin(5); |
e4155a6833a9
Integrated a header that contains a FLYS and a BfG logo.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
140 |
1399 | 141 String baseUrl = GWT.getHostPageBaseURL(); |
27
e4155a6833a9
Integrated a header that contains a FLYS and a BfG logo.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
142 |
e4155a6833a9
Integrated a header that contains a FLYS and a BfG logo.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
143 Img flys = new Img( |
1399 | 144 baseUrl + MESSAGES.flysLogo(), |
145 50, | |
27
e4155a6833a9
Integrated a header that contains a FLYS and a BfG logo.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
146 IMG_HEIGHT); |
e4155a6833a9
Integrated a header that contains a FLYS and a BfG logo.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
147 |
4602
33bb8bf3899a
Merge the MainMenu into the FLYSHeader
Björn Ricks <bjoern.ricks@intevation.de>
parents:
1401
diff
changeset
|
148 Img bfg = new Img( |
33bb8bf3899a
Merge the MainMenu into the FLYSHeader
Björn Ricks <bjoern.ricks@intevation.de>
parents:
1401
diff
changeset
|
149 baseUrl + MESSAGES.bfgLogoSmall(), |
33bb8bf3899a
Merge the MainMenu into the FLYSHeader
Björn Ricks <bjoern.ricks@intevation.de>
parents:
1401
diff
changeset
|
150 150, |
33bb8bf3899a
Merge the MainMenu into the FLYSHeader
Björn Ricks <bjoern.ricks@intevation.de>
parents:
1401
diff
changeset
|
151 IMG_HEIGHT); |
27
e4155a6833a9
Integrated a header that contains a FLYS and a BfG logo.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
152 |
e4155a6833a9
Integrated a header that contains a FLYS and a BfG logo.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
153 Label fullname = new Label(MESSAGES.fullname()); |
e4155a6833a9
Integrated a header that contains a FLYS and a BfG logo.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
154 fullname.setHeight(HEIGHT - IMG_HEIGHT); |
4602
33bb8bf3899a
Merge the MainMenu into the FLYSHeader
Björn Ricks <bjoern.ricks@intevation.de>
parents:
1401
diff
changeset
|
155 fullname.setStyleName("fontBlackMid"); |
27
e4155a6833a9
Integrated a header that contains a FLYS and a BfG logo.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
156 |
4602
33bb8bf3899a
Merge the MainMenu into the FLYSHeader
Björn Ricks <bjoern.ricks@intevation.de>
parents:
1401
diff
changeset
|
157 HLayout left = new HLayout(); |
33bb8bf3899a
Merge the MainMenu into the FLYSHeader
Björn Ricks <bjoern.ricks@intevation.de>
parents:
1401
diff
changeset
|
158 left.setDefaultLayoutAlign(VerticalAlignment.CENTER); |
33bb8bf3899a
Merge the MainMenu into the FLYSHeader
Björn Ricks <bjoern.ricks@intevation.de>
parents:
1401
diff
changeset
|
159 left.setMembersMargin(3); |
27
e4155a6833a9
Integrated a header that contains a FLYS and a BfG logo.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
160 left.addMember(flys); |
e4155a6833a9
Integrated a header that contains a FLYS and a BfG logo.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
161 left.addMember(fullname); |
e4155a6833a9
Integrated a header that contains a FLYS and a BfG logo.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
162 |
e4155a6833a9
Integrated a header that contains a FLYS and a BfG logo.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
163 HLayout right = new HLayout(); |
e4155a6833a9
Integrated a header that contains a FLYS and a BfG logo.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
164 right.setAlign(Alignment.RIGHT); |
4602
33bb8bf3899a
Merge the MainMenu into the FLYSHeader
Björn Ricks <bjoern.ricks@intevation.de>
parents:
1401
diff
changeset
|
165 right.setDefaultLayoutAlign(Alignment.RIGHT); |
33bb8bf3899a
Merge the MainMenu into the FLYSHeader
Björn Ricks <bjoern.ricks@intevation.de>
parents:
1401
diff
changeset
|
166 right.setDefaultLayoutAlign(VerticalAlignment.CENTER); |
33bb8bf3899a
Merge the MainMenu into the FLYSHeader
Björn Ricks <bjoern.ricks@intevation.de>
parents:
1401
diff
changeset
|
167 right.setMembersMargin(3); |
33bb8bf3899a
Merge the MainMenu into the FLYSHeader
Björn Ricks <bjoern.ricks@intevation.de>
parents:
1401
diff
changeset
|
168 right.setLayoutRightMargin(5); |
33bb8bf3899a
Merge the MainMenu into the FLYSHeader
Björn Ricks <bjoern.ricks@intevation.de>
parents:
1401
diff
changeset
|
169 |
33bb8bf3899a
Merge the MainMenu into the FLYSHeader
Björn Ricks <bjoern.ricks@intevation.de>
parents:
1401
diff
changeset
|
170 projectList.setStyleName("manageProjects"); |
33bb8bf3899a
Merge the MainMenu into the FLYSHeader
Björn Ricks <bjoern.ricks@intevation.de>
parents:
1401
diff
changeset
|
171 userText.setStyleName("fontBlackSmall"); |
33bb8bf3899a
Merge the MainMenu into the FLYSHeader
Björn Ricks <bjoern.ricks@intevation.de>
parents:
1401
diff
changeset
|
172 logout.setStyleName("fontLightSmall"); |
33bb8bf3899a
Merge the MainMenu into the FLYSHeader
Björn Ricks <bjoern.ricks@intevation.de>
parents:
1401
diff
changeset
|
173 language.setStyleName("fontLightSmall"); |
33bb8bf3899a
Merge the MainMenu into the FLYSHeader
Björn Ricks <bjoern.ricks@intevation.de>
parents:
1401
diff
changeset
|
174 info.setStyleName("fontLightSmall"); |
33bb8bf3899a
Merge the MainMenu into the FLYSHeader
Björn Ricks <bjoern.ricks@intevation.de>
parents:
1401
diff
changeset
|
175 |
33bb8bf3899a
Merge the MainMenu into the FLYSHeader
Björn Ricks <bjoern.ricks@intevation.de>
parents:
1401
diff
changeset
|
176 userText.setAlign(Alignment.RIGHT); |
33bb8bf3899a
Merge the MainMenu into the FLYSHeader
Björn Ricks <bjoern.ricks@intevation.de>
parents:
1401
diff
changeset
|
177 userText.setWidth(200); |
33bb8bf3899a
Merge the MainMenu into the FLYSHeader
Björn Ricks <bjoern.ricks@intevation.de>
parents:
1401
diff
changeset
|
178 logout.setWidth(70); |
33bb8bf3899a
Merge the MainMenu into the FLYSHeader
Björn Ricks <bjoern.ricks@intevation.de>
parents:
1401
diff
changeset
|
179 info.setWidth(40); |
33bb8bf3899a
Merge the MainMenu into the FLYSHeader
Björn Ricks <bjoern.ricks@intevation.de>
parents:
1401
diff
changeset
|
180 language.setWidth(70); |
33bb8bf3899a
Merge the MainMenu into the FLYSHeader
Björn Ricks <bjoern.ricks@intevation.de>
parents:
1401
diff
changeset
|
181 |
33bb8bf3899a
Merge the MainMenu into the FLYSHeader
Björn Ricks <bjoern.ricks@intevation.de>
parents:
1401
diff
changeset
|
182 left.addMember(projectList); |
33bb8bf3899a
Merge the MainMenu into the FLYSHeader
Björn Ricks <bjoern.ricks@intevation.de>
parents:
1401
diff
changeset
|
183 if (this.flys.isProjectListVisible()) { |
33bb8bf3899a
Merge the MainMenu into the FLYSHeader
Björn Ricks <bjoern.ricks@intevation.de>
parents:
1401
diff
changeset
|
184 hideProjectButton(); |
33bb8bf3899a
Merge the MainMenu into the FLYSHeader
Björn Ricks <bjoern.ricks@intevation.de>
parents:
1401
diff
changeset
|
185 } |
33bb8bf3899a
Merge the MainMenu into the FLYSHeader
Björn Ricks <bjoern.ricks@intevation.de>
parents:
1401
diff
changeset
|
186 else { |
33bb8bf3899a
Merge the MainMenu into the FLYSHeader
Björn Ricks <bjoern.ricks@intevation.de>
parents:
1401
diff
changeset
|
187 showProjectButton(); |
33bb8bf3899a
Merge the MainMenu into the FLYSHeader
Björn Ricks <bjoern.ricks@intevation.de>
parents:
1401
diff
changeset
|
188 } |
33bb8bf3899a
Merge the MainMenu into the FLYSHeader
Björn Ricks <bjoern.ricks@intevation.de>
parents:
1401
diff
changeset
|
189 |
33bb8bf3899a
Merge the MainMenu into the FLYSHeader
Björn Ricks <bjoern.ricks@intevation.de>
parents:
1401
diff
changeset
|
190 right.addMember(userText); |
33bb8bf3899a
Merge the MainMenu into the FLYSHeader
Björn Ricks <bjoern.ricks@intevation.de>
parents:
1401
diff
changeset
|
191 right.addMember(logout); |
33bb8bf3899a
Merge the MainMenu into the FLYSHeader
Björn Ricks <bjoern.ricks@intevation.de>
parents:
1401
diff
changeset
|
192 right.addMember(language); |
33bb8bf3899a
Merge the MainMenu into the FLYSHeader
Björn Ricks <bjoern.ricks@intevation.de>
parents:
1401
diff
changeset
|
193 right.addMember(info); |
27
e4155a6833a9
Integrated a header that contains a FLYS and a BfG logo.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
194 right.addMember(bfg); |
e4155a6833a9
Integrated a header that contains a FLYS and a BfG logo.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
195 |
e4155a6833a9
Integrated a header that contains a FLYS and a BfG logo.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
196 addMember(left); |
e4155a6833a9
Integrated a header that contains a FLYS and a BfG logo.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
197 addMember(right); |
e4155a6833a9
Integrated a header that contains a FLYS and a BfG logo.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
198 } |
e4155a6833a9
Integrated a header that contains a FLYS and a BfG logo.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
199 |
4602
33bb8bf3899a
Merge the MainMenu into the FLYSHeader
Björn Ricks <bjoern.ricks@intevation.de>
parents:
1401
diff
changeset
|
200 /** |
33bb8bf3899a
Merge the MainMenu into the FLYSHeader
Björn Ricks <bjoern.ricks@intevation.de>
parents:
1401
diff
changeset
|
201 * Returns the FLYS instance stored in this class. |
33bb8bf3899a
Merge the MainMenu into the FLYSHeader
Björn Ricks <bjoern.ricks@intevation.de>
parents:
1401
diff
changeset
|
202 * |
33bb8bf3899a
Merge the MainMenu into the FLYSHeader
Björn Ricks <bjoern.ricks@intevation.de>
parents:
1401
diff
changeset
|
203 * @return the flys instance. |
33bb8bf3899a
Merge the MainMenu into the FLYSHeader
Björn Ricks <bjoern.ricks@intevation.de>
parents:
1401
diff
changeset
|
204 */ |
33bb8bf3899a
Merge the MainMenu into the FLYSHeader
Björn Ricks <bjoern.ricks@intevation.de>
parents:
1401
diff
changeset
|
205 private FLYS getFlys() { |
33bb8bf3899a
Merge the MainMenu into the FLYSHeader
Björn Ricks <bjoern.ricks@intevation.de>
parents:
1401
diff
changeset
|
206 return flys; |
33bb8bf3899a
Merge the MainMenu into the FLYSHeader
Björn Ricks <bjoern.ricks@intevation.de>
parents:
1401
diff
changeset
|
207 } |
27
e4155a6833a9
Integrated a header that contains a FLYS and a BfG logo.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
208 |
e4155a6833a9
Integrated a header that contains a FLYS and a BfG logo.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
209 /** |
4602
33bb8bf3899a
Merge the MainMenu into the FLYSHeader
Björn Ricks <bjoern.ricks@intevation.de>
parents:
1401
diff
changeset
|
210 * This method triggers the language switch between the <i>currentLocale</i> |
33bb8bf3899a
Merge the MainMenu into the FLYSHeader
Björn Ricks <bjoern.ricks@intevation.de>
parents:
1401
diff
changeset
|
211 * and the <i>newLocale</i>. The switch is done by replacing a "locale=" |
33bb8bf3899a
Merge the MainMenu into the FLYSHeader
Björn Ricks <bjoern.ricks@intevation.de>
parents:
1401
diff
changeset
|
212 * parameter in the url of the application. We could use the GWT UrlBuilder |
33bb8bf3899a
Merge the MainMenu into the FLYSHeader
Björn Ricks <bjoern.ricks@intevation.de>
parents:
1401
diff
changeset
|
213 * class to create a new URL, but - in my eyes - this class is a bit |
33bb8bf3899a
Merge the MainMenu into the FLYSHeader
Björn Ricks <bjoern.ricks@intevation.de>
parents:
1401
diff
changeset
|
214 * inconsistens in its implementation. |
27
e4155a6833a9
Integrated a header that contains a FLYS and a BfG logo.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
215 * |
4602
33bb8bf3899a
Merge the MainMenu into the FLYSHeader
Björn Ricks <bjoern.ricks@intevation.de>
parents:
1401
diff
changeset
|
216 * @param currentLocale The current locale string (e.g. "en"). |
33bb8bf3899a
Merge the MainMenu into the FLYSHeader
Björn Ricks <bjoern.ricks@intevation.de>
parents:
1401
diff
changeset
|
217 * @param newLocale The new locale string (e.g. "de"). |
27
e4155a6833a9
Integrated a header that contains a FLYS and a BfG logo.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
218 */ |
4602
33bb8bf3899a
Merge the MainMenu into the FLYSHeader
Björn Ricks <bjoern.ricks@intevation.de>
parents:
1401
diff
changeset
|
219 private void switchLanguage(String currentLocale, String newLocale) { |
33bb8bf3899a
Merge the MainMenu into the FLYSHeader
Björn Ricks <bjoern.ricks@intevation.de>
parents:
1401
diff
changeset
|
220 String newLocation = Window.Location.getHref(); |
27
e4155a6833a9
Integrated a header that contains a FLYS and a BfG logo.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
221 |
4602
33bb8bf3899a
Merge the MainMenu into the FLYSHeader
Björn Ricks <bjoern.ricks@intevation.de>
parents:
1401
diff
changeset
|
222 if (newLocation.endsWith("/")) { |
33bb8bf3899a
Merge the MainMenu into the FLYSHeader
Björn Ricks <bjoern.ricks@intevation.de>
parents:
1401
diff
changeset
|
223 newLocation = newLocation.substring(0, newLocation.length()-1); |
33bb8bf3899a
Merge the MainMenu into the FLYSHeader
Björn Ricks <bjoern.ricks@intevation.de>
parents:
1401
diff
changeset
|
224 } |
27
e4155a6833a9
Integrated a header that contains a FLYS and a BfG logo.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
225 |
4602
33bb8bf3899a
Merge the MainMenu into the FLYSHeader
Björn Ricks <bjoern.ricks@intevation.de>
parents:
1401
diff
changeset
|
226 String replace = null; |
33bb8bf3899a
Merge the MainMenu into the FLYSHeader
Björn Ricks <bjoern.ricks@intevation.de>
parents:
1401
diff
changeset
|
227 String replaceWith = null; |
33bb8bf3899a
Merge the MainMenu into the FLYSHeader
Björn Ricks <bjoern.ricks@intevation.de>
parents:
1401
diff
changeset
|
228 |
33bb8bf3899a
Merge the MainMenu into the FLYSHeader
Björn Ricks <bjoern.ricks@intevation.de>
parents:
1401
diff
changeset
|
229 if (newLocation.indexOf("&locale=") >= 0) { |
33bb8bf3899a
Merge the MainMenu into the FLYSHeader
Björn Ricks <bjoern.ricks@intevation.de>
parents:
1401
diff
changeset
|
230 replace = currentLocale.equals("de") |
33bb8bf3899a
Merge the MainMenu into the FLYSHeader
Björn Ricks <bjoern.ricks@intevation.de>
parents:
1401
diff
changeset
|
231 ? "&locale=de" |
33bb8bf3899a
Merge the MainMenu into the FLYSHeader
Björn Ricks <bjoern.ricks@intevation.de>
parents:
1401
diff
changeset
|
232 : "&locale=en"; |
33bb8bf3899a
Merge the MainMenu into the FLYSHeader
Björn Ricks <bjoern.ricks@intevation.de>
parents:
1401
diff
changeset
|
233 |
33bb8bf3899a
Merge the MainMenu into the FLYSHeader
Björn Ricks <bjoern.ricks@intevation.de>
parents:
1401
diff
changeset
|
234 replaceWith = "&locale=" + newLocale; |
33bb8bf3899a
Merge the MainMenu into the FLYSHeader
Björn Ricks <bjoern.ricks@intevation.de>
parents:
1401
diff
changeset
|
235 } |
33bb8bf3899a
Merge the MainMenu into the FLYSHeader
Björn Ricks <bjoern.ricks@intevation.de>
parents:
1401
diff
changeset
|
236 else if (newLocation.indexOf("?locale=") >= 0) { |
33bb8bf3899a
Merge the MainMenu into the FLYSHeader
Björn Ricks <bjoern.ricks@intevation.de>
parents:
1401
diff
changeset
|
237 replace = currentLocale.equals("de") |
33bb8bf3899a
Merge the MainMenu into the FLYSHeader
Björn Ricks <bjoern.ricks@intevation.de>
parents:
1401
diff
changeset
|
238 ? "?locale=de" |
33bb8bf3899a
Merge the MainMenu into the FLYSHeader
Björn Ricks <bjoern.ricks@intevation.de>
parents:
1401
diff
changeset
|
239 : "?locale=en"; |
33bb8bf3899a
Merge the MainMenu into the FLYSHeader
Björn Ricks <bjoern.ricks@intevation.de>
parents:
1401
diff
changeset
|
240 |
33bb8bf3899a
Merge the MainMenu into the FLYSHeader
Björn Ricks <bjoern.ricks@intevation.de>
parents:
1401
diff
changeset
|
241 replaceWith = "?locale=" + newLocale; |
33bb8bf3899a
Merge the MainMenu into the FLYSHeader
Björn Ricks <bjoern.ricks@intevation.de>
parents:
1401
diff
changeset
|
242 } |
33bb8bf3899a
Merge the MainMenu into the FLYSHeader
Björn Ricks <bjoern.ricks@intevation.de>
parents:
1401
diff
changeset
|
243 else { |
33bb8bf3899a
Merge the MainMenu into the FLYSHeader
Björn Ricks <bjoern.ricks@intevation.de>
parents:
1401
diff
changeset
|
244 newLocation += newLocation.indexOf("?") >= 0 |
33bb8bf3899a
Merge the MainMenu into the FLYSHeader
Björn Ricks <bjoern.ricks@intevation.de>
parents:
1401
diff
changeset
|
245 ? "&locale=" + newLocale |
33bb8bf3899a
Merge the MainMenu into the FLYSHeader
Björn Ricks <bjoern.ricks@intevation.de>
parents:
1401
diff
changeset
|
246 : "?locale=" + newLocale; |
33bb8bf3899a
Merge the MainMenu into the FLYSHeader
Björn Ricks <bjoern.ricks@intevation.de>
parents:
1401
diff
changeset
|
247 } |
33bb8bf3899a
Merge the MainMenu into the FLYSHeader
Björn Ricks <bjoern.ricks@intevation.de>
parents:
1401
diff
changeset
|
248 |
33bb8bf3899a
Merge the MainMenu into the FLYSHeader
Björn Ricks <bjoern.ricks@intevation.de>
parents:
1401
diff
changeset
|
249 if (replace != null && replaceWith != null) { |
33bb8bf3899a
Merge the MainMenu into the FLYSHeader
Björn Ricks <bjoern.ricks@intevation.de>
parents:
1401
diff
changeset
|
250 newLocation = newLocation.replace(replace, replaceWith); |
33bb8bf3899a
Merge the MainMenu into the FLYSHeader
Björn Ricks <bjoern.ricks@intevation.de>
parents:
1401
diff
changeset
|
251 } |
33bb8bf3899a
Merge the MainMenu into the FLYSHeader
Björn Ricks <bjoern.ricks@intevation.de>
parents:
1401
diff
changeset
|
252 |
33bb8bf3899a
Merge the MainMenu into the FLYSHeader
Björn Ricks <bjoern.ricks@intevation.de>
parents:
1401
diff
changeset
|
253 Window.open(newLocation, "_self", ""); |
33bb8bf3899a
Merge the MainMenu into the FLYSHeader
Björn Ricks <bjoern.ricks@intevation.de>
parents:
1401
diff
changeset
|
254 } |
33bb8bf3899a
Merge the MainMenu into the FLYSHeader
Björn Ricks <bjoern.ricks@intevation.de>
parents:
1401
diff
changeset
|
255 |
33bb8bf3899a
Merge the MainMenu into the FLYSHeader
Björn Ricks <bjoern.ricks@intevation.de>
parents:
1401
diff
changeset
|
256 /** |
33bb8bf3899a
Merge the MainMenu into the FLYSHeader
Björn Ricks <bjoern.ricks@intevation.de>
parents:
1401
diff
changeset
|
257 * Update the text field that shows the current user. If no user is |
33bb8bf3899a
Merge the MainMenu into the FLYSHeader
Björn Ricks <bjoern.ricks@intevation.de>
parents:
1401
diff
changeset
|
258 * currently logged in, the text will display {@link FLYSConstants.guest()}. |
33bb8bf3899a
Merge the MainMenu into the FLYSHeader
Björn Ricks <bjoern.ricks@intevation.de>
parents:
1401
diff
changeset
|
259 */ |
33bb8bf3899a
Merge the MainMenu into the FLYSHeader
Björn Ricks <bjoern.ricks@intevation.de>
parents:
1401
diff
changeset
|
260 private void updateCurrentUser() { |
33bb8bf3899a
Merge the MainMenu into the FLYSHeader
Björn Ricks <bjoern.ricks@intevation.de>
parents:
1401
diff
changeset
|
261 String name = currentUser != null |
33bb8bf3899a
Merge the MainMenu into the FLYSHeader
Björn Ricks <bjoern.ricks@intevation.de>
parents:
1401
diff
changeset
|
262 ? currentUser.getName() |
33bb8bf3899a
Merge the MainMenu into the FLYSHeader
Björn Ricks <bjoern.ricks@intevation.de>
parents:
1401
diff
changeset
|
263 : MESSAGES.guest(); |
33bb8bf3899a
Merge the MainMenu into the FLYSHeader
Björn Ricks <bjoern.ricks@intevation.de>
parents:
1401
diff
changeset
|
264 |
33bb8bf3899a
Merge the MainMenu into the FLYSHeader
Björn Ricks <bjoern.ricks@intevation.de>
parents:
1401
diff
changeset
|
265 GWT.log("Update the current user: " + name); |
33bb8bf3899a
Merge the MainMenu into the FLYSHeader
Björn Ricks <bjoern.ricks@intevation.de>
parents:
1401
diff
changeset
|
266 |
33bb8bf3899a
Merge the MainMenu into the FLYSHeader
Björn Ricks <bjoern.ricks@intevation.de>
parents:
1401
diff
changeset
|
267 String username = MESSAGES.user() + " " + name; |
33bb8bf3899a
Merge the MainMenu into the FLYSHeader
Björn Ricks <bjoern.ricks@intevation.de>
parents:
1401
diff
changeset
|
268 userText.setContents(username); |
33bb8bf3899a
Merge the MainMenu into the FLYSHeader
Björn Ricks <bjoern.ricks@intevation.de>
parents:
1401
diff
changeset
|
269 } |
33bb8bf3899a
Merge the MainMenu into the FLYSHeader
Björn Ricks <bjoern.ricks@intevation.de>
parents:
1401
diff
changeset
|
270 |
33bb8bf3899a
Merge the MainMenu into the FLYSHeader
Björn Ricks <bjoern.ricks@intevation.de>
parents:
1401
diff
changeset
|
271 /** |
33bb8bf3899a
Merge the MainMenu into the FLYSHeader
Björn Ricks <bjoern.ricks@intevation.de>
parents:
1401
diff
changeset
|
272 * Set the current {@link User} and call {@link updateCurrentUser()} |
33bb8bf3899a
Merge the MainMenu into the FLYSHeader
Björn Ricks <bjoern.ricks@intevation.de>
parents:
1401
diff
changeset
|
273 * afterwards. |
33bb8bf3899a
Merge the MainMenu into the FLYSHeader
Björn Ricks <bjoern.ricks@intevation.de>
parents:
1401
diff
changeset
|
274 * |
33bb8bf3899a
Merge the MainMenu into the FLYSHeader
Björn Ricks <bjoern.ricks@intevation.de>
parents:
1401
diff
changeset
|
275 * @param user the new user. |
33bb8bf3899a
Merge the MainMenu into the FLYSHeader
Björn Ricks <bjoern.ricks@intevation.de>
parents:
1401
diff
changeset
|
276 */ |
33bb8bf3899a
Merge the MainMenu into the FLYSHeader
Björn Ricks <bjoern.ricks@intevation.de>
parents:
1401
diff
changeset
|
277 public void setCurrentUser(User currentUser) { |
33bb8bf3899a
Merge the MainMenu into the FLYSHeader
Björn Ricks <bjoern.ricks@intevation.de>
parents:
1401
diff
changeset
|
278 this.currentUser = currentUser; |
33bb8bf3899a
Merge the MainMenu into the FLYSHeader
Björn Ricks <bjoern.ricks@intevation.de>
parents:
1401
diff
changeset
|
279 |
33bb8bf3899a
Merge the MainMenu into the FLYSHeader
Björn Ricks <bjoern.ricks@intevation.de>
parents:
1401
diff
changeset
|
280 updateCurrentUser(); |
33bb8bf3899a
Merge the MainMenu into the FLYSHeader
Björn Ricks <bjoern.ricks@intevation.de>
parents:
1401
diff
changeset
|
281 } |
33bb8bf3899a
Merge the MainMenu into the FLYSHeader
Björn Ricks <bjoern.ricks@intevation.de>
parents:
1401
diff
changeset
|
282 |
33bb8bf3899a
Merge the MainMenu into the FLYSHeader
Björn Ricks <bjoern.ricks@intevation.de>
parents:
1401
diff
changeset
|
283 public void hideProjectButton() { |
33bb8bf3899a
Merge the MainMenu into the FLYSHeader
Björn Ricks <bjoern.ricks@intevation.de>
parents:
1401
diff
changeset
|
284 this.projectList.hide(); |
33bb8bf3899a
Merge the MainMenu into the FLYSHeader
Björn Ricks <bjoern.ricks@intevation.de>
parents:
1401
diff
changeset
|
285 } |
33bb8bf3899a
Merge the MainMenu into the FLYSHeader
Björn Ricks <bjoern.ricks@intevation.de>
parents:
1401
diff
changeset
|
286 |
33bb8bf3899a
Merge the MainMenu into the FLYSHeader
Björn Ricks <bjoern.ricks@intevation.de>
parents:
1401
diff
changeset
|
287 public void showProjectButton() { |
33bb8bf3899a
Merge the MainMenu into the FLYSHeader
Björn Ricks <bjoern.ricks@intevation.de>
parents:
1401
diff
changeset
|
288 this.projectList.show(); |
27
e4155a6833a9
Integrated a header that contains a FLYS and a BfG logo.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
289 } |
e4155a6833a9
Integrated a header that contains a FLYS and a BfG logo.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
290 } |
e4155a6833a9
Integrated a header that contains a FLYS and a BfG logo.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
291 // vim:set ts=4 sw=4 si et sta sts=4 fenc=utf8 : |