Mercurial > dive4elements > river
view 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 |
line wrap: on
line source
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 :