Index: Ringtoets/Piping/src/Ringtoets.Piping.Forms/Views/PipingInputView.cs
===================================================================
diff -u -r323312312700f92d2d2d5b57423a36ed138c7cf9 -rf9aefa56762ac1dd731bc4bfed955d651781d598
--- Ringtoets/Piping/src/Ringtoets.Piping.Forms/Views/PipingInputView.cs (.../PipingInputView.cs) (revision 323312312700f92d2d2d5b57423a36ed138c7cf9)
+++ Ringtoets/Piping/src/Ringtoets.Piping.Forms/Views/PipingInputView.cs (.../PipingInputView.cs) (revision f9aefa56762ac1dd731bc4bfed955d651781d598)
@@ -33,10 +33,9 @@
///
/// This class is a view to show the piping input.
///
- public partial class PipingInputView : UserControl, IChartView, IObserver
+ public partial class PipingInputView : UserControl, IChartView
{
- private PipingInput data;
- private PipingCalculationScenario calculation;
+ private PipingCalculationScenario data;
private ChartData surfaceLineData;
private ChartData entryPointData;
@@ -48,30 +47,18 @@
private ChartData dikeToeAtRiverPointData;
private ChartData dikeToeAtPolderPointData;
+ private readonly Observer calculationObserver;
+ private readonly Observer calculationInputObserver;
+
///
/// Creates a new instance of .
///
public PipingInputView()
{
InitializeComponent();
- }
- ///
- /// Gets or sets the calculation the input belongs to.
- ///
- public PipingCalculationScenario Calculation
- {
- get
- {
- return calculation;
- }
- set
- {
- DetachFromData();
- calculation = value;
- SetChartTitle();
- AttachToData();
- }
+ calculationObserver = new Observer(SetChartTitle);
+ calculationInputObserver = new Observer(SetDataToChart);
}
public object Data
@@ -82,19 +69,19 @@
}
set
{
- var newValue = value as PipingInput;
+ data = value as PipingCalculationScenario;
- DetachFromData();
- data = newValue;
+ calculationObserver.Observable = data;
+ calculationInputObserver.Observable = data != null ? data.InputParameters : null;
if (data == null)
{
Chart.ResetChartData();
return;
}
+ SetChartTitle();
SetDataToChart();
- AttachToData();
}
}
@@ -106,15 +93,25 @@
}
}
- public void UpdateObserver()
+ ///
+ /// Clean up any resources being used.
+ ///
+ /// true if managed resources should be disposed; otherwise, false.
+ protected override void Dispose(bool disposing)
{
- SetChartTitle();
- SetDataToChart();
+ calculationObserver.Dispose();
+ calculationInputObserver.Dispose();
+
+ if (disposing && (components != null))
+ {
+ components.Dispose();
+ }
+ base.Dispose(disposing);
}
private void SetChartTitle()
{
- chartControl.ChartTitle = calculation != null ? calculation.Name : string.Empty;
+ chartControl.ChartTitle = data != null ? data.Name : string.Empty;
}
private void SetDataToChart()
@@ -141,83 +138,83 @@
private ChartData GetSurfaceLineChartData()
{
- if (data == null || data.SurfaceLine == null)
+ if (data == null || data.InputParameters.SurfaceLine == null)
{
return ChartDataFactory.CreateEmptyLineData(Resources.RingtoetsPipingSurfaceLine_DisplayName);
}
- return PipingChartDataFactory.Create(data.SurfaceLine);
+ return PipingChartDataFactory.Create(data.InputParameters.SurfaceLine);
}
private ChartData GetEntryPointChartData()
{
- if (data == null || data.SurfaceLine == null)
+ if (data == null || data.InputParameters.SurfaceLine == null)
{
return ChartDataFactory.CreateEmptyPointData(Resources.PipingInput_EntryPointL_DisplayName);
}
- return PipingChartDataFactory.CreateEntryPoint(data.EntryPointL, data.SurfaceLine);
+ return PipingChartDataFactory.CreateEntryPoint(data.InputParameters.EntryPointL, data.InputParameters.SurfaceLine);
}
private ChartData GetExitPointChartData()
{
- if (data == null || data.SurfaceLine == null)
+ if (data == null || data.InputParameters.SurfaceLine == null)
{
return ChartDataFactory.CreateEmptyPointData(Resources.PipingInput_ExitPointL_DisplayName);
}
- return PipingChartDataFactory.CreateExitPoint(data.ExitPointL, data.SurfaceLine);
+ return PipingChartDataFactory.CreateExitPoint(data.InputParameters.ExitPointL, data.InputParameters.SurfaceLine);
}
private ChartData GetDitchPolderSideData()
{
- if (data == null || data.SurfaceLine == null || data.SurfaceLine.DitchPolderSide == null)
+ if (data == null || data.InputParameters.SurfaceLine == null || data.InputParameters.SurfaceLine.DitchPolderSide == null)
{
return ChartDataFactory.CreateEmptyPointData(PipingDataResources.CharacteristicPoint_DitchPolderSide);
}
- return PipingChartDataFactory.CreateDitchPolderSide(data.SurfaceLine);
+ return PipingChartDataFactory.CreateDitchPolderSide(data.InputParameters.SurfaceLine);
}
private ChartData GetBottomDitchPolderSideData()
{
- if (data == null || data.SurfaceLine == null || data.SurfaceLine.BottomDitchPolderSide == null)
+ if (data == null || data.InputParameters.SurfaceLine == null || data.InputParameters.SurfaceLine.BottomDitchPolderSide == null)
{
return ChartDataFactory.CreateEmptyPointData(PipingDataResources.CharacteristicPoint_BottomDitchPolderSide);
}
- return PipingChartDataFactory.CreateBottomDitchPolderSide(data.SurfaceLine);
+ return PipingChartDataFactory.CreateBottomDitchPolderSide(data.InputParameters.SurfaceLine);
}
private ChartData GetBottomDitchDikeSideData()
{
- if (data == null || data.SurfaceLine == null || data.SurfaceLine.BottomDitchDikeSide == null)
+ if (data == null || data.InputParameters.SurfaceLine == null || data.InputParameters.SurfaceLine.BottomDitchDikeSide == null)
{
return ChartDataFactory.CreateEmptyPointData(PipingDataResources.CharacteristicPoint_BottomDitchDikeSide);
}
- return PipingChartDataFactory.CreateBottomDitchDikeSide(data.SurfaceLine);
+ return PipingChartDataFactory.CreateBottomDitchDikeSide(data.InputParameters.SurfaceLine);
}
private ChartData GetDitchDikeSideData()
{
- if (data == null || data.SurfaceLine == null || data.SurfaceLine.DitchDikeSide == null)
+ if (data == null || data.InputParameters.SurfaceLine == null || data.InputParameters.SurfaceLine.DitchDikeSide == null)
{
return ChartDataFactory.CreateEmptyPointData(PipingDataResources.CharacteristicPoint_DitchDikeSide);
}
- return PipingChartDataFactory.CreateDitchDikeSide(data.SurfaceLine);
+ return PipingChartDataFactory.CreateDitchDikeSide(data.InputParameters.SurfaceLine);
}
private ChartData GetDikeToeAtRiverData()
{
- if (data == null || data.SurfaceLine == null || data.SurfaceLine.DikeToeAtRiver == null)
+ if (data == null || data.InputParameters.SurfaceLine == null || data.InputParameters.SurfaceLine.DikeToeAtRiver == null)
{
return ChartDataFactory.CreateEmptyPointData(PipingDataResources.CharacteristicPoint_DikeToeAtRiver);
}
- return PipingChartDataFactory.CreateDikeToeAtRiver(data.SurfaceLine);
+ return PipingChartDataFactory.CreateDikeToeAtRiver(data.InputParameters.SurfaceLine);
}
private ChartData GetDikeToeAtPolderData()
{
- if (data == null || data.SurfaceLine == null || data.SurfaceLine.DikeToeAtPolder == null)
+ if (data == null || data.InputParameters.SurfaceLine == null || data.InputParameters.SurfaceLine.DikeToeAtPolder == null)
{
return ChartDataFactory.CreateEmptyPointData(PipingDataResources.CharacteristicPoint_DikeToeAtPolder);
}
- return PipingChartDataFactory.CreateDikeToeAtPolder(data.SurfaceLine);
+ return PipingChartDataFactory.CreateDikeToeAtPolder(data.InputParameters.SurfaceLine);
}
private ChartData AddOrUpdateChartData(ChartData oldChartData, ChartData newChartData)
@@ -233,31 +230,5 @@
return newChartData;
}
-
- private void DetachFromData()
- {
- if (calculation != null)
- {
- calculation.Detach(this);
- }
-
- if (data != null)
- {
- data.Detach(this);
- }
- }
-
- private void AttachToData()
- {
- if (calculation != null)
- {
- calculation.Attach(this);
- }
-
- if (data != null)
- {
- data.Attach(this);
- }
- }
}
}
\ No newline at end of file