- * adjust for sequence start coordinate
- */
- firstPos += start - 1;
- lastPos += start - 1;
-
- return new Range(firstPos, lastPos);
- }
-
- /**
- * Returns the range of sequence positions included in the given alignment
- * position range. If no positions are included (the range is entirely gaps),
- * then returns null. The cursor parameter may provide a starting position in
- * the neighbourhood of the search (which may be left of, right of, or
- * overlapping the search region).
- *
- * @param fromCol
- * start column of region (0..)
- * @param toCol
- * end column of region (0..)
- * @param curs
- * @return
- */
- protected Range findPositions(int fromCol, int toCol, SequenceCursor curs)
- {
- if (curs.sequence != this || curs.token != changeCount)
- {
- /*
- * wrong or invalidated cursor, compute de novo
- */
- return findPositions(fromCol, toCol);
- }
-
- /*
- * keep this simple...first step from cursor to fromCol...