Browse Source

ILineTracker.ChangeComplete

newNRvisualizers
Daniel Grunwald 14 years ago
parent
commit
c3ca1f1754
  1. 5
      src/AddIns/BackendBindings/XamlBinding/XamlBinding/XamlBinding.csproj
  2. 6
      src/AddIns/DisplayBindings/AvalonEdit.AddIn/Src/DefaultChangeWatcher.cs
  3. 7
      src/Libraries/AvalonEdit/ICSharpCode.AvalonEdit/Document/ILineTracker.cs
  4. 9
      src/Libraries/AvalonEdit/ICSharpCode.AvalonEdit/Document/LineManager.cs
  5. 2
      src/Libraries/AvalonEdit/ICSharpCode.AvalonEdit/Document/TextDocument.cs
  6. 9
      src/Libraries/AvalonEdit/ICSharpCode.AvalonEdit/Document/WeakLineTracker.cs
  7. 4
      src/Libraries/AvalonEdit/ICSharpCode.AvalonEdit/Highlighting/DocumentHighlighter.cs
  8. 4
      src/Libraries/AvalonEdit/ICSharpCode.AvalonEdit/Rendering/HeightTree.cs

5
src/AddIns/BackendBindings/XamlBinding/XamlBinding/XamlBinding.csproj

@ -121,11 +121,6 @@ @@ -121,11 +121,6 @@
<Name>ICSharpCode.NRefactory</Name>
<Private>False</Private>
</ProjectReference>
<ProjectReference Include="..\..\..\..\Libraries\NRefactory\Project\NRefactory.csproj">
<Project>{3A9AE6AA-BC07-4A2F-972C-581E3AE2F195}</Project>
<Name>NRefactory</Name>
<Private>False</Private>
</ProjectReference>
<ProjectReference Include="..\..\..\..\Libraries\SharpTreeView\ICSharpCode.TreeView\ICSharpCode.TreeView.csproj">
<Project>{DDE2A481-8271-4EAC-A330-8FA6A38D13D1}</Project>
<Name>ICSharpCode.TreeView</Name>

6
src/AddIns/DisplayBindings/AvalonEdit.AddIn/Src/DefaultChangeWatcher.cs

@ -79,7 +79,7 @@ namespace ICSharpCode.AvalonEdit.AddIn @@ -79,7 +79,7 @@ namespace ICSharpCode.AvalonEdit.AddIn
} else {
// if the file is not under subversion, the document is the opened document
if (baseDocument == null) {
baseDocument = new ReadOnlyDocument(document.CreateSnapshot());
baseDocument = document.CreateDocumentSnapshot();
}
}
}
@ -187,6 +187,10 @@ namespace ICSharpCode.AvalonEdit.AddIn @@ -187,6 +187,10 @@ namespace ICSharpCode.AvalonEdit.AddIn
changeList.InsertRange(0, document.LineCount + 1, new LineChangeInfo(ChangeType.Unsaved, 1, baseDocument.LineCount));
}
void ILineTracker.ChangeComplete(DocumentChangeEventArgs e)
{
}
bool disposed = false;
public void Dispose()

7
src/Libraries/AvalonEdit/ICSharpCode.AvalonEdit/Document/ILineTracker.cs

@ -51,5 +51,12 @@ namespace ICSharpCode.AvalonEdit.Document @@ -51,5 +51,12 @@ namespace ICSharpCode.AvalonEdit.Document
/// throw away their data and rebuild the document.
/// </summary>
void RebuildDocument();
/// <summary>
/// Notifies the line tracker that a document change (a single change, not a change group) has completed.
/// This method gets called after the change has been performed, but before the <see cref="TextDocument.Changed"/> event
/// is raised.
/// </summary>
void ChangeComplete(DocumentChangeEventArgs e);
}
}

9
src/Libraries/AvalonEdit/ICSharpCode.AvalonEdit/Document/LineManager.cs

@ -284,5 +284,14 @@ namespace ICSharpCode.AvalonEdit.Document @@ -284,5 +284,14 @@ namespace ICSharpCode.AvalonEdit.Document
return line;
}
#endregion
#region ChangeComplete
public void ChangeComplete(DocumentChangeEventArgs e)
{
foreach (ILineTracker lt in lineTrackers) {
lt.ChangeComplete(e);
}
}
#endregion
}
}

2
src/Libraries/AvalonEdit/ICSharpCode.AvalonEdit/Document/TextDocument.cs

@ -746,6 +746,8 @@ namespace ICSharpCode.AvalonEdit.Document @@ -746,6 +746,8 @@ namespace ICSharpCode.AvalonEdit.Document
}
}
lineManager.ChangeComplete(args);
// raise delayed events after our data structures are consistent again
delayedEvents.RaiseEvents();

9
src/Libraries/AvalonEdit/ICSharpCode.AvalonEdit/Document/WeakLineTracker.cs

@ -81,5 +81,14 @@ namespace ICSharpCode.AvalonEdit.Document @@ -81,5 +81,14 @@ namespace ICSharpCode.AvalonEdit.Document
else
Deregister();
}
void ILineTracker.ChangeComplete(DocumentChangeEventArgs e)
{
ILineTracker targetTracker = targetObject.Target as ILineTracker;
if (targetTracker != null)
targetTracker.ChangeComplete(e);
else
Deregister();
}
}
}

4
src/Libraries/AvalonEdit/ICSharpCode.AvalonEdit/Highlighting/DocumentHighlighter.cs

@ -105,6 +105,10 @@ namespace ICSharpCode.AvalonEdit.Highlighting @@ -105,6 +105,10 @@ namespace ICSharpCode.AvalonEdit.Highlighting
InvalidateHighlighting();
}
void ILineTracker.ChangeComplete(DocumentChangeEventArgs e)
{
}
ImmutableStack<HighlightingSpan> initialSpanStack = SpanStack.Empty;
/// <summary>

4
src/Libraries/AvalonEdit/ICSharpCode.AvalonEdit/Rendering/HeightTree.cs

@ -84,6 +84,10 @@ namespace ICSharpCode.AvalonEdit.Rendering @@ -84,6 +84,10 @@ namespace ICSharpCode.AvalonEdit.Rendering
#endregion
#region RebuildDocument
void ILineTracker.ChangeComplete(DocumentChangeEventArgs e)
{
}
void ILineTracker.SetLineLength(DocumentLine ls, int newTotalLength)
{
}

Loading…
Cancel
Save