X-Git-Url: http://source.jalview.org/gitweb/?a=blobdiff_plain;f=src%2Fjalview%2Fgui%2FSeqCanvas.java;h=f72acae6c36cdf037c7a0836c0ab2010a49b28fb;hb=8213e48c6973494f7a6e22e1a97290520a461d1b;hp=2c8a5df3848d40fff3deb6bd8e8fdc3f85abd77c;hpb=67f498031a89aa97926db7be629e94ef031c10e4;p=jalview.git diff --git a/src/jalview/gui/SeqCanvas.java b/src/jalview/gui/SeqCanvas.java index 2c8a5df..f72acae 100755 --- a/src/jalview/gui/SeqCanvas.java +++ b/src/jalview/gui/SeqCanvas.java @@ -852,35 +852,23 @@ public class SeqCanvas extends JComponent implements ViewportListenerI else { int screenY = 0; - final int screenYMax = endRes - startRes; - int blockStart = startRes; - int blockEnd = endRes; // equals blockStart + screenYMax - screenY; + int blockStart; + int blockEnd; HiddenColumns hidden = av.getAlignment().getHiddenColumns(); VisibleBlocksVisBoundsIterator regions = (VisibleBlocksVisBoundsIterator) hidden - .getVisibleBlocksIterator(startRes, endRes, true);// hidden.iterator(); + .getVisibleBlocksIterator(startRes, endRes, true); + while (regions.hasNext()) { int[] region = regions.next(); blockEnd = region[1]; blockStart = region[0]; -/* int hideStart = region[0]; - int hideEnd = region[1]; - if (hideStart <= blockStart) - { - blockStart += (hideEnd - hideStart) + 1; // convert startRes to an - // absolute value - blockEnd += (hideEnd - hideStart) + 1; - continue; - } -*/ /* * draw up to just before the next hidden region, or the end of * the visible region, whichever comes first */ -// blockEnd = Math.min(hideStart - 1, -// blockEnd); g1.translate(screenY * charWidth, 0); draw(g1, blockStart, blockEnd, startSeq, endSeq, yOffset); @@ -890,8 +878,7 @@ public class SeqCanvas extends JComponent implements ViewportListenerI * triangle on top) if we reached it */ if (av.getShowHiddenMarkers() - && (regions.hasNext() || regions.endsAtHidden()))// blockEnd == - // hideStart - 1) + && (regions.hasNext() || regions.endsAtHidden())) { g1.setColor(Color.blue); @@ -902,25 +889,7 @@ public class SeqCanvas extends JComponent implements ViewportListenerI g1.translate(-screenY * charWidth, 0); screenY += blockEnd - blockStart + 1; - /* blockStart = hideEnd + 1; - blockEnd = blockStart + screenYMax - screenY; - - if (screenY > screenYMax) - { - // already rendered last block - return; - }*/ } - - /* if (screenY <= screenYMax) - { - // remaining visible region to render - blockEnd = blockStart + screenYMax - screenY; - g1.translate(screenY * charWidth, 0); - draw(g1, blockStart, blockEnd, startSeq, endSeq, yOffset); - - g1.translate(-screenY * charWidth, 0); - }*/ } } @@ -1131,24 +1100,17 @@ public class SeqCanvas extends JComponent implements ViewportListenerI { // package into blocks of visible columns int screenY = 0; - int blockStart = startRes; - int blockEnd = endRes; + int blockStart; + int blockEnd; HiddenColumns hidden = av.getAlignment().getHiddenColumns(); - Iterator regions = hidden.iterator(); + VisibleBlocksVisBoundsIterator regions = (VisibleBlocksVisBoundsIterator) hidden + .getVisibleBlocksIterator(startRes, endRes, true); while (regions.hasNext()) { int[] region = regions.next(); - int hideStart = region[0]; - int hideEnd = region[1]; - - if (hideStart <= blockStart) - { - blockStart += (hideEnd - hideStart) + 1; - continue; - } - - blockEnd = hideStart - 1; + blockEnd = region[1]; + blockStart = region[0]; g.translate(screenY * charWidth, 0); drawPartialGroupOutline(g, group, @@ -1156,24 +1118,6 @@ public class SeqCanvas extends JComponent implements ViewportListenerI g.translate(-screenY * charWidth, 0); screenY += blockEnd - blockStart + 1; - blockStart = hideEnd + 1; - - if (screenY > (endRes - startRes)) - { - // already rendered last block - break; - } - } - - if (screenY <= (endRes - startRes)) - { - // remaining visible region to render - blockEnd = blockStart + (endRes - startRes) - screenY; - g.translate(screenY * charWidth, 0); - drawPartialGroupOutline(g, group, - blockStart, blockEnd, startSeq, endSeq, offset); - - g.translate(-screenY * charWidth, 0); } } }