X-Git-Url: http://source.jalview.org/gitweb/?a=blobdiff_plain;f=src%2Fjalview%2Fviewmodel%2FViewportRanges.java;h=b6bfcd6658c1cf6859d76af6d5d5ee7d86befb84;hb=801c367379086cc38bf4d3059a8e30ca9f4e78c0;hp=f8decf6b9710efc1f5dca8b01721a05dc444dc76;hpb=74d5ca6390288f6cd6cb445cccc728802806a29a;p=jalview.git diff --git a/src/jalview/viewmodel/ViewportRanges.java b/src/jalview/viewmodel/ViewportRanges.java index f8decf6..b6bfcd6 100644 --- a/src/jalview/viewmodel/ViewportRanges.java +++ b/src/jalview/viewmodel/ViewportRanges.java @@ -23,6 +23,8 @@ package jalview.viewmodel; import jalview.datamodel.AlignmentI; import jalview.datamodel.HiddenColumns; +import java.util.Arrays; + /** * Supplies and updates viewport properties relating to position such as: start * and end residues and sequences; ideally will serve hidden columns/rows too. @@ -72,10 +74,25 @@ public class ViewportRanges extends ViewportProperties this.startRes = 0; this.endRes = alignment.getWidth() - 1; this.startSeq = 0; - this.endSeq = alignment.getHeight() - 1; + this.setEndSeqTest(alignment.getHeight() - 1); this.al = alignment; } + public static String sTest = ""; + + private void setEndSeqTest(int val) + { + String st = Thread.currentThread().toString(); + sTest += "ViewPortRanges.setEndseqTest " + val + " " + + st + "\n"; + if (val == 13) + { + sTest += Arrays.toString(new NullPointerException().getStackTrace()) + .replace(',', '\n') + + "\n"; + } + endSeq = val; + } /** * Get alignment width in cols, including hidden cols */ @@ -286,15 +303,15 @@ public class ViewportRanges extends ViewportProperties int oldendseq = this.endSeq; if (end >= visibleHeight) { - endSeq = Math.max(visibleHeight - 1, 0); + setEndSeqTest(Math.max(visibleHeight - 1, 0)); } else if (end < 0) { - endSeq = 0; + setEndSeqTest(0); } else { - endSeq = end; + setEndSeqTest(end); } return new int[] { oldstartseq, oldendseq }; } @@ -813,4 +830,11 @@ public class ViewportRanges extends ViewportProperties return maxScroll; } + + @Override + public String toString() + { + return "[ViewportRange startRes=" + startRes + " endRes=" + endRes + + " startSeq=" + startSeq + " endSeq=" + endSeq + "]"; + } }