From 84801988f908e51d9843c3e0ee8f2cd05c0a2d97 Mon Sep 17 00:00:00 2001
From: davidcim <david@cimaware.com>
Date: Thu, 3 Oct 2019 12:38:25 +0200
Subject: [PATCH] Fix building error CS0104: 'Range' is an ambiguous reference

---
 src/buffers/ByteBuffer.cs        |  2 +-
 src/gui/DataBookFinder.cs        |  4 ++--
 src/gui/areas/AreaGroup.cs       | 20 ++++++++++----------
 src/tools/find/FindOperations.cs |  6 +++---
 src/tools/find/IFindStrategy.cs  | 10 +++++-----
 src/tools/find/IFinder.cs        |  4 ++--
 6 files changed, 23 insertions(+), 23 deletions(-)

diff --git a/src/buffers/ByteBuffer.cs b/src/buffers/ByteBuffer.cs
index b9d9a24..72c1b42 100644
--- a/src/buffers/ByteBuffer.cs
+++ b/src/buffers/ByteBuffer.cs
@@ -671,7 +671,7 @@ public byte[] RangeToByteArray(IRange range)
 	/// Returns as a SegmentCollection the data contained in 
 	/// the specified range in the buffer.  
 	///</summary>
-	public SegmentCollection RangeToSegmentCollection(Range range)
+	public SegmentCollection RangeToSegmentCollection(Util.Range range)
 	{
 		if (range.Size == 0)
 			return null;
diff --git a/src/gui/DataBookFinder.cs b/src/gui/DataBookFinder.cs
index 50b5034..3248d3a 100644
--- a/src/gui/DataBookFinder.cs
+++ b/src/gui/DataBookFinder.cs
@@ -234,7 +234,7 @@ void FindAsyncCallback(IAsyncResult ar)
 	{
 		GenericFindOperation state = (GenericFindOperation)ar.AsyncState;
 		ThreadedAsyncOperation.OperationResult result = state.Result;
-		Range match = state.Match;
+		Util.Range match = state.Match;
 
 		DataView dv = null;
 
@@ -381,7 +381,7 @@ void ReplaceAllAsyncCallback(IAsyncResult ar)
 	{
 		ReplaceAllOperation state = (ReplaceAllOperation)ar.AsyncState;
 		ThreadedAsyncOperation.OperationResult result = state.Result;
-		Range firstMatch = state.FirstMatch;
+		Util.Range firstMatch = state.FirstMatch;
 
 		DataView dv = null;
 
diff --git a/src/gui/areas/AreaGroup.cs b/src/gui/areas/AreaGroup.cs
index 58ee147..4a27190 100644
--- a/src/gui/areas/AreaGroup.cs
+++ b/src/gui/areas/AreaGroup.cs
@@ -198,7 +198,7 @@ enum Changes { Offset = 1, Cursor = 2, Highlights = 4}
 		set { drawingArea = value; }
 	}
 	
-	public Range Selection {
+	public Util.Range Selection {
 		get { return selection; }
 		set { 
 			if (selection == value)
@@ -251,7 +251,7 @@ public AreaGroup()
 	/// Get the range of bytes and the number of rows that 
 	/// are displayed in the current view.
 	/// </summary>
-	public Range GetViewRange(out int nrows)
+	public Util.Range GetViewRange(out int nrows)
 	{
 		// find out number of rows, bytes in current view
 		
@@ -271,9 +271,9 @@ public Range GetViewRange(out int nrows)
 		
 		// make sure we get an empty clipping Range when bleft==0
 		if (bleft > 0)
-			return new Range(offset, offset + bleft - 1);
+			return new Util.Range(offset, offset + bleft - 1);
 		else
-			return new Range();
+			return new Util.Range();
 	}
 	
 	/// <summary>
@@ -381,7 +381,7 @@ private void ClearHighlights()
 	private void SetupBufferCache()
 	{
 		int nrows;
-		Range view = GetViewRange(out nrows);
+		Util.Range view = GetViewRange(out nrows);
 		if (view.Size != bufferCache.Length)
 			bufferCache = new byte[view.Size];
 		
@@ -444,7 +444,7 @@ private void RenderExtra()
 		}
 	}
 	/// <summary>
-	/// Renders a <see cref="Range"/> of data using a specified <see cref="Drawer.HighlightType"/>
+	/// Renders a <see cref="Util.Range"/> of data using a specified <see cref="Drawer.HighlightType"/>
 	/// </summary>
 	private void RenderHighlight(AtomicHighlight h)
 	{
@@ -474,12 +474,12 @@ private AtomicHighlight[] SplitAtomicPrioritized(AtomicHighlight q, Highlight r)
 		
 		if (q.Type > r.Type) {
 			ha = new AtomicHighlight[3]{new AtomicHighlight(r), new AtomicHighlight(q), new AtomicHighlight(r)};
-			Range.SplitAtomic(ha, r, q);
+			Util.Range.SplitAtomic(ha, r, q);
 			ha[1].AddContainer(r);
 		}
 		else {
 			ha = new AtomicHighlight[3]{new AtomicHighlight(q), new AtomicHighlight(r), new AtomicHighlight(q)};
-			Range.SplitAtomic(ha, q, r);
+			Util.Range.SplitAtomic(ha, q, r);
 			foreach (Highlight h in q.Containers)
 				ha[1].AddContainer(h);
 		}
@@ -533,7 +533,7 @@ private IntervalTree<AtomicHighlight> BreakDownHighlights(Highlight s, IList<Hig
 	private IntervalTree<AtomicHighlight> GetAtomicHighlights()
 	{
 		int nrows;
-		Range clip = GetViewRange(out nrows);
+		Util.Range clip = GetViewRange(out nrows);
 		Highlight view = new Highlight(clip, Drawer.HighlightType.Normal);
 		
 		// get all highlights in current view
@@ -618,7 +618,7 @@ private void RenderCursor(IntervalTree<AtomicHighlight> atomicHighlights)
 		// if we don't find an overlap this means that either
 		// 1. the prev cursor position is not visible on the screen
 		// 2. the prev cursor position is at or beyond the end of the file
-		IList<AtomicHighlight> overlaps = atomicHighlights.SearchOverlap(new Range(prevCursorOffset, prevCursorOffset));
+		IList<AtomicHighlight> overlaps = atomicHighlights.SearchOverlap(new Util.Range(prevCursorOffset, prevCursorOffset));
 		
 		AtomicHighlight h = null;
 		
diff --git a/src/tools/find/FindOperations.cs b/src/tools/find/FindOperations.cs
index 0351efd..e5984f9 100644
--- a/src/tools/find/FindOperations.cs
+++ b/src/tools/find/FindOperations.cs
@@ -146,8 +146,8 @@ public class ReplaceAllOperation: GenericFindOperation
 
 	protected override void DoOperation()
 	{
-		Range m;
-		match = new Range();
+		Util.Range m;
+		match = new Util.Range();
 		firstMatch = null;
 
 		numReplaced = 0;
@@ -159,7 +159,7 @@ protected override void DoOperation()
 
 		while ((m = strategy.FindNext()) != null) {
 			if (firstMatch == null) {
-				firstMatch = new Range(m);
+				firstMatch = new Util.Range(m);
 			}
 
 			match.Start = m.Start;
diff --git a/src/tools/find/IFindStrategy.cs b/src/tools/find/IFindStrategy.cs
index bdf7a87..bc2b21b 100644
--- a/src/tools/find/IFindStrategy.cs
+++ b/src/tools/find/IFindStrategy.cs
@@ -31,13 +31,13 @@ public interface IFindStrategy
 			ByteBuffer Buffer {	get; set; }
 				long Position { get; set; }
 
-						Range FindNext();
-	Range FindPrevious();
+						Util.Range FindNext();
+	Util.Range FindPrevious();
 
-	Range FindNext(long limit);
-	Range FindPrevious(long limit);
+	Util.Range FindNext(long limit);
+	Util.Range FindPrevious(long limit);
 
 	bool Cancelled { get; set; }
 		}
 
-} // end namespace
\ No newline at end of file
+} // end namespace
diff --git a/src/tools/find/IFinder.cs b/src/tools/find/IFinder.cs
index 594de22..a29a8fd 100644
--- a/src/tools/find/IFinder.cs
+++ b/src/tools/find/IFinder.cs
@@ -30,7 +30,7 @@ namespace Bless.Tools.Find {
 public interface IFinder
 {
 	IFindStrategy Strategy { get; set; }
-			Range LastFound { get; set; }
+			Util.Range LastFound { get; set; }
 
 
 					event FirstFindHandler FirstFind;
@@ -41,4 +41,4 @@ public interface IFinder
 	IAsyncResult ReplaceAll(byte[] ba, AsyncCallback ac);
 }
 
-} // end namespace
\ No newline at end of file
+} // end namespace
