diff --git a/Common/DropdownOptions.cs b/Common/DropdownOptions.cs index 71e7551..eff1d06 100644 --- a/Common/DropdownOptions.cs +++ b/Common/DropdownOptions.cs @@ -26,7 +26,7 @@ namespace CadParamPluging.Common DeliveryStatuses = new List { "毛料态", "车加工" }, ProcessMethods = new List { "轧制", "自由锻" }, StructuralFeatures = new List { "环形", "方体" }, - SpecialConditions = new List { "无", "中心冲孔", "非中心冲孔", "有圆头" } + SpecialConditions = new List { "无", "中心冲孔", "非中心冲孔", "有圆头", "圆轴" } }; } diff --git a/Common/DropdownOptionsStore.cs b/Common/DropdownOptionsStore.cs index 6f3b99e..88b7f1c 100644 --- a/Common/DropdownOptionsStore.cs +++ b/Common/DropdownOptionsStore.cs @@ -38,6 +38,7 @@ namespace CadParamPluging.Common obj.Normalize(); EnsureNonEmptyByFallbackToDefault(obj); + EnsureBuiltInOptions(obj); return obj; } } @@ -55,7 +56,15 @@ namespace CadParamPluging.Common } options.Normalize(); - ValidateNonEmpty(options); + var optionsToSave = options.Clone(); + + // 移除内置的选项,不要保存到文件 + if (optionsToSave.SpecialConditions != null && optionsToSave.SpecialConditions.Contains("圆轴")) + { + optionsToSave.SpecialConditions.Remove("圆轴"); + } + + ValidateNonEmpty(optionsToSave); var path = GetFilePath(); var dir = Path.GetDirectoryName(path); @@ -68,7 +77,7 @@ namespace CadParamPluging.Common var serializer = new XmlSerializer(typeof(DropdownOptions)); using (var stream = File.Create(tempPath)) { - serializer.Serialize(stream, options); + serializer.Serialize(stream, optionsToSave); } if (File.Exists(path)) @@ -126,5 +135,13 @@ namespace CadParamPluging.Common options.SpecialConditions = defaults.SpecialConditions; } } + + private static void EnsureBuiltInOptions(DropdownOptions options) + { + if (options?.SpecialConditions != null && !options.SpecialConditions.Contains("圆轴")) + { + options.SpecialConditions.Add("圆轴"); + } + } } }