Skip to content
Snippets Groups Projects
Commit fb86f848 authored by kaloyane's avatar kaloyane
Browse files

improvement in the analysis procedure auto-selection selection

SVN: 22244
parent b59ec79f
No related branches found
No related tags found
No related merge requests found
......@@ -69,23 +69,27 @@ class AnalysisProcedureChooser extends LayoutContainer
IViewContext<IScreeningClientServiceAsync> viewContext,
ExperimentSearchCriteriaHolder experimentCriteriaHolder,
String selectedAnalysisProcedureOrNull,
IAnalysisProcedureSelectionListener selectionListener)
IAnalysisProcedureSelectionListener selectionListener,
boolean triggerInitialSelectionEvent)
{
return new AnalysisProcedureChooser(viewContext, experimentCriteriaHolder,
selectedAnalysisProcedureOrNull, selectionListener, new HorizontalPanel());
selectedAnalysisProcedureOrNull, selectionListener, triggerInitialSelectionEvent,
new HorizontalPanel());
}
public static final AnalysisProcedureChooser createVertical(
IViewContext<IScreeningClientServiceAsync> viewContext,
ExperimentSearchCriteriaHolder experimentCriteriaHolder,
String selectedAnalysisProcedureOrNull,
IAnalysisProcedureSelectionListener selectionListener)
IAnalysisProcedureSelectionListener selectionListener,
boolean triggerInitialSelectionEvent)
{
final VerticalPanel layoutPanel = new VerticalPanel();
layoutPanel.setWidth(PANEL_WIDTH_PX);
return new AnalysisProcedureChooser(viewContext, experimentCriteriaHolder,
selectedAnalysisProcedureOrNull, selectionListener, layoutPanel);
selectedAnalysisProcedureOrNull, selectionListener, triggerInitialSelectionEvent,
layoutPanel);
}
private final IViewContext<IScreeningClientServiceAsync> viewContext;
......@@ -108,7 +112,8 @@ class AnalysisProcedureChooser extends LayoutContainer
private AnalysisProcedureChooser(IViewContext<IScreeningClientServiceAsync> viewContext,
ExperimentSearchCriteriaHolder experimentCriteriaHolder,
String selectedAnalysisProcedureOrNull,
IAnalysisProcedureSelectionListener selectionListener, LayoutContainer layoutPanel)
IAnalysisProcedureSelectionListener selectionListener,
boolean triggerInitialSelectionEvent, LayoutContainer layoutPanel)
{
this.viewContext = viewContext;
this.selectionListener = selectionListener;
......@@ -121,7 +126,23 @@ class AnalysisProcedureChooser extends LayoutContainer
layoutPanel.add(createComboLabel());
layoutPanel.add(analysisProceduresComboBox);
initSelection(selectedAnalysisProcedureOrNull, triggerInitialSelectionEvent);
}
private void initSelection(String selectedAnalysisProcedureOrNull, boolean triggerEvents)
{
if (false == triggerEvents)
{
disableEvents(true);
}
refresh(selectedAnalysisProcedureOrNull);
if (false == triggerEvents)
{
enableEvents(true);
}
}
public void updateAnalysisProcedures()
......
......@@ -81,7 +81,7 @@ public class ExperimentAnalysisSummarySection extends DisposableTabContent
ExperimentSearchCriteriaHolder criteriaHolder = new ExperimentSearchCriteriaHolder(experimentCriteria);
return AnalysisProcedureChooser.createHorizontal(screeningViewContext, criteriaHolder,
null, getGridAsListener());
null, getGridAsListener(), true);
}
}
\ No newline at end of file
......@@ -106,7 +106,6 @@ class MaterialMergedSummarySection extends DisposableTabContent
IDisposableComponent allExperimentsComponent =
MaterialFeaturesFromAllExperimentsComponent.createComponent(screeningViewContext,
material, experimentSearchCriteria, analysisProcedureListenerHolder);
setInitialAnalysisProcedureCriteriaAndReset();
return allExperimentsComponent;
}
......@@ -116,24 +115,9 @@ class MaterialMergedSummarySection extends DisposableTabContent
MaterialReplicaSummaryComponent
.createViewer(screeningViewContext, experiment, material,
restrictGlobalScopeLinkToProject, analysisProcedureListenerHolder);
setInitialAnalysisProcedureCriteriaAndReset();
return viewer;
}
/**
* The first time when the grid is shown, we set the initial analysis procedure. Later on the
* user choice is kept.
*/
private void setInitialAnalysisProcedureCriteriaAndReset()
{
if (initialAnalysisProcedureCriteriaOrNull != null)
{
analysisProcedureListenerHolder.getAnalysisProcedureListener()
.analysisProcedureSelected(initialAnalysisProcedureCriteriaOrNull);
initialAnalysisProcedureCriteriaOrNull = null;
}
}
@Override
protected IDisposableComponent createDisposableContent()
{
......@@ -163,8 +147,13 @@ class MaterialMergedSummarySection extends DisposableTabContent
private AnalysisProcedureChooser createAnalysisProcedureChooser()
{
String initialAnalysisProcedureOrNull =
(initialAnalysisProcedureCriteriaOrNull == null) ? null
: initialAnalysisProcedureCriteriaOrNull.tryGetAnalysisProcedureCode();
return AnalysisProcedureChooser.createVertical(screeningViewContext,
experimentSearchCriteriaHolder, null, createAnalysisProcedureListener());
experimentSearchCriteriaHolder, initialAnalysisProcedureOrNull,
createAnalysisProcedureListener(), false);
}
private IAnalysisProcedureSelectionListener createAnalysisProcedureListener()
......
......@@ -569,7 +569,7 @@ public class WellSearchGrid extends TypedTableGrid<WellContent> implements
{
AnalysisProcedureChooser analysisProcedureChooser =
AnalysisProcedureChooser.createVertical(viewContext, experimentCriteriaHolder,
null, this);
null, this, true);
return analysisProcedureChooser;
}
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment