From e0878f562f72e8c1314edd19d585f7039587de0d Mon Sep 17 00:00:00 2001 From: cramakri <cramakri> Date: Thu, 9 Aug 2012 13:46:49 +0000 Subject: [PATCH] BIS-122 SP-236 : Added the GRID view mode that offers more grid functionality than the embedded view mode SVN: 26320 --- .../web/client/application/GenericViewModel.java | 5 +++++ .../client/application/framework/AppView.java | 16 ++++++++-------- .../AggregationServiceLocatorResolver.java | 14 +++++++++++--- .../ui/aggregation/AggregationServicePanel.java | 2 +- .../openbis/generic/shared/basic/ViewMode.java | 5 +++++ 5 files changed, 30 insertions(+), 12 deletions(-) diff --git a/openbis/source/java/ch/systemsx/cisd/openbis/generic/client/web/client/application/GenericViewModel.java b/openbis/source/java/ch/systemsx/cisd/openbis/generic/client/web/client/application/GenericViewModel.java index b24e5b9b366..88f1e42392e 100644 --- a/openbis/source/java/ch/systemsx/cisd/openbis/generic/client/web/client/application/GenericViewModel.java +++ b/openbis/source/java/ch/systemsx/cisd/openbis/generic/client/web/client/application/GenericViewModel.java @@ -76,6 +76,11 @@ public class GenericViewModel return viewMode == ViewMode.EMBEDDED; } + public boolean isGridMode() + { + return viewMode == ViewMode.GRID; + } + public boolean isDisplaySettingsSaving() { return isAnonymousLogin() == false && ViewMode.NORMAL.equals(getViewMode()); diff --git a/openbis/source/java/ch/systemsx/cisd/openbis/generic/client/web/client/application/framework/AppView.java b/openbis/source/java/ch/systemsx/cisd/openbis/generic/client/web/client/application/framework/AppView.java index 2af6c7b52b4..19fc1b420d2 100644 --- a/openbis/source/java/ch/systemsx/cisd/openbis/generic/client/web/client/application/framework/AppView.java +++ b/openbis/source/java/ch/systemsx/cisd/openbis/generic/client/web/client/application/framework/AppView.java @@ -16,6 +16,13 @@ package ch.systemsx.cisd.openbis.generic.client.web.client.application.framework; +import ch.systemsx.cisd.openbis.generic.client.web.client.ICommonClientServiceAsync; +import ch.systemsx.cisd.openbis.generic.client.web.client.application.CommonViewContext; +import ch.systemsx.cisd.openbis.generic.client.web.client.application.IViewContext; +import ch.systemsx.cisd.openbis.generic.client.web.client.application.menu.TopMenu; +import ch.systemsx.cisd.openbis.generic.client.web.client.application.ui.SimpleModeHeader; +import ch.systemsx.cisd.openbis.generic.shared.basic.ViewMode; + import com.extjs.gxt.ui.client.Style.LayoutRegion; import com.extjs.gxt.ui.client.Style.Scroll; import com.extjs.gxt.ui.client.mvc.AppEvent; @@ -28,13 +35,6 @@ import com.extjs.gxt.ui.client.widget.layout.BorderLayout; import com.extjs.gxt.ui.client.widget.layout.BorderLayoutData; import com.google.gwt.user.client.ui.RootPanel; -import ch.systemsx.cisd.openbis.generic.client.web.client.ICommonClientServiceAsync; -import ch.systemsx.cisd.openbis.generic.client.web.client.application.CommonViewContext; -import ch.systemsx.cisd.openbis.generic.client.web.client.application.IViewContext; -import ch.systemsx.cisd.openbis.generic.client.web.client.application.menu.TopMenu; -import ch.systemsx.cisd.openbis.generic.client.web.client.application.ui.SimpleModeHeader; -import ch.systemsx.cisd.openbis.generic.shared.basic.ViewMode; - /** * Main application view. * @@ -87,7 +87,7 @@ final class AppView extends View } else if (viewMode == ViewMode.NORMAL) { north = new TopMenu(viewContext, componentProvider); - } else if (viewMode == ViewMode.EMBEDDED) + } else if (viewMode == ViewMode.EMBEDDED || viewMode == ViewMode.GRID) { north = null; } else diff --git a/openbis/source/java/ch/systemsx/cisd/openbis/generic/client/web/client/application/ui/aggregation/AggregationServiceLocatorResolver.java b/openbis/source/java/ch/systemsx/cisd/openbis/generic/client/web/client/application/ui/aggregation/AggregationServiceLocatorResolver.java index 1597bd3c36e..0c5fd93e13c 100644 --- a/openbis/source/java/ch/systemsx/cisd/openbis/generic/client/web/client/application/ui/aggregation/AggregationServiceLocatorResolver.java +++ b/openbis/source/java/ch/systemsx/cisd/openbis/generic/client/web/client/application/ui/aggregation/AggregationServiceLocatorResolver.java @@ -1,7 +1,6 @@ package ch.systemsx.cisd.openbis.generic.client.web.client.application.ui.aggregation; import ch.systemsx.cisd.openbis.generic.client.web.client.ICommonClientServiceAsync; -import ch.systemsx.cisd.openbis.generic.client.web.client.application.Dict; import ch.systemsx.cisd.openbis.generic.client.web.client.application.GenericConstants; import ch.systemsx.cisd.openbis.generic.client.web.client.application.IViewContext; import ch.systemsx.cisd.openbis.generic.client.web.client.application.framework.AbstractTabItemFactory; @@ -44,7 +43,14 @@ public class AggregationServiceLocatorResolver extends AbstractViewLocatorResolv @Override public ITabItem create() { - return DefaultTabItem.createUnaware(getTabTitle(), new AggregationServicePanel( + String tabTitle = + locator.getParameters().get(AggregationServicePanel.SERVICE_KEY_PARAM); + if (null == tabTitle) + { + tabTitle = getTabTitle(); + } + + return DefaultTabItem.createUnaware(tabTitle, new AggregationServicePanel( viewContext, MainPagePanel.PREFIX, locator), false, viewContext); } @@ -63,7 +69,9 @@ public class AggregationServiceLocatorResolver extends AbstractViewLocatorResolv @Override public String getTabTitle() { - return viewContext.getMessage(Dict.APPLICATION_NAME); + // No need to go through the dictionary for this, since the panel is not a + // normal part of the openBIS app. + return "aggregation service"; } @Override diff --git a/openbis/source/java/ch/systemsx/cisd/openbis/generic/client/web/client/application/ui/aggregation/AggregationServicePanel.java b/openbis/source/java/ch/systemsx/cisd/openbis/generic/client/web/client/application/ui/aggregation/AggregationServicePanel.java index b896e0faa60..bdea6d34e40 100644 --- a/openbis/source/java/ch/systemsx/cisd/openbis/generic/client/web/client/application/ui/aggregation/AggregationServicePanel.java +++ b/openbis/source/java/ch/systemsx/cisd/openbis/generic/client/web/client/application/ui/aggregation/AggregationServicePanel.java @@ -44,7 +44,7 @@ import com.google.gwt.user.client.ui.HTML; */ public class AggregationServicePanel extends ContentPanel { - private static final String SERVICE_KEY_PARAM = "serviceKey"; + static final String SERVICE_KEY_PARAM = "serviceKey"; private static final String DSS_CODE_PARAM = "dss"; diff --git a/openbis/source/java/ch/systemsx/cisd/openbis/generic/shared/basic/ViewMode.java b/openbis/source/java/ch/systemsx/cisd/openbis/generic/shared/basic/ViewMode.java index 9e4b1f464e3..2acc4442c9c 100644 --- a/openbis/source/java/ch/systemsx/cisd/openbis/generic/shared/basic/ViewMode.java +++ b/openbis/source/java/ch/systemsx/cisd/openbis/generic/shared/basic/ViewMode.java @@ -32,5 +32,10 @@ public enum ViewMode implements IsSerializable */ EMBEDDED, + /** + * Grid mode is similar to embedded, but it has full-featured grid functionality. + */ + GRID, + NORMAL; } -- GitLab