mirror of
https://fastgit.cc/github.com/sourcegit-scm/sourcegit
synced 2026-04-23 02:12:25 +08:00
code_style: refactor datas used by text diff result
Signed-off-by: leo <longshuang@msn.cn>
This commit is contained in:
@@ -252,10 +252,10 @@ namespace SourceGit.Commands
|
||||
foreach (var chunk in chunks)
|
||||
{
|
||||
if (chunk.DeletedCount > 0)
|
||||
left.Highlights.Add(new Models.TextInlineRange(chunk.DeletedStart, chunk.DeletedCount));
|
||||
left.Highlights.Add(new Models.TextRange(chunk.DeletedStart, chunk.DeletedCount));
|
||||
|
||||
if (chunk.AddedCount > 0)
|
||||
right.Highlights.Add(new Models.TextInlineRange(chunk.AddedStart, chunk.AddedCount));
|
||||
right.Highlights.Add(new Models.TextRange(chunk.AddedStart, chunk.AddedCount));
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -14,7 +14,7 @@ namespace SourceGit.Models
|
||||
Deleted,
|
||||
}
|
||||
|
||||
public class TextInlineRange(int p, int n)
|
||||
public class TextRange(int p, int n)
|
||||
{
|
||||
public int Start { get; set; } = p;
|
||||
public int End { get; set; } = p + n - 1;
|
||||
@@ -26,7 +26,7 @@ namespace SourceGit.Models
|
||||
public string Content { get; set; } = "";
|
||||
public int OldLineNumber { get; set; } = 0;
|
||||
public int NewLineNumber { get; set; } = 0;
|
||||
public List<TextInlineRange> Highlights { get; set; } = new List<TextInlineRange>();
|
||||
public List<TextRange> Highlights { get; set; } = new List<TextRange>();
|
||||
public bool NoNewLineEndOfFile { get; set; } = false;
|
||||
|
||||
public string OldLine => OldLineNumber == 0 ? string.Empty : OldLineNumber.ToString();
|
||||
@@ -49,11 +49,6 @@ namespace SourceGit.Models
|
||||
public bool HasChanges { get; set; } = false;
|
||||
public int IgnoredAdds { get; set; } = 0;
|
||||
public int IgnoredDeletes { get; set; } = 0;
|
||||
|
||||
public bool IsInRange(int idx)
|
||||
{
|
||||
return idx >= StartLine - 1 && idx < EndLine;
|
||||
}
|
||||
}
|
||||
|
||||
public partial class TextDiff
|
||||
@@ -129,7 +124,11 @@ namespace SourceGit.Models
|
||||
var line = Lines[i];
|
||||
if (line.Type != TextDiffLineType.Added)
|
||||
continue;
|
||||
writer.WriteLine($"{(selection.IsInRange(i) ? "+" : " ")}{line.Content}");
|
||||
|
||||
if (i >= selection.StartLine - 1 && i < selection.EndLine)
|
||||
writer.WriteLine($"+{line.Content}");
|
||||
else
|
||||
writer.WriteLine($" {line.Content}");
|
||||
}
|
||||
}
|
||||
else
|
||||
|
||||
Reference in New Issue
Block a user