Index: Riskeer/Common/src/Riskeer.Common.Forms/Properties/Resources.Designer.cs =================================================================== diff -u -r1f1d9b461f56935865eab0e4bb19377f86f499e6 -r21f561c73f0a7dcee27f6989b84da9d40868069c --- Riskeer/Common/src/Riskeer.Common.Forms/Properties/Resources.Designer.cs (.../Resources.Designer.cs) (revision 1f1d9b461f56935865eab0e4bb19377f86f499e6) +++ Riskeer/Common/src/Riskeer.Common.Forms/Properties/Resources.Designer.cs (.../Resources.Designer.cs) (revision 21f561c73f0a7dcee27f6989b84da9d40868069c) @@ -281,6 +281,15 @@ } /// + /// Looks up a localized string similar to Toon HRD bestand. + /// + public static string CalculatableView_HideHydraulicBoundaryDatabaseColumnCheckBox_Text { + get { + return ResourceManager.GetString("CalculatableView_HideHydraulicBoundaryDatabaseColumnCheckBox_Text", resourceCulture); + } + } + + /// /// Looks up a localized string similar to Selecteer alles. /// public static string CalculatableView_SelectAllButton_Text { @@ -2486,15 +2495,6 @@ } /// - /// Looks up a localized string similar to Toon HRD bestand. - /// - public static string LocationCalculationsView_HideHydraulicBoundaryDatabaseColumnCheckBox_Text { - get { - return ResourceManager.GetString("LocationCalculationsView_HideHydraulicBoundaryDatabaseColumnCheckBox_Text", resourceCulture); - } - } - - /// /// Looks up a localized string similar to De gemiddelde waarde van de lognormale verdeling.. /// public static string LogNormalDistribution_Mean_Description { Index: Riskeer/Common/src/Riskeer.Common.Forms/Properties/Resources.resx =================================================================== diff -u -r1f1d9b461f56935865eab0e4bb19377f86f499e6 -r21f561c73f0a7dcee27f6989b84da9d40868069c --- Riskeer/Common/src/Riskeer.Common.Forms/Properties/Resources.resx (.../Resources.resx) (revision 1f1d9b461f56935865eab0e4bb19377f86f499e6) +++ Riskeer/Common/src/Riskeer.Common.Forms/Properties/Resources.resx (.../Resources.resx) (revision 21f561c73f0a7dcee27f6989b84da9d40868069c) @@ -1601,7 +1601,7 @@ De som van de bijdragen van de maatgevende scenario's voor dit vak is gelijk aan {0}% - + Toon HRD bestand Index: Riskeer/Common/src/Riskeer.Common.Forms/Views/HydraulicBoundaryCalculationsView.cs =================================================================== diff -u -re46d30b3ce0dd6ac1b44bfb979f75a20712dbd4a -r21f561c73f0a7dcee27f6989b84da9d40868069c --- Riskeer/Common/src/Riskeer.Common.Forms/Views/HydraulicBoundaryCalculationsView.cs (.../HydraulicBoundaryCalculationsView.cs) (revision e46d30b3ce0dd6ac1b44bfb979f75a20712dbd4a) +++ Riskeer/Common/src/Riskeer.Common.Forms/Views/HydraulicBoundaryCalculationsView.cs (.../HydraulicBoundaryCalculationsView.cs) (revision 21f561c73f0a7dcee27f6989b84da9d40868069c) @@ -279,7 +279,7 @@ DeselectAllButton.Text = Resources.CalculatableView_DeselectAllButton_Text; SelectAllButton.Text = Resources.CalculatableView_SelectAllButton_Text; ButtonGroupBox.Text = Resources.CalculatableView_ButtonGroupBox_Text; - showHydraulicBoundaryDatabaseFileNameColumnCheckBox.Text = Resources.LocationCalculationsView_HideHydraulicBoundaryDatabaseColumnCheckBox_Text; + showHydraulicBoundaryDatabaseFileNameColumnCheckBox.Text = Resources.CalculatableView_HideHydraulicBoundaryDatabaseColumnCheckBox_Text; } private void InitializeEventHandlers() Index: Riskeer/DuneErosion/src/Riskeer.DuneErosion.Forms/Views/DuneLocationCalculationsView.Designer.cs =================================================================== diff -u -ra8862f6a2c03c22a430f2905efdf3c7ca4a3bf8e -r21f561c73f0a7dcee27f6989b84da9d40868069c --- Riskeer/DuneErosion/src/Riskeer.DuneErosion.Forms/Views/DuneLocationCalculationsView.Designer.cs (.../DuneLocationCalculationsView.Designer.cs) (revision a8862f6a2c03c22a430f2905efdf3c7ca4a3bf8e) +++ Riskeer/DuneErosion/src/Riskeer.DuneErosion.Forms/Views/DuneLocationCalculationsView.Designer.cs (.../DuneLocationCalculationsView.Designer.cs) (revision 21f561c73f0a7dcee27f6989b84da9d40868069c) @@ -19,6 +19,8 @@ // Stichting Deltares and remain full property of Stichting Deltares at all times. // All rights reserved. +using System.Windows.Forms; + namespace Riskeer.DuneErosion.Forms.Views { partial class DuneLocationCalculationsView @@ -30,8 +32,8 @@ #region Component Designer generated code - /// - /// Required method for Designer support - do not modify + /// + /// Required method for Designer support - do not modify /// the contents of this method with the code editor. /// private void InitializeComponent() @@ -42,20 +44,21 @@ this.DeselectAllButton = new Core.Common.Controls.Forms.EnhancedButton(); this.SelectAllButton = new Core.Common.Controls.Forms.EnhancedButton(); this.ButtonGroupBox = new System.Windows.Forms.GroupBox(); + this.showHydraulicBoundaryDatabaseFileNameColumnCheckBox = new System.Windows.Forms.CheckBox(); this.CalculateForSelectedButtonErrorProvider = new System.Windows.Forms.ErrorProvider(this.components); this.ButtonGroupBox.SuspendLayout(); - ((System.ComponentModel.ISupportInitialize)(this.CalculateForSelectedButtonErrorProvider)).BeginInit(); + ((System.ComponentModel.ISupportInitialize) (this.CalculateForSelectedButtonErrorProvider)).BeginInit(); this.SuspendLayout(); // // dataGridViewControl // this.dataGridViewControl.Dock = System.Windows.Forms.DockStyle.Fill; - this.dataGridViewControl.Location = new System.Drawing.Point(0, 0); + this.dataGridViewControl.Location = new System.Drawing.Point(0, 40); this.dataGridViewControl.MultiSelect = true; this.dataGridViewControl.Name = "dataGridViewControl"; this.dataGridViewControl.Padding = new System.Windows.Forms.Padding(0, 0, 0, 5); this.dataGridViewControl.SelectionMode = System.Windows.Forms.DataGridViewSelectionMode.RowHeaderSelect; - this.dataGridViewControl.Size = new System.Drawing.Size(533, 85); + this.dataGridViewControl.Size = new System.Drawing.Size(533, 45); this.dataGridViewControl.TabIndex = 2; // // CalculateForSelectedButton @@ -99,27 +102,41 @@ this.ButtonGroupBox.TabIndex = 3; this.ButtonGroupBox.TabStop = false; // + // showHydraulicBoundaryDatabaseFileNameColumnCheckBox + // + this.showHydraulicBoundaryDatabaseFileNameColumnCheckBox.AutoSize = true; + this.showHydraulicBoundaryDatabaseFileNameColumnCheckBox.Dock = System.Windows.Forms.DockStyle.Top; + this.showHydraulicBoundaryDatabaseFileNameColumnCheckBox.Location = new System.Drawing.Point(0, 0); + this.showHydraulicBoundaryDatabaseFileNameColumnCheckBox.MinimumSize = new System.Drawing.Size(500, 40); + this.showHydraulicBoundaryDatabaseFileNameColumnCheckBox.Name = "showHydraulicBoundaryDatabaseFileNameColumnCheckBox"; + this.showHydraulicBoundaryDatabaseFileNameColumnCheckBox.Padding = new System.Windows.Forms.Padding(8, 0, 0, 0); + this.showHydraulicBoundaryDatabaseFileNameColumnCheckBox.Size = new System.Drawing.Size(533, 40); + this.showHydraulicBoundaryDatabaseFileNameColumnCheckBox.TabIndex = 3; + this.showHydraulicBoundaryDatabaseFileNameColumnCheckBox.UseVisualStyleBackColor = true; + this.showHydraulicBoundaryDatabaseFileNameColumnCheckBox.CheckedChanged += new System.EventHandler(this.ShowHydraulicBoundaryDatabaseFileNameColumnCheckBox_CheckedChanged); + // // CalculateForSelectedButtonErrorProvider // this.CalculateForSelectedButtonErrorProvider.BlinkStyle = System.Windows.Forms.ErrorBlinkStyle.NeverBlink; this.CalculateForSelectedButtonErrorProvider.ContainerControl = this; this.CalculateForSelectedButtonErrorProvider.Icon = Core.Gui.Properties.Resources.warning; this.CalculateForSelectedButtonErrorProvider.SetIconPadding(CalculateForSelectedButton, 2); // - // DuneLocationCalculationsViewBase + // DuneLocationCalculationsView // this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F); this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; this.AutoScroll = true; this.AutoScrollMinSize = new System.Drawing.Size(526, 85); this.Controls.Add(this.dataGridViewControl); this.Controls.Add(this.ButtonGroupBox); + this.Controls.Add(this.showHydraulicBoundaryDatabaseFileNameColumnCheckBox); this.Name = "DuneLocationCalculationsView"; this.Size = new System.Drawing.Size(533, 146); this.ButtonGroupBox.ResumeLayout(false); - ((System.ComponentModel.ISupportInitialize)(this.CalculateForSelectedButtonErrorProvider)).EndInit(); + ((System.ComponentModel.ISupportInitialize) (this.CalculateForSelectedButtonErrorProvider)).EndInit(); this.ResumeLayout(false); - + this.PerformLayout(); } #endregion @@ -130,5 +147,6 @@ private Core.Common.Controls.Forms.EnhancedButton SelectAllButton; protected System.Windows.Forms.GroupBox ButtonGroupBox; private System.Windows.Forms.ErrorProvider CalculateForSelectedButtonErrorProvider; + private System.Windows.Forms.CheckBox showHydraulicBoundaryDatabaseFileNameColumnCheckBox; } } \ No newline at end of file Index: Riskeer/DuneErosion/src/Riskeer.DuneErosion.Forms/Views/DuneLocationCalculationsView.cs =================================================================== diff -u -ra8862f6a2c03c22a430f2905efdf3c7ca4a3bf8e -r21f561c73f0a7dcee27f6989b84da9d40868069c --- Riskeer/DuneErosion/src/Riskeer.DuneErosion.Forms/Views/DuneLocationCalculationsView.cs (.../DuneLocationCalculationsView.cs) (revision a8862f6a2c03c22a430f2905efdf3c7ca4a3bf8e) +++ Riskeer/DuneErosion/src/Riskeer.DuneErosion.Forms/Views/DuneLocationCalculationsView.cs (.../DuneLocationCalculationsView.cs) (revision 21f561c73f0a7dcee27f6989b84da9d40868069c) @@ -47,6 +47,8 @@ private readonly RecursiveObserver, DuneLocationCalculation> duneLocationCalculationObserver; private const int calculateColumnIndex = 0; + private const int hydraulicBoundaryDatabaseFileNameColumnIndex = 3; + private bool updatingDataSource; public event EventHandler SelectionChanged; @@ -60,10 +62,10 @@ /// for getting the calculation identifier to use in all messages. /// Thrown when any parameter is null. public DuneLocationCalculationsView(IObservableEnumerable calculations, - DuneErosionFailureMechanism failureMechanism, - IAssessmentSection assessmentSection, - Func getTargetProbabilityFunc, - Func getCalculationIdentifierFunc) + DuneErosionFailureMechanism failureMechanism, + IAssessmentSection assessmentSection, + Func getTargetProbabilityFunc, + Func getCalculationIdentifierFunc) { if (calculations == null) { @@ -115,7 +117,7 @@ InitializeComponent(); LocalizeControls(); InitializeEventHandlers(); - + UpdateDataGridViewDataSource(); } @@ -149,7 +151,9 @@ protected override void OnLoad(EventArgs e) { base.OnLoad(e); + InitializeDataGridView(); + UpdateDataGridViewColumnVisibility(); } protected override void Dispose(bool disposing) @@ -174,6 +178,12 @@ UpdateCalculateForSelectedButton(); } + private void UpdateDataGridViewColumnVisibility() + { + dataGridViewControl.GetColumnFromIndex(hydraulicBoundaryDatabaseFileNameColumnIndex).Visible = + showHydraulicBoundaryDatabaseFileNameColumnCheckBox.Checked; + } + private void InitializeDataGridView() { dataGridViewControl.AddCheckBoxColumn(nameof(DuneLocationCalculationRow.ShouldCalculate), @@ -246,6 +256,7 @@ DeselectAllButton.Text = RiskeerCommonFormsResources.CalculatableView_DeselectAllButton_Text; SelectAllButton.Text = RiskeerCommonFormsResources.CalculatableView_SelectAllButton_Text; ButtonGroupBox.Text = RiskeerCommonFormsResources.CalculatableView_ButtonGroupBox_Text; + showHydraulicBoundaryDatabaseFileNameColumnCheckBox.Text = RiskeerCommonFormsResources.CalculatableView_HideHydraulicBoundaryDatabaseColumnCheckBox_Text; } private void InitializeEventHandlers() @@ -315,6 +326,11 @@ CalculateForSelectedRows(); } + private void ShowHydraulicBoundaryDatabaseFileNameColumnCheckBox_CheckedChanged(object sender, EventArgs e) + { + UpdateDataGridViewColumnVisibility(); + } + #endregion } } \ No newline at end of file Index: Riskeer/DuneErosion/test/Riskeer.DuneErosion.Forms.Test/Views/DuneLocationCalculationsViewTest.cs =================================================================== diff -u -rd2a807400c3b244cb82398baa044298918315967 -r21f561c73f0a7dcee27f6989b84da9d40868069c --- Riskeer/DuneErosion/test/Riskeer.DuneErosion.Forms.Test/Views/DuneLocationCalculationsViewTest.cs (.../DuneLocationCalculationsViewTest.cs) (revision d2a807400c3b244cb82398baa044298918315967) +++ Riskeer/DuneErosion/test/Riskeer.DuneErosion.Forms.Test/Views/DuneLocationCalculationsViewTest.cs (.../DuneLocationCalculationsViewTest.cs) (revision 21f561c73f0a7dcee27f6989b84da9d40868069c) @@ -28,7 +28,6 @@ using System.Windows.Forms; using Core.Common.Base; using Core.Common.Base.Geometry; -using Core.Common.Controls.DataGrid; using Core.Common.Controls.Views; using Core.Common.TestUtil; using Core.Common.Util; @@ -57,6 +56,7 @@ public class DuneLocationCalculationsViewTest { private const int calculateColumnIndex = 0; + private const int hydraulicBoundaryDatabaseFileNameColumnIndex = 3; private const int waterLevelColumnIndex = 6; private const int waveHeightColumnIndex = 7; private const int wavePeriodColumnIndex = 8; @@ -331,6 +331,16 @@ DataGridViewTestHelper.AssertExpectedRowFormattedValues(expectedRow1Values, rows[1]); } + [Test] + public void Constructor_CheckBoxCorrectlyInitialized() + { + // Setup & Call + ShowDuneLocationCalculationsView(); + + // Assert + CheckBox checkBox = GetShowHydraulicBoundaryDatabaseFileNameCheckBox(); + Assert.AreEqual("Toon HRD bestand", checkBox.Text); + Assert.IsFalse(checkBox.Checked); } [Test] @@ -845,7 +855,26 @@ } } + [Test] + public void GivenView_WhenCheckingShowHydraulicBoundaryDatabaseFileNameColumnCheckBox_ThenColumnVisible() + { + // Given + ShowFullyConfiguredDuneLocationCalculationsView(); + DataGridView dataGridView = GetDataGridView(); + + // Precondition + var hydraulicBoundaryDatabaseFileNameColumn = (DataGridViewTextBoxColumn) dataGridView.Columns[hydraulicBoundaryDatabaseFileNameColumnIndex]; + Assert.IsFalse(hydraulicBoundaryDatabaseFileNameColumn.Visible); + + // When + CheckBox checkBox = GetShowHydraulicBoundaryDatabaseFileNameCheckBox(); + checkBox.Checked = true; + + // Then + Assert.IsTrue(hydraulicBoundaryDatabaseFileNameColumn.Visible); + } + private DataGridView GetDataGridView() { return ControlTestHelper.GetDataGridView(testForm, "dataGridView"); @@ -861,12 +890,11 @@ return (Button) view.Controls.Find("CalculateForSelectedButton", true).Single(); } - private DataGridViewControl GetDataGridViewControl() + private CheckBox GetShowHydraulicBoundaryDatabaseFileNameCheckBox() { - return ControlTestHelper.GetDataGridViewControl(testForm, "DataGridViewControl"); + return ControlTestHelper.GetControls(testForm, "showHydraulicBoundaryDatabaseFileNameColumnCheckBox").Single(); } - private DuneLocationCalculationsView ShowFullyConfiguredDuneLocationCalculationsView() { var hydraulicBoundaryLocation = new TestHydraulicBoundaryLocation();