Mercurial > dive4elements > river
view flys-client/src/main/java/de/intevation/flys/client/client/ui/FLYSWorkspace.java @ 1293:e88cd17b3420
Bugfix: #233 Redraw computation table if no data was retrieved to display an error message immediatly.
flys-client/trunk@2906 c6561f87-3c4e-4783-a992-168aeb5c3f6f
author | Ingo Weinzierl <ingo.weinzierl@intevation.de> |
---|---|
date | Fri, 07 Oct 2011 13:39:35 +0000 |
parents | fe23bbf0ea11 |
children | 6eeacd0bbe26 |
line wrap: on
line source
package de.intevation.flys.client.client.ui; import com.smartgwt.client.widgets.Canvas; import java.util.HashMap; import java.util.Map; /** * @author <a href="mailto:ingo.weinzierl@intevation.de">Ingo Weinzierl</a> */ public class FLYSWorkspace extends Canvas { /** The maximal number of windows that fit into the browser view when an * offset is used to move windows initially.*/ public static int MAX_WINDOWS = 10; /** The number of pixels used to move windows.*/ public static int WINDOW_OFFSET = 20; /** A map that contains the open CollectionViews. */ protected Map<String, CollectionView> views; /** * The default constructor creates an empty FLYSWorkspace with no * CollectionViews opened. */ public FLYSWorkspace() { views = new HashMap<String, CollectionView>(); } /** * This method adds a new CollectionView to this workspace and stores a * reference in {@link views}. * * @param collectionView A new CollectionView. */ public void addView(String uuid, CollectionView collectionView) { int num = views != null ? views.size() : 0; int factor = num % MAX_WINDOWS; collectionView.moveTo(factor * WINDOW_OFFSET, factor * WINDOW_OFFSET); views.put(uuid, collectionView); addChild(collectionView); } public void removeProject(String uuid) { views.remove(uuid); } public void bringUp(String uuid) { CollectionView view = views.get(uuid); view.show(); view.restore(); } /** * Removes a project from workspace (view) and clears its reference from * hash map. * * @param uuid The project's uuid. */ public void destroyProject(String uuid) { CollectionView project = views.get(uuid); if (project != null) { removeProject(uuid); project.destroy(); } } public void updateTitle(String uuid, String title) { CollectionView view = views.get(uuid); view.setTitle(title); } public boolean hasView(String uuid) { if(views.get(uuid) != null) { return true; } return false; } } // vim:set ts=4 sw=4 si et sta sts=4 fenc=utf8 :