You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
64 lines
1.5 KiB
64 lines
1.5 KiB
// Copyright (c) AlphaSierraPapa for the SharpDevelop Team (for details please see \doc\copyright.txt) |
|
// This code is distributed under MIT license (for details please see \doc\license.txt) |
|
|
|
using System; |
|
|
|
namespace ICSharpCode.Editor |
|
{ |
|
/// <summary> |
|
/// Describes a change of the document text. |
|
/// This class is thread-safe. |
|
/// </summary> |
|
[Serializable] |
|
public class TextChangeEventArgs : EventArgs |
|
{ |
|
readonly int offset; |
|
readonly string removedText; |
|
readonly string insertedText; |
|
|
|
/// <summary> |
|
/// The offset at which the change occurs. |
|
/// </summary> |
|
public int Offset { |
|
get { return offset; } |
|
} |
|
|
|
/// <summary> |
|
/// The text that was inserted. |
|
/// </summary> |
|
public string RemovedText { |
|
get { return removedText; } |
|
} |
|
|
|
/// <summary> |
|
/// The number of characters removed. |
|
/// </summary> |
|
public int RemovalLength { |
|
get { return removedText.Length; } |
|
} |
|
|
|
/// <summary> |
|
/// The text that was inserted. |
|
/// </summary> |
|
public string InsertedText { |
|
get { return insertedText; } |
|
} |
|
|
|
/// <summary> |
|
/// The number of characters inserted. |
|
/// </summary> |
|
public int InsertionLength { |
|
get { return insertedText.Length; } |
|
} |
|
|
|
/// <summary> |
|
/// Creates a new TextChangeEventArgs object. |
|
/// </summary> |
|
public TextChangeEventArgs(int offset, string removedText, string insertedText) |
|
{ |
|
this.offset = offset; |
|
this.removedText = removedText ?? string.Empty; |
|
this.insertedText = insertedText ?? string.Empty; |
|
} |
|
} |
|
}
|
|
|