|
|
@ -43,6 +43,10 @@ namespace SharpRefactoring.Gui |
|
|
|
addIEquatable.Content = string.Format(StringParser.Parse("${res:AddIns.SharpRefactoring.OverrideEqualsGetHashCodeMethods.AddInterface}"), |
|
|
|
addIEquatable.Content = string.Format(StringParser.Parse("${res:AddIns.SharpRefactoring.OverrideEqualsGetHashCodeMethods.AddInterface}"), |
|
|
|
"IEquatable<" + selectedClass.Name + ">"); |
|
|
|
"IEquatable<" + selectedClass.Name + ">"); |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
string otherMethod = selectedMethod.Name == "Equals" ? "GetHashCode" : "Equals"; |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
addOtherMethod.Content = StringParser.Parse("${res:AddIns.SharpRefactoring.OverrideEqualsGetHashCodeMethods.AddOtherMethod}", new StringTagPair("otherMethod", otherMethod)); |
|
|
|
|
|
|
|
|
|
|
|
addIEquatable.IsEnabled = !selectedClass.BaseTypes.Any( |
|
|
|
addIEquatable.IsEnabled = !selectedClass.BaseTypes.Any( |
|
|
|
type => { |
|
|
|
type => { |
|
|
|
if (!type.IsGenericReturnType) |
|
|
|
if (!type.IsGenericReturnType) |
|
|
@ -156,9 +160,11 @@ namespace SharpRefactoring.Gui |
|
|
|
|
|
|
|
|
|
|
|
codeForMethodBody = builder.ToString().Trim(); |
|
|
|
codeForMethodBody = builder.ToString().Trim(); |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
if (addOtherMethod.IsChecked == true) { |
|
|
|
if (equalsOverrides.Any()) |
|
|
|
if (equalsOverrides.Any()) |
|
|
|
code.Append(indent + "\n" + string.Join("\n", equalsOverrides.Select(item => generator.GenerateCode(item, indent)))); |
|
|
|
code.Append(indent + "\n" + string.Join("\n", equalsOverrides.Select(item => generator.GenerateCode(item, indent)))); |
|
|
|
code.Append(indent + "\n" + generator.GenerateCode(CreateGetHashCodeOverride(currentClass), indent)); |
|
|
|
code.Append(indent + "\n" + generator.GenerateCode(CreateGetHashCodeOverride(currentClass), indent)); |
|
|
|
|
|
|
|
} |
|
|
|
} else { |
|
|
|
} else { |
|
|
|
StringBuilder builder = new StringBuilder(); |
|
|
|
StringBuilder builder = new StringBuilder(); |
|
|
|
|
|
|
|
|
|
|
@ -168,6 +174,7 @@ namespace SharpRefactoring.Gui |
|
|
|
|
|
|
|
|
|
|
|
codeForMethodBody = builder.ToString().Trim(); |
|
|
|
codeForMethodBody = builder.ToString().Trim(); |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
if (addOtherMethod.IsChecked == true) |
|
|
|
code.Append(indent + "\n" + string.Join("\n", CreateEqualsOverrides(currentClass).Select(item => generator.GenerateCode(item, indent)))); |
|
|
|
code.Append(indent + "\n" + string.Join("\n", CreateEqualsOverrides(currentClass).Select(item => generator.GenerateCode(item, indent)))); |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|