Index: src/Deltares.DSoilModel.Forms/DSoilModelPlugin.cs =================================================================== diff -u -r778 -r821 --- src/Deltares.DSoilModel.Forms/DSoilModelPlugin.cs (.../DSoilModelPlugin.cs) (revision 778) +++ src/Deltares.DSoilModel.Forms/DSoilModelPlugin.cs (.../DSoilModelPlugin.cs) (revision 821) @@ -494,14 +494,32 @@ materialsTable.AllowUserColumnFilterEdit = enable; } - private void SetSoilUserFilterForMaterialTableToFilterAll() + private void SetSoilUserFilterToNearestMatchForMechanism(Mechanism currentMechanism) { var dSoilModelContext = Context.CurrentContext as DSoilModelContext; if (dSoilModelContext != null) { - // Set SoilUserFilter 'All' - materialsTable.SelectColumnFilterAll(); - dSoilModelContext.SoilUserFilter = null; + // Set corresponding soiluserfilter + switch (currentMechanism) + { + case Mechanism.Piping : + { + // In fact you should set the selectedFilter for the materialsTable here too but there is no way to do that now. + // (as you can never get a proper value (UserColumnFilterDisplayItem) for that as this is not public. + dSoilModelContext.SoilUserFilter = UserColumnFilters.PipingWti; + break; + } + case Mechanism.Stability: + { + dSoilModelContext.SoilUserFilter = UserColumnFilters.MacrostabilityWti; + break; + } + case Mechanism.FlowSlide: + { + dSoilModelContext.SoilUserFilter = UserColumnFilters.FlowSlideWti; + break; + } + } } } @@ -570,8 +588,8 @@ { if (project.CurrentFailureMechanism != Mechanism.None) { - SetSoilUserFilterForMaterialTableToFilterAll(); - EnableSoilUserFilterForMaterialTable(false); + SetSoilUserFilterToNearestMatchForMechanism(project.CurrentFailureMechanism); + EnableSoilUserFilterForMaterialTable(true); } else {