Check if colos are null
[jalview.git] / src / jalview / gui / SeqCanvas.java
index 1a8ae3d..b2e9d3e 100755 (executable)
@@ -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,12 +188,13 @@ 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
-        return;\r
 \r
       imgWidth -= imgWidth%av.charWidth;\r
       imgHeight-= imgHeight%av.charHeight;\r
 \r
+      if(imgWidth<1 || imgHeight<1)\r
+        return;\r
+\r
       img = new BufferedImage(imgWidth,imgHeight,BufferedImage.TYPE_INT_RGB);\r
       gg  = (Graphics2D)img.getGraphics();\r
       gg.setFont(av.getFont());\r
@@ -450,17 +451,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