From 713a95a3778e2998ee6b3c6130797f1c02fae79d Mon Sep 17 00:00:00 2001 From: pkupczyk <pkupczyk> Date: Wed, 14 Nov 2012 09:41:39 +0000 Subject: [PATCH] SP-385 / BIS-247 : Metaprojects Browsing and Maintenance UI: - fix entities section layout to be resizable - make messages more consistent SVN: 27609 --- .../entity/MetaprojectEntities.java | 26 ++++++++--------- .../MetaprojectTreeEntityKindItemWidget.java | 28 +++++++++++++++++-- 2 files changed, 38 insertions(+), 16 deletions(-) diff --git a/openbis/source/java/ch/systemsx/cisd/openbis/generic/client/web/client/application/ui/metaproject/entity/MetaprojectEntities.java b/openbis/source/java/ch/systemsx/cisd/openbis/generic/client/web/client/application/ui/metaproject/entity/MetaprojectEntities.java index cd3a3d8cc6b..74c157a2552 100644 --- a/openbis/source/java/ch/systemsx/cisd/openbis/generic/client/web/client/application/ui/metaproject/entity/MetaprojectEntities.java +++ b/openbis/source/java/ch/systemsx/cisd/openbis/generic/client/web/client/application/ui/metaproject/entity/MetaprojectEntities.java @@ -21,9 +21,8 @@ import java.util.Map; import java.util.Set; import com.extjs.gxt.ui.client.widget.Component; -import com.google.gwt.user.client.ui.Composite; -import com.google.gwt.user.client.ui.Panel; -import com.google.gwt.user.client.ui.SimplePanel; +import com.extjs.gxt.ui.client.widget.LayoutContainer; +import com.extjs.gxt.ui.client.widget.layout.FitLayout; import ch.systemsx.cisd.openbis.generic.client.web.client.application.AbstractAsyncCallback; import ch.systemsx.cisd.openbis.generic.client.web.client.application.DisposableTabContent; @@ -40,15 +39,13 @@ import ch.systemsx.cisd.openbis.generic.shared.basic.dto.MetaprojectAssignmentsC /** * @author pkupczyk */ -public class MetaprojectEntities extends Composite implements IDisposableComponent +public class MetaprojectEntities extends LayoutContainer implements IDisposableComponent { public static final String ID_SUFFIX = "_metaproject-entities"; private IViewContext<?> viewContext; - private Panel panel; - private SectionsPanel sectionsPanel; private Map<EntityKind, DisposableTabContent> sectionsMap; @@ -60,11 +57,8 @@ public class MetaprojectEntities extends Composite implements IDisposableCompone public MetaprojectEntities(IViewContext<?> viewContext, String idPrefix) { this.viewContext = viewContext; - - panel = new SimplePanel(); - panel.getElement().setId(idPrefix + ID_SUFFIX); - - initWidget(panel); + setLayout(new FitLayout()); + setId(idPrefix + ID_SUFFIX); } private void initSections(final Long metaprojectId, final IDelegatedAction callback) @@ -77,7 +71,10 @@ public class MetaprojectEntities extends Composite implements IDisposableCompone @Override protected void process(MetaprojectAssignmentsCount count) { - panel.clear(); + if (sectionsPanel != null) + { + remove(sectionsPanel); + } sectionsPanel = new SectionsPanel(viewContext.getCommonViewContext(), @@ -108,7 +105,10 @@ public class MetaprojectEntities extends Composite implements IDisposableCompone viewContext, new TechId(metaprojectId))); } - panel.add(sectionsPanel); + add(sectionsPanel); + layout(); + + callback.execute(); } }); } diff --git a/openbis/source/java/ch/systemsx/cisd/openbis/generic/client/web/client/application/ui/metaproject/tree/widget/MetaprojectTreeEntityKindItemWidget.java b/openbis/source/java/ch/systemsx/cisd/openbis/generic/client/web/client/application/ui/metaproject/tree/widget/MetaprojectTreeEntityKindItemWidget.java index e5f08ff382b..63df6339cbf 100644 --- a/openbis/source/java/ch/systemsx/cisd/openbis/generic/client/web/client/application/ui/metaproject/tree/widget/MetaprojectTreeEntityKindItemWidget.java +++ b/openbis/source/java/ch/systemsx/cisd/openbis/generic/client/web/client/application/ui/metaproject/tree/widget/MetaprojectTreeEntityKindItemWidget.java @@ -18,8 +18,10 @@ package ch.systemsx.cisd.openbis.generic.client.web.client.application.ui.metapr import com.google.gwt.user.client.ui.InlineLabel; +import ch.systemsx.cisd.openbis.generic.client.web.client.application.Dict; import ch.systemsx.cisd.openbis.generic.client.web.client.application.IViewContext; import ch.systemsx.cisd.openbis.generic.client.web.client.application.ui.metaproject.tree.model.MetaprojectTreeEntityKindItemData; +import ch.systemsx.cisd.openbis.generic.shared.basic.dto.EntityKind; /** * @author pkupczyk @@ -32,8 +34,28 @@ public class MetaprojectTreeEntityKindItemWidget extends MetaprojectTreeItemWidg { super(viewContext); - initWidget(new InlineLabel(model.getEntityKind().getDescription() + "s (" - + model.getEntityCount() + ")")); - } + EntityKind entityKind = model.getEntityKind(); + String messageKey; + + if (EntityKind.EXPERIMENT.equals(entityKind)) + { + messageKey = Dict.METAPROJECT_ENTITIES_EXPERIMENTS; + } else if (EntityKind.SAMPLE.equals(entityKind)) + { + messageKey = Dict.METAPROJECT_ENTITIES_SAMPLES; + } else if (EntityKind.DATA_SET.equals(entityKind)) + { + messageKey = Dict.METAPROJECT_ENTITIES_DATA_SETS; + } else if (EntityKind.MATERIAL.equals(entityKind)) + { + messageKey = Dict.METAPROJECT_ENTITIES_MATERIALS; + } else + { + throw new IllegalArgumentException("Unsupported entity kind: " + entityKind); + } + String message = viewContext.getMessage(messageKey) + " (" + model.getEntityCount() + ")"; + + initWidget(new InlineLabel(message)); + } } -- GitLab