X-Git-Url: http://source.jalview.org/gitweb/?a=blobdiff_plain;f=src%2Fjalview%2Fgui%2FSeqCanvas.java;h=12659a84c643cc99b822cf330a7d0898265a9fdf;hb=67fe33692d163752fd467468b18ace4a9b4eac7d;hp=18e3f08150ae312c5d62b91e06ff53bb02e9b6a6;hpb=dffd455c0bca0fdc06fbe08b7789d2a4d245d8d3;p=jalview.git diff --git a/src/jalview/gui/SeqCanvas.java b/src/jalview/gui/SeqCanvas.java index 18e3f08..12659a8 100755 --- a/src/jalview/gui/SeqCanvas.java +++ b/src/jalview/gui/SeqCanvas.java @@ -153,7 +153,7 @@ public void fastPaint(int horizontal, int vertical) gg.translate(transX, transY); gg.setColor(Color.white); - gg.fillRect(0,0, (er-sr)*av.charWidth, (es-ss)*av.charHeight); + gg.fillRect(0,0, (er-sr+1)*av.charWidth, (es-ss)*av.charHeight); drawPanel(gg, sr, er, ss, es, sr, ss, 0); gg.translate( -transX, -transY); @@ -173,7 +173,7 @@ public void fastPaint(int horizontal, int vertical) * in the adjustment listener in SeqPanel when the scrollbars move. */ - public void paint(Graphics g) + public void paintComponent(Graphics g) { g.setColor(Color.white); g.fillRect(0, 0, getWidth(), getHeight()); @@ -188,7 +188,7 @@ public void fastPaint(int horizontal, int vertical) // this draws the whole of the alignment imgWidth = getWidth(); imgHeight = getHeight(); - if(imgWidth==0 || imgHeight==0) + if(imgWidth<1 || imgHeight<1) return; imgWidth -= imgWidth%av.charWidth; @@ -252,6 +252,8 @@ public void fastPaint(int horizontal, int vertical) int cWidth = (canvasWidth - LABEL_EAST -LABEL_WEST)/av.charWidth; int cHeight = (av.getAlignment().getHeight() + 2)*av.charHeight; + av.endRes = av.startRes + cWidth; + int endx = startRes+cWidth-1; int ypos = 2*av.charHeight; @@ -448,17 +450,21 @@ public void fastPaint(int horizontal, int vertical) for(int r=0; r= y1 && searchSeq < y2) { + SequenceI seq = av.getAlignment().getSequenceAt(searchSeq); + + int searchStart = seq.findIndex( searchResults[r+1] )-1; + int searchEnd = seq.findIndex( searchResults[r+2] )-1; + SequenceRenderer ssr = (SequenceRenderer) sr; if(searchStart x2) searchEnd = x2; - ssr.drawHighlightedText(av.getAlignment().getSequenceAt(searchSeq), + + ssr.drawHighlightedText(seq, searchStart, searchEnd, (searchStart - startx) * av.charWidth,