internal static IEnumerable <Patch> CompareSideBySide(SideBySideArgs args) { var lineDiff = CountStringLines(args.NewText) - CountStringLines(args.OldText); var patches = new List <Patch>(); if (args.OldType == args.NewType) { patches.Add(new Patch(args.NewType, args.Name, ChangeType.WholeFile, string.Format(VBASyncResources.CDWholeFile, lineDiff.ToString("+#;-#;—")), chunks: new[] { new Chunk { OldStartLine = 1, NewStartLine = 1, OldText = args.OldText, NewText = args.NewText } }, sideBySideNewText: args.NewText)); } else { patches.Add(new Patch(args.NewType, args.Name, ChangeType.ChangeFileType, string.Format(VBASyncResources.CDChangeFileType, GetModuleTypeName(args.OldType), GetModuleTypeName(args.NewType), lineDiff.ToString("+#;-#;—")), chunks: new[] { new Chunk { OldStartLine = 1, NewStartLine = 1, OldText = args.OldText, NewText = args.NewText } }, sideBySideNewText: args.NewText)); } return(patches); }
internal static IEnumerable <Patch> CompareSideBySide(SideBySideArgs args) { var lineDiff = CountStringLines(args.NewText) - CountStringLines(args.OldText); var patches = new List <Patch>(); if (args.OldType == args.NewType) { patches.Add(new Patch(args.NewType, args.Name, ChangeType.WholeFile, $"File changed ({lineDiff.ToString("+#;-#;—")})", chunks: new[] { new Chunk { OldStartLine = 1, NewStartLine = 1, OldText = args.OldText, NewText = args.NewText } })); } else { patches.Add(new Patch(args.NewType, args.Name, ChangeType.ChangeFileType, $"{GetEnumDescription(args.OldType)} → {GetEnumDescription(args.NewType)} and file changed ({lineDiff.ToString("+#;-#;—")})", chunks: new[] { new Chunk { OldStartLine = 1, NewStartLine = 1, OldText = args.OldText, NewText = args.NewText } })); } return(patches); }