Index: dam clients/DamUI/trunk/src/Dam/Forms/DamPlugin.cs =================================================================== diff -u -r292 -r318 --- dam clients/DamUI/trunk/src/Dam/Forms/DamPlugin.cs (.../DamPlugin.cs) (revision 292) +++ dam clients/DamUI/trunk/src/Dam/Forms/DamPlugin.cs (.../DamPlugin.cs) (revision 318) @@ -22,6 +22,7 @@ using Deltares.Dam.Data.License; using Deltares.Dam.Data.Sensors; using Deltares.Dam.Data.UISupport; +using Deltares.DamEngine.Interface; using Deltares.Geotechnics.Mechanisms; using Deltares.Geotechnics.Soils; using Deltares.Geotechnics.SurfaceLines; @@ -68,37 +69,50 @@ private LocationResult lastLocationResult = null; private LocationJob currentLocationJob = null; - private readonly GridViewControl locationsControl = new GridViewControl { Name = "Locations", ShowToolbar = true, HideUnusedColumns = true }; - private readonly GridViewControl calculationsControl = new GridViewControl { Name = "Calculations", ShowToolbar = true, HideUnusedColumns = true }; + private readonly GridViewControl locationsControl = new GridViewControl + { + Name = "Locations", ShowToolbar = true, HideUnusedColumns = true + }; + + private readonly GridViewControl calculationsControl = new GridViewControl + { + Name = "Calculations", ShowToolbar = true, HideUnusedColumns = true + }; + private readonly LocationChart locationChart = new LocationChart(); + private readonly GridViewControl designCalculationsControl = new GridViewControl { Name = "DesignCalculations", ShowToolbar = true, HideUnusedColumns = true, SendSelectionChanged = true }; + private readonly GridViewControl sensorControl = new GridViewControl { Name = "Sensors", ShowToolbar = true, HideUnusedColumns = true, SendSelectionChanged = false // Set to true when custom property editor is ready }; + private readonly GridViewControl sensorGroupControl = new GridViewControl { - Name = "SensorGroups", + Name = "SensorGroups", ShowToolbar = true, HideUnusedColumns = true, SendSelectionChanged = false // Set to true when custom property editor is ready }; + private readonly GridViewControl sensorProfileControl = new GridViewControl { - Name = "SensorLocations", + Name = "SensorLocations", ShowToolbar = true, HideUnusedColumns = true, SendSelectionChanged = true // To add/activate custom property editor when ready, see DataEventPublisher_OnSelectionChanged }; + private readonly DesignCalculationPropertyControl designCalculationPropertyControl = new DesignCalculationPropertyControl(); private readonly ScenarioCalculationPropertyControl assessmentCalculationPropertyControl = new ScenarioCalculationPropertyControl(); private readonly LocationPropertyControl locationPropertyControl = new LocationPropertyControl(); @@ -177,14 +191,14 @@ try { var icon = new Icon(typeof(DamPlugin).Assembly.GetManifestResourceStream( - "Deltares.Dam.Forms.Resources.DAM_icon.ico")); + "Deltares.Dam.Forms.Resources.DAM_icon.ico")); this.mainForm.UseIcon(icon); } catch (Exception) { // Kill exception for Windows XP if load fails // Todo: Solve exception; see MWDAM-391 - } + } } private void RegisterUsedControls() @@ -240,7 +254,7 @@ this.progressDelegate = waterBoardPropertyControl.DoProgress; dpc.BuildPropertyControlTabForTypes(waterBoardPropertyControl, - typeof(WaterBoard), typeof(WaterBoardJob), typeof(DamProjectData)); + typeof(WaterBoard), typeof(WaterBoardJob), typeof(DamProjectData)); dpc.BuildPropertyControlTabForTypes(new DikePropertyControl(), typeof(Dike), typeof(DikeJob)); var schematizationFactorPropertyControl = new SchematizationFactorPropertyControl(); dpc.BuildPropertyControlTabForTypes(schematizationFactorPropertyControl, typeof(DamProjectData)); @@ -265,23 +279,26 @@ BindSupport.Bind(this.projectPanel, locationsControl, p => p.Locations); this.mainForm.DynamicTableControl.RegisterTable(typeof(RWScenarioProfileResult), - calculationsControl, "Assessment calculations"); + calculationsControl, "Assessment calculations"); BindSupport.Bind(this.projectPanel, calculationsControl, p => p.Calculations); BindSupport.Bind(this.projectPanel, calculationsControl.Parent, p => p.Calculations); - var schematizationFactorsControl = new GridViewControl { Name = "SchematizationFactors", ShowToolbar = true, HideUnusedColumns = true }; + var schematizationFactorsControl = new GridViewControl + { + Name = "SchematizationFactors", ShowToolbar = true, HideUnusedColumns = true + }; this.mainForm.DynamicTableControl.RegisterTable(typeof(RWScenarioProfileResult), - schematizationFactorsControl, "SchematizationFactors"); + schematizationFactorsControl, "SchematizationFactors"); BindSupport.Bind(this.projectPanel, - schematizationFactorsControl, p => p.SchematizationFactors); + schematizationFactorsControl, p => p.SchematizationFactors); BindSupport.Bind(this.projectPanel, - schematizationFactorsControl.Parent, p => p.SchematizationFactors); + schematizationFactorsControl.Parent, p => p.SchematizationFactors); this.mainForm.DynamicTableControl.RegisterTable(typeof(CsvExportData), designCalculationsControl, "Design calculations"); BindSupport.Bind(this.projectPanel, - designCalculationsControl, p => p.DesignCalculations); + designCalculationsControl, p => p.DesignCalculations); BindSupport.Bind(this.projectPanel, - designCalculationsControl.Parent, p => p.DesignCalculations); + designCalculationsControl.Parent, p => p.DesignCalculations); this.mainForm.DynamicTableControl.RegisterTable(typeof(Sensor), sensorControl, "Sensor Configuration"); BindSupport.Bind(this.sensorControl, sensorControl, p => p.Sensors); @@ -292,7 +309,7 @@ BindSupport.Bind(this.sensorGroupControl, sensorGroupControl, p => p.SensorGroups); BindSupport.Bind(this.sensorPanel, sensorGroupControl, p => p.SensorData, BindingType.Assign); BindSupport.Bind(this.sensorPanel, sensorGroupControl.Parent, p => p.SensorData, BindingType.Visibility); - + this.mainForm.DynamicTableControl.RegisterTable(typeof(SensorLocation), sensorProfileControl, "Sensor Location Data"); BindSupport.Bind(this.sensorProfileControl, sensorProfileControl, p => p.SensorLocations); BindSupport.Bind(this.sensorPanel, sensorProfileControl, p => p.SensorData, BindingType.Assign); @@ -302,29 +319,29 @@ private void ConfigureSoilUserFilters() { Soil.AllowedUserColumnFilters = new[] - { - UserColumnFilters.DGeoStability, - UserColumnFilters.DGeoStabilityCPhiModel, - UserColumnFilters.DGeoStabilitySuCalculated, - UserColumnFilters.DGeoStabilitySuMeasured, - UserColumnFilters.DGeoStabilitySuGradient, - UserColumnFilters.ShearStrengthParameters, - UserColumnFilters.ShearStrengthInput, - UserColumnFilters.ShearStrengthModel, - UserColumnFilters.Piping, - UserColumnFilters.UnitWeightFilter - }; + { + UserColumnFilters.DGeoStability, + UserColumnFilters.DGeoStabilityCPhiModel, + UserColumnFilters.DGeoStabilitySuCalculated, + UserColumnFilters.DGeoStabilitySuMeasured, + UserColumnFilters.DGeoStabilitySuGradient, + UserColumnFilters.ShearStrengthParameters, + UserColumnFilters.ShearStrengthInput, + UserColumnFilters.ShearStrengthModel, + UserColumnFilters.Piping, + UserColumnFilters.UnitWeightFilter + }; } private void ConfigureSoilMechanisms() { Soil.Mechanisms = new[] - { - Mechanism.DAM, - Mechanism.Piping, - Mechanism.PipingUpliftGradient, - Mechanism.Stability - }; + { + Mechanism.DAM, + Mechanism.Piping, + Mechanism.PipingUpliftGradient, + Mechanism.Stability + }; } private void ConfigureChart() @@ -368,7 +385,10 @@ ConfigurationManager.Wti = true; } } - Context.CurrentContext = new DamContext { Wti = StabilityKernelTypeSpecificationsVisible }; + Context.CurrentContext = new DamContext + { + Wti = StabilityKernelTypeSpecificationsVisible + }; // get data lastAssesmentResult = null; @@ -430,30 +450,71 @@ /// private void ConfigureMenu() { - var clearResultsMenuItem = new BarButtonItem { Caption = "Clear Results", Name = "ClearResultsMenuItem" }; + var clearResultsMenuItem = new BarButtonItem + { + Caption = "Clear Results", Name = "ClearResultsMenuItem" + }; - var trackBar = new RepositoryItemTrackBar { Maximum = 100, TickFrequency = 10 }; + var trackBar = new RepositoryItemTrackBar + { + Maximum = 100, TickFrequency = 10 + }; - var sliderBarItem = new BarEditItem { Width = 300, Edit = trackBar }; + var sliderBarItem = new BarEditItem + { + Width = 300, Edit = trackBar + }; var dateEdit = new RepositoryItemDateEdit(); - var dateBarItem = new BarEditItem { Edit = dateEdit, Width = 80 }; + var dateBarItem = new BarEditItem + { + Edit = dateEdit, Width = 80 + }; var timeEdit = new RepositoryItemTimeEdit(); - var timeBarItem = new BarEditItem { Edit = timeEdit, Width = 100 }; + var timeBarItem = new BarEditItem + { + Edit = timeEdit, Width = 100 + }; - var projectTypeComboBox = new RepositoryItemComboBox { TextEditStyle = TextEditStyles.DisableTextEditor }; - var projectTypeBarItem = new BarEditItem { Width = 100, Edit = projectTypeComboBox, PaintStyle = BarItemPaintStyle.Caption }; + var projectTypeComboBox = new RepositoryItemComboBox + { + TextEditStyle = TextEditStyles.DisableTextEditor + }; + var projectTypeBarItem = new BarEditItem + { + Width = 100, Edit = projectTypeComboBox, PaintStyle = BarItemPaintStyle.Caption + }; - var scenarioComboBox = new RepositoryItemComboBox { TextEditStyle = TextEditStyles.DisableTextEditor, DropDownRows = 16 }; - var scenarioBarItem = new BarEditItem { Width = 100, Edit = scenarioComboBox, PaintStyle = BarItemPaintStyle.Caption }; + var scenarioComboBox = new RepositoryItemComboBox + { + TextEditStyle = TextEditStyles.DisableTextEditor, DropDownRows = 16 + }; + var scenarioBarItem = new BarEditItem + { + Width = 100, Edit = scenarioComboBox, PaintStyle = BarItemPaintStyle.Caption + }; - var designAnalysisComboBox = new RepositoryItemComboBox { TextEditStyle = TextEditStyles.DisableTextEditor }; - var designAnalysisBarItem = new BarEditItem { Width = 100, Edit = designAnalysisComboBox, PaintStyle = BarItemPaintStyle.Caption}; + var designAnalysisComboBox = new RepositoryItemComboBox + { + TextEditStyle = TextEditStyles.DisableTextEditor + }; + var designAnalysisBarItem = new BarEditItem + { + Width = 100, Edit = designAnalysisComboBox, PaintStyle = BarItemPaintStyle.Caption + }; this.mainForm.CalculationMenu.AddItem(clearResultsMenuItem); this.mainForm.CalculationMenu.AddItem(showCalculationOptionsItem); - this.mainForm.ToolBar.AddItems(new BarItem[] { projectTypeBarItem, sliderBarItem, dateBarItem, timeBarItem, scenarioBarItem, designAnalysisBarItem }); + this.mainForm.ToolBar.AddItems(new BarItem[] + { + projectTypeBarItem, + sliderBarItem, + dateBarItem, + timeBarItem, + scenarioBarItem, + designAnalysisBarItem + }); var scenarioExportItem = new BarButtonItem() { @@ -584,7 +645,19 @@ //mainForm.Invoke(new PublisherDelegate(DataEventPublisher.DataListModified), this.damProject.DamProjectData.DesignCalculations, null); //this.damProject.SaveXMLProject(this.damProject.ProjectFileName, this.damProject); - LocalizedMessageBox.ShowError(this, "NoCalculationPossible"); + //LocalizedMessageBox.ShowError(this, "NoCalculationPossible"); + LogManager.Clear(); + try + { + var damEnginInterface = new Interface(""); + damEnginInterface.Validate(); + damEnginInterface.Run(); + } + catch (Exception e) + { + LogManager.Add(new LogMessage(LogMessageType.FatalError, typeof(Interface), string.Format("{0}", e.Message))); + } + SetProperControlsAfterCalculation(); }