Mercurial > dive4elements > river
changeset 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 | 3b5e1535a459 |
children | a87fe0d2c928 |
files | flys-client/src/main/java/de/intevation/flys/client/client/ui/ScreenLock.java |
diffstat | 1 files changed, 55 insertions(+), 0 deletions(-) [+] |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/flys-client/src/main/java/de/intevation/flys/client/client/ui/ScreenLock.java Thu Mar 28 09:24:41 2013 +0100 @@ -0,0 +1,55 @@ +package de.intevation.flys.client.client.ui; + +import com.google.gwt.core.client.GWT; + +import com.smartgwt.client.types.Alignment; +import com.smartgwt.client.types.VerticalAlignment; +import com.smartgwt.client.widgets.Img; +import com.smartgwt.client.widgets.layout.HLayout; +import com.smartgwt.client.widgets.layout.Layout; +import com.smartgwt.client.widgets.layout.VLayout; + +import de.intevation.flys.client.client.FLYSConstants; + +/** Basic static functionality to show spinning wheel. */ +public class ScreenLock { + + /** The message class that provides i18n strings. */ + protected static FLYSConstants messages = GWT.create(FLYSConstants.class); + + /** Disables input, grey out, show spinning wheel of joy. */ + public static VLayout lockUI(Layout layout, VLayout lockScreen) { + if (lockScreen == null) { + lockScreen = new VLayout(); + lockScreen.setWidth100(); + lockScreen.setHeight100(); + lockScreen.setBackgroundColor("#7f7f7f"); + lockScreen.setOpacity(50); + lockScreen.setAlign(VerticalAlignment.CENTER); + lockScreen.setDefaultLayoutAlign(VerticalAlignment.CENTER); + + HLayout inner = new HLayout(); + inner.setAlign(Alignment.CENTER); + inner.setDefaultLayoutAlign(Alignment.CENTER); + inner.setOpacity(100); + + Img img = new Img( + GWT.getHostPageBaseURL() + messages.loadingImg(), + 25, 25); + + inner.addMember(img); + + lockScreen.addMember(inner); + } + + layout.addChild(lockScreen); + return lockScreen; + } + + /** Enable input, remove grey, remove spinning wheel of joy. */ + public static void unlockUI(Layout layout, VLayout lockScreen) { + layout.removeChild(lockScreen); + } +} +// vim:set ts=4 sw=4 si et sta sts=4 fenc=utf8 : +