using System.Collections.Generic;
namespace SourceGit.Models {
///
/// Diff文本文件变化
///
public class TextChanges {
public enum LineMode {
None,
Normal,
Indicator,
Added,
Deleted,
}
public class HighlightRange {
public int Start { get; set; }
public int Count { get; set; }
public HighlightRange(int p, int n) { Start = p; Count = n; }
}
public class Line {
public LineMode Mode { get; set; } = LineMode.None;
public string Content { get; set; } = "";
public string OldLine { get; set; } = "";
public string NewLine { get; set; } = "";
public List Highlights { get; set; } = new List();
public bool IsContent {
get {
return Mode == LineMode.Added
|| Mode == LineMode.Deleted
|| Mode == LineMode.Normal;
}
}
public bool IsDifference {
get {
return Mode == LineMode.Added
|| Mode == LineMode.Deleted
|| Mode == LineMode.None;
}
}
public Line() { }
public Line(LineMode mode, string content, string oldLine, string newLine) {
Mode = mode;
Content = content;
OldLine = oldLine;
NewLine = newLine;
}
}
public bool IsBinary = false;
public List Lines = new List();
}
}