From 4314d2bf8634ddc573c4f0a4266a6771cb5eb696 Mon Sep 17 00:00:00 2001 From: wuestholz Date: Tue, 11 Jun 2013 10:24:31 -0700 Subject: DafnyExtension: Did some refactoring. --- Source/DafnyExtension/ProgressMargin.cs | 20 ++++++++++++++++---- 1 file changed, 16 insertions(+), 4 deletions(-) (limited to 'Source/DafnyExtension/ProgressMargin.cs') diff --git a/Source/DafnyExtension/ProgressMargin.cs b/Source/DafnyExtension/ProgressMargin.cs index 7a6669ae..b964776d 100644 --- a/Source/DafnyExtension/ProgressMargin.cs +++ b/Source/DafnyExtension/ProgressMargin.cs @@ -21,6 +21,7 @@ using Dafny = Microsoft.Dafny; namespace DafnyLanguage { + #region UI stuff internal class ProgressMarginGlyphFactory : IGlyphFactory { @@ -60,6 +61,9 @@ namespace DafnyLanguage } #endregion + + #region Provider + [Export(typeof(ITaggerProvider))] [ContentType("dafny")] [TagType(typeof(ProgressGlyphTag))] @@ -82,6 +86,11 @@ namespace DafnyLanguage } } + #endregion + + + #region Tagger + public class ProgressTagger : ITagger, IDisposable { ErrorListProvider _errorProvider; @@ -170,7 +179,7 @@ namespace DafnyLanguage get { return verificationDisabled; } } - public static IDictionary ProgressTaggers = new ConcurrentDictionary(); + public static readonly IDictionary ProgressTaggers = new ConcurrentDictionary(); public readonly ConcurrentDictionary RequestIdToSnapshot = new ConcurrentDictionary(); @@ -287,7 +296,7 @@ namespace DafnyLanguage // Run the verifier var newErrors = new List(); try { - bool success = DafnyDriver.Verify(program, snapshot, requestId, errorInfo => + bool success = DafnyDriver.Verify(program, requestId, errorInfo => { ITextSnapshot s = snapshot; if (errorInfo.RequestId != null) @@ -309,7 +318,7 @@ namespace DafnyLanguage errorListHolder.VerificationErrors = newErrors; errorListHolder.UpdateErrorList(snapshot); - + lock (this) { bufferChangesPreVerificationStart.Clear(); verificationInProgress = false; @@ -336,7 +345,7 @@ namespace DafnyLanguage } // If the requested snapshot isn't the same as the one our words are on, translate our spans to the expected snapshot - var chs = new NormalizedSnapshotSpanCollection(pre.Select(span => span.TranslateTo(targetSnapshot, SpanTrackingMode.EdgeExclusive))); + var chs = new NormalizedSnapshotSpanCollection(pre.Select(span => span.TranslateTo(targetSnapshot, SpanTrackingMode.EdgeExclusive))); foreach (SnapshotSpan span in NormalizedSnapshotSpanCollection.Overlap(spans, chs)) { yield return new TagSpan(span, new ProgressGlyphTag(0)); } @@ -346,4 +355,7 @@ namespace DafnyLanguage } } } + + #endregion + } -- cgit v1.2.3