startup file added
[jalview.git] / src / jalview / gui / SeqCanvas.java
index 18e3f08..12659a8 100755 (executable)
@@ -153,7 +153,7 @@ public void fastPaint(int horizontal, int vertical)
     gg.translate(transX, transY);\r
 \r
     gg.setColor(Color.white);\r
-    gg.fillRect(0,0, (er-sr)*av.charWidth, (es-ss)*av.charHeight);\r
+    gg.fillRect(0,0, (er-sr+1)*av.charWidth, (es-ss)*av.charHeight);\r
     drawPanel(gg, sr, er, ss, es, sr, ss, 0);\r
     gg.translate( -transX, -transY);\r
 \r
@@ -173,7 +173,7 @@ public void fastPaint(int horizontal, int vertical)
  * in the adjustment listener in SeqPanel when the scrollbars move.\r
  */\r
 \r
-  public void paint(Graphics g)\r
+  public void paintComponent(Graphics g)\r
   {\r
     g.setColor(Color.white);\r
     g.fillRect(0, 0, getWidth(), getHeight());\r
@@ -188,7 +188,7 @@ public void fastPaint(int horizontal, int vertical)
     // this draws the whole of the alignment\r
       imgWidth  = getWidth();\r
       imgHeight = getHeight();\r
-      if(imgWidth==0 || imgHeight==0)\r
+      if(imgWidth<1 || imgHeight<1)\r
         return;\r
 \r
       imgWidth -= imgWidth%av.charWidth;\r
@@ -252,6 +252,8 @@ public void fastPaint(int horizontal, int vertical)
       int cWidth  =   (canvasWidth - LABEL_EAST -LABEL_WEST)/av.charWidth;\r
       int cHeight =  (av.getAlignment().getHeight() + 2)*av.charHeight;\r
 \r
+      av.endRes = av.startRes + cWidth;\r
+\r
       int  endx   = startRes+cWidth-1;\r
       int  ypos  = 2*av.charHeight;\r
 \r
@@ -448,17 +450,21 @@ public void fastPaint(int horizontal, int vertical)
       for(int r=0; r<searchResults.length; r+=3)\r
       {\r
         int searchSeq = searchResults[r];\r
-        int searchStart = searchResults[r+1];\r
-        int searchEnd = searchResults[r+2];\r
 \r
         if (searchSeq >= y1 && searchSeq < y2)\r
         {\r
+          SequenceI seq = av.getAlignment().getSequenceAt(searchSeq);\r
+\r
+          int searchStart = seq.findIndex( searchResults[r+1] )-1;\r
+          int searchEnd =  seq.findIndex(  searchResults[r+2] )-1;\r
+\r
           SequenceRenderer ssr = (SequenceRenderer) sr;\r
           if(searchStart<x1)\r
             searchStart = x1;\r
           if(searchEnd > x2)\r
             searchEnd = x2;\r
-          ssr.drawHighlightedText(av.getAlignment().getSequenceAt(searchSeq),\r
+\r
+          ssr.drawHighlightedText(seq,\r
                                   searchStart,\r
                                   searchEnd,\r
                                   (searchStart - startx) * av.charWidth,\r