annotate flys-client/src/main/java/de/intevation/flys/client/client/ui/ScreenLock.java @ 5486:b19f0fd301fc

New ScrenLock class to ease refactoring and reuse of spinning-wheel-show.
author Felix Wolfsteller <felix.wolfsteller@intevation.de>
date Thu, 28 Mar 2013 09:24:41 +0100
parents
children
rev   line source
5486
b19f0fd301fc New ScrenLock class to ease refactoring and reuse of spinning-wheel-show.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
1 package de.intevation.flys.client.client.ui;
b19f0fd301fc New ScrenLock class to ease refactoring and reuse of spinning-wheel-show.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
2
b19f0fd301fc New ScrenLock class to ease refactoring and reuse of spinning-wheel-show.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
3 import com.google.gwt.core.client.GWT;
b19f0fd301fc New ScrenLock class to ease refactoring and reuse of spinning-wheel-show.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
4
b19f0fd301fc New ScrenLock class to ease refactoring and reuse of spinning-wheel-show.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
5 import com.smartgwt.client.types.Alignment;
b19f0fd301fc New ScrenLock class to ease refactoring and reuse of spinning-wheel-show.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
6 import com.smartgwt.client.types.VerticalAlignment;
b19f0fd301fc New ScrenLock class to ease refactoring and reuse of spinning-wheel-show.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
7 import com.smartgwt.client.widgets.Img;
b19f0fd301fc New ScrenLock class to ease refactoring and reuse of spinning-wheel-show.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
8 import com.smartgwt.client.widgets.layout.HLayout;
b19f0fd301fc New ScrenLock class to ease refactoring and reuse of spinning-wheel-show.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
9 import com.smartgwt.client.widgets.layout.Layout;
b19f0fd301fc New ScrenLock class to ease refactoring and reuse of spinning-wheel-show.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
10 import com.smartgwt.client.widgets.layout.VLayout;
b19f0fd301fc New ScrenLock class to ease refactoring and reuse of spinning-wheel-show.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
11
b19f0fd301fc New ScrenLock class to ease refactoring and reuse of spinning-wheel-show.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
12 import de.intevation.flys.client.client.FLYSConstants;
b19f0fd301fc New ScrenLock class to ease refactoring and reuse of spinning-wheel-show.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
13
b19f0fd301fc New ScrenLock class to ease refactoring and reuse of spinning-wheel-show.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
14 /** Basic static functionality to show spinning wheel. */
b19f0fd301fc New ScrenLock class to ease refactoring and reuse of spinning-wheel-show.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
15 public class ScreenLock {
b19f0fd301fc New ScrenLock class to ease refactoring and reuse of spinning-wheel-show.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
16
b19f0fd301fc New ScrenLock class to ease refactoring and reuse of spinning-wheel-show.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
17 /** The message class that provides i18n strings. */
b19f0fd301fc New ScrenLock class to ease refactoring and reuse of spinning-wheel-show.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
18 protected static FLYSConstants messages = GWT.create(FLYSConstants.class);
b19f0fd301fc New ScrenLock class to ease refactoring and reuse of spinning-wheel-show.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
19
b19f0fd301fc New ScrenLock class to ease refactoring and reuse of spinning-wheel-show.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
20 /** Disables input, grey out, show spinning wheel of joy. */
b19f0fd301fc New ScrenLock class to ease refactoring and reuse of spinning-wheel-show.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
21 public static VLayout lockUI(Layout layout, VLayout lockScreen) {
b19f0fd301fc New ScrenLock class to ease refactoring and reuse of spinning-wheel-show.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
22 if (lockScreen == null) {
b19f0fd301fc New ScrenLock class to ease refactoring and reuse of spinning-wheel-show.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
23 lockScreen = new VLayout();
b19f0fd301fc New ScrenLock class to ease refactoring and reuse of spinning-wheel-show.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
24 lockScreen.setWidth100();
b19f0fd301fc New ScrenLock class to ease refactoring and reuse of spinning-wheel-show.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
25 lockScreen.setHeight100();
b19f0fd301fc New ScrenLock class to ease refactoring and reuse of spinning-wheel-show.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
26 lockScreen.setBackgroundColor("#7f7f7f");
b19f0fd301fc New ScrenLock class to ease refactoring and reuse of spinning-wheel-show.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
27 lockScreen.setOpacity(50);
b19f0fd301fc New ScrenLock class to ease refactoring and reuse of spinning-wheel-show.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
28 lockScreen.setAlign(VerticalAlignment.CENTER);
b19f0fd301fc New ScrenLock class to ease refactoring and reuse of spinning-wheel-show.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
29 lockScreen.setDefaultLayoutAlign(VerticalAlignment.CENTER);
b19f0fd301fc New ScrenLock class to ease refactoring and reuse of spinning-wheel-show.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
30
b19f0fd301fc New ScrenLock class to ease refactoring and reuse of spinning-wheel-show.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
31 HLayout inner = new HLayout();
b19f0fd301fc New ScrenLock class to ease refactoring and reuse of spinning-wheel-show.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
32 inner.setAlign(Alignment.CENTER);
b19f0fd301fc New ScrenLock class to ease refactoring and reuse of spinning-wheel-show.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
33 inner.setDefaultLayoutAlign(Alignment.CENTER);
b19f0fd301fc New ScrenLock class to ease refactoring and reuse of spinning-wheel-show.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
34 inner.setOpacity(100);
b19f0fd301fc New ScrenLock class to ease refactoring and reuse of spinning-wheel-show.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
35
b19f0fd301fc New ScrenLock class to ease refactoring and reuse of spinning-wheel-show.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
36 Img img = new Img(
b19f0fd301fc New ScrenLock class to ease refactoring and reuse of spinning-wheel-show.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
37 GWT.getHostPageBaseURL() + messages.loadingImg(),
b19f0fd301fc New ScrenLock class to ease refactoring and reuse of spinning-wheel-show.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
38 25, 25);
b19f0fd301fc New ScrenLock class to ease refactoring and reuse of spinning-wheel-show.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
39
b19f0fd301fc New ScrenLock class to ease refactoring and reuse of spinning-wheel-show.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
40 inner.addMember(img);
b19f0fd301fc New ScrenLock class to ease refactoring and reuse of spinning-wheel-show.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
41
b19f0fd301fc New ScrenLock class to ease refactoring and reuse of spinning-wheel-show.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
42 lockScreen.addMember(inner);
b19f0fd301fc New ScrenLock class to ease refactoring and reuse of spinning-wheel-show.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
43 }
b19f0fd301fc New ScrenLock class to ease refactoring and reuse of spinning-wheel-show.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
44
b19f0fd301fc New ScrenLock class to ease refactoring and reuse of spinning-wheel-show.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
45 layout.addChild(lockScreen);
b19f0fd301fc New ScrenLock class to ease refactoring and reuse of spinning-wheel-show.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
46 return lockScreen;
b19f0fd301fc New ScrenLock class to ease refactoring and reuse of spinning-wheel-show.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
47 }
b19f0fd301fc New ScrenLock class to ease refactoring and reuse of spinning-wheel-show.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
48
b19f0fd301fc New ScrenLock class to ease refactoring and reuse of spinning-wheel-show.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
49 /** Enable input, remove grey, remove spinning wheel of joy. */
b19f0fd301fc New ScrenLock class to ease refactoring and reuse of spinning-wheel-show.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
50 public static void unlockUI(Layout layout, VLayout lockScreen) {
b19f0fd301fc New ScrenLock class to ease refactoring and reuse of spinning-wheel-show.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
51 layout.removeChild(lockScreen);
b19f0fd301fc New ScrenLock class to ease refactoring and reuse of spinning-wheel-show.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
52 }
b19f0fd301fc New ScrenLock class to ease refactoring and reuse of spinning-wheel-show.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
53 }
b19f0fd301fc New ScrenLock class to ease refactoring and reuse of spinning-wheel-show.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
54 // vim:set ts=4 sw=4 si et sta sts=4 fenc=utf8 :
b19f0fd301fc New ScrenLock class to ease refactoring and reuse of spinning-wheel-show.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
55

http://dive4elements.wald.intevation.org