Mercurial > dive4elements > river
diff flys-client/src/main/java/de/intevation/flys/client/client/ui/FLYSWorkspace.java @ 557:92c200887b20
#21 There might be just a single window for each project now. Users can't open a project twice.
flys-client/trunk@2083 c6561f87-3c4e-4783-a992-168aeb5c3f6f
author | Ingo Weinzierl <ingo.weinzierl@intevation.de> |
---|---|
date | Wed, 08 Jun 2011 13:21:46 +0000 |
parents | e763d8efd42f |
children | 62b65b7b5c7c |
line wrap: on
line diff
--- a/flys-client/src/main/java/de/intevation/flys/client/client/ui/FLYSWorkspace.java Wed Jun 08 12:43:38 2011 +0000 +++ b/flys-client/src/main/java/de/intevation/flys/client/client/ui/FLYSWorkspace.java Wed Jun 08 13:21:46 2011 +0000 @@ -2,8 +2,8 @@ import com.smartgwt.client.widgets.Canvas; -import java.util.ArrayList; -import java.util.List; +import java.util.HashMap; +import java.util.Map; /** @@ -20,7 +20,7 @@ /** A map that contains the open CollectionViews. */ - protected List<CollectionView> views; + protected Map<String, CollectionView> views; /** @@ -28,7 +28,7 @@ * CollectionViews opened. */ public FLYSWorkspace() { - views = new ArrayList<CollectionView>(); + views = new HashMap<String, CollectionView>(); } @@ -38,14 +38,26 @@ * * @param collectionView A new CollectionView. */ - public void addView(CollectionView 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.add(collectionView); + 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(); + } } // vim:set ts=4 sw=4 si et sta sts=4 fenc=utf8 :