From 2562d59306a74ce7d53791b1740f60aaa57a7c6a Mon Sep 17 00:00:00 2001 From: tpylak <tpylak> Date: Tue, 19 Jul 2011 11:02:11 +0000 Subject: [PATCH] LMS-2355 analysis procedures for material summaries in normal mode SVN: 22204 --- .../application/ClientPluginFactory.java | 14 ++++--- .../AnalysisProcedureListenerHolder.java | 2 + .../detailviewers/ImagingMaterialViewer.java | 10 ++--- .../MaterialMergedSummarySection.java | 37 +++++++++++++------ 4 files changed, 39 insertions(+), 24 deletions(-) diff --git a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/client/application/ClientPluginFactory.java b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/client/application/ClientPluginFactory.java index 13804de7774..3a771dd49fe 100644 --- a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/client/application/ClientPluginFactory.java +++ b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/client/application/ClientPluginFactory.java @@ -177,7 +177,8 @@ public final class ClientPluginFactory extends AbstractClientPluginFactory<Scree public final AbstractTabItemFactory createEntityViewer( final IEntityInformationHolderWithPermId entity) { - return createImagingMaterialViewerTabFactory(entity, null, getViewContext()); + return createImagingMaterialViewerTabFactory(entity, null, + AnalysisProcedureCriteria.createAllProcedures(), getViewContext()); } } @@ -255,7 +256,8 @@ public final class ClientPluginFactory extends AbstractClientPluginFactory<Scree } } else { - openImagingMaterialGenericViewer(material, experimentCriteriaOrNull, viewContext); + openImagingMaterialGenericViewer(material, experimentCriteriaOrNull, + analysisProcedureCriteria, viewContext); } } @@ -281,11 +283,12 @@ public final class ClientPluginFactory extends AbstractClientPluginFactory<Scree private static void openImagingMaterialGenericViewer( final IEntityInformationHolderWithPermId material, final ExperimentSearchCriteria experimentCriteriaOrNull, + final AnalysisProcedureCriteria analysisProcedureCriteria, final IViewContext<IScreeningClientServiceAsync> viewContext) { AbstractTabItemFactory tab = createImagingMaterialViewerTabFactory(material, experimentCriteriaOrNull, - viewContext); + analysisProcedureCriteria, viewContext); DispatcherHelper.dispatchNaviEvent(tab); } @@ -298,6 +301,7 @@ public final class ClientPluginFactory extends AbstractClientPluginFactory<Scree private static final AbstractTabItemFactory createImagingMaterialViewerTabFactory( final IEntityInformationHolderWithPermId material, final ExperimentSearchCriteria experimentCriteriaOrNull, + final AnalysisProcedureCriteria analysisProcedureCriteria, final IViewContext<IScreeningClientServiceAsync> viewContext) { return new AbstractTabItemFactory() @@ -306,11 +310,9 @@ public final class ClientPluginFactory extends AbstractClientPluginFactory<Scree public ITabItem create() { TechId materialTechId = TechId.create(material); - // TODO KE, TPK: Finish me final DatabaseModificationAwareComponent viewer = ImagingMaterialViewer.create(viewContext, materialTechId, - experimentCriteriaOrNull, - AnalysisProcedureCriteria.createAllProcedures()); + experimentCriteriaOrNull, analysisProcedureCriteria); return createViewerTab(viewer, getTabTitle(), viewContext); } diff --git a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/client/application/detailviewers/AnalysisProcedureListenerHolder.java b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/client/application/detailviewers/AnalysisProcedureListenerHolder.java index 327058302d6..39074d7e0d4 100644 --- a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/client/application/detailviewers/AnalysisProcedureListenerHolder.java +++ b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/client/application/detailviewers/AnalysisProcedureListenerHolder.java @@ -23,6 +23,8 @@ import ch.systemsx.cisd.openbis.plugin.screening.client.web.client.application.d */ public class AnalysisProcedureListenerHolder { + public AnalysisProcedureListenerHolder() { + } private IAnalysisProcedureSelectionListener analysisProcedureListener; diff --git a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/client/application/detailviewers/ImagingMaterialViewer.java b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/client/application/detailviewers/ImagingMaterialViewer.java index fe5dca31ff7..18571aa438b 100644 --- a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/client/application/detailviewers/ImagingMaterialViewer.java +++ b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/client/application/detailviewers/ImagingMaterialViewer.java @@ -59,7 +59,8 @@ public class ImagingMaterialViewer extends GenericMaterialViewer private final ExperimentSearchCriteria initialExperimentCriteriaOrNull; - // TODO KE, TPK: finish me + private final AnalysisProcedureCriteria analysisProcedureCriteria; + private ImagingMaterialViewer(IViewContext<IScreeningClientServiceAsync> viewContext, TechId materialTechId, ExperimentSearchCriteria experimentCriteriaOrNull, AnalysisProcedureCriteria analysisProcedureCriteria) @@ -67,6 +68,7 @@ public class ImagingMaterialViewer extends GenericMaterialViewer super(viewContext, materialTechId); this.screeningViewContext = viewContext; this.initialExperimentCriteriaOrNull = experimentCriteriaOrNull; + this.analysisProcedureCriteria = analysisProcedureCriteria; } @Override @@ -84,19 +86,15 @@ public class ImagingMaterialViewer extends GenericMaterialViewer boolean restrictGlobalScopeLinkToProject = isRestrictGlobalScopeLinkToProject(initialExperimentCriteriaOrNull); - AnalysisProcedureCriteria analysisProcedureCriteria = - AnalysisProcedureCriteria.createAllProcedures(); - WellSearchMaterialSection wellSearchSection = new WellSearchMaterialSection(screeningViewContext, materialId, initialExperimentCriteriaOrNull, analysisProcedureCriteria, restrictGlobalScopeLinkToProject); sections.add(wellSearchSection); - // TODO KE, TPK: finish me MaterialMergedSummarySection summarySection = new MaterialMergedSummarySection(screeningViewContext, material, - initialExperimentCriteriaOrNull, + initialExperimentCriteriaOrNull, analysisProcedureCriteria, restrictGlobalScopeLinkToProject); sections.add(summarySection); return sections; diff --git a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/client/application/detailviewers/MaterialMergedSummarySection.java b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/client/application/detailviewers/MaterialMergedSummarySection.java index 9b1b76f7f4c..bb45c348481 100644 --- a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/client/application/detailviewers/MaterialMergedSummarySection.java +++ b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/client/application/detailviewers/MaterialMergedSummarySection.java @@ -36,9 +36,11 @@ class MaterialMergedSummarySection extends DisposableTabContent private AnalysisProcedureListenerHolder analysisProcedureListenerHolder = new AnalysisProcedureListenerHolder(); + // TODO 2011-07-19, Tomasz Pylak: use analysisProcedureCriteria public MaterialMergedSummarySection( IViewContext<IScreeningClientServiceAsync> screeningViewContext, Material material, ExperimentSearchCriteria experimentCriteriaOrNull, + AnalysisProcedureCriteria analysisProcedureCriteria, boolean restrictGlobalScopeLinkToProject) { super(screeningViewContext.getMessage(Dict.MATERIAL_MERGED_SUMMARY_SECTION_TITLE), @@ -72,29 +74,40 @@ class MaterialMergedSummarySection extends DisposableTabContent protected void process(Experiment experiment) { IDisposableComponent viewer = - MaterialReplicaSummaryComponent - .createViewer(screeningViewContext, experiment, - material, - restrictGlobalScopeLinkToProject, - analysisProcedureListenerHolder); + createMaterialReplicaSummaryComponent(experiment); replaceContent(viewer); } }); } else { - final ExperimentSearchByProjectCriteria experimentSearchCriteria = - criteriaOrNull == null ? null - : criteriaOrNull.tryAsSearchByProjectCriteria(); IDisposableComponent allExperimentsComponent = - MaterialFeaturesFromAllExperimentsComponent.createComponent( - screeningViewContext, material, experimentSearchCriteria, - analysisProcedureListenerHolder); + createMaterialFeaturesFromAllExperimentsComponent(criteriaOrNull); replaceContent(allExperimentsComponent); } } }; } + private IDisposableComponent createMaterialFeaturesFromAllExperimentsComponent( + ExperimentSearchCriteria criteriaOrNull) + { + final ExperimentSearchByProjectCriteria experimentSearchCriteria = + criteriaOrNull == null ? null : criteriaOrNull.tryAsSearchByProjectCriteria(); + IDisposableComponent allExperimentsComponent = + MaterialFeaturesFromAllExperimentsComponent.createComponent(screeningViewContext, + material, experimentSearchCriteria, analysisProcedureListenerHolder); + return allExperimentsComponent; + } + + private IDisposableComponent createMaterialReplicaSummaryComponent(Experiment experiment) + { + IDisposableComponent viewer = + MaterialReplicaSummaryComponent + .createViewer(screeningViewContext, experiment, material, + restrictGlobalScopeLinkToProject, analysisProcedureListenerHolder); + return viewer; + } + @Override protected IDisposableComponent createDisposableContent() { @@ -109,7 +122,7 @@ class MaterialMergedSummarySection extends DisposableTabContent final SingleOrAllExperimentsChooser experimentsChooser = createExperimentChooser(); getHeader().addTool(experimentsChooser); getHeader().addTool(createAnalysisProcedureChooser()); - + // WORKAROUND to GXT private widgetPanel in Header with fixed "float: right" set onRender experimentsChooser.getParent().addStyleName("force-float-left"); } -- GitLab