validCharWidth moved to viewport
[jalview.git] / src / jalview / gui / SequenceRenderer.java
index ab6c1ab..02ea4b5 100755 (executable)
@@ -129,7 +129,8 @@ public class SequenceRenderer
 \r
         drawBoxes(seq, start, end, y1);\r
 \r
-        drawText(seq, start, end, y1);\r
+        if (av.validCharWidth)\r
+          drawText(seq, start, end, y1);\r
     }\r
 \r
     /**\r
@@ -224,7 +225,13 @@ public class SequenceRenderer
 \r
         if(monospacedFont && av.showText && allGroups.length==0 && !av.getColourText())\r
         {\r
+          if(av.renderGaps)\r
           graphics.drawString(seq.getSequence(start, end + 1), 0, y1);\r
+         else\r
+         {\r
+           char gap = av.getGapCharacter();\r
+           graphics.drawString( seq.getSequence(start, end+1).replace(gap, ' '), 0, y1);\r
+         }\r
         }\r
         else\r
         {\r
@@ -334,17 +341,20 @@ public class SequenceRenderer
         char s = '~';\r
 \r
         // Need to find the sequence position here.\r
-        for (int i = start; i <= end; i++)\r
+        if(av.validCharWidth)\r
         {\r
+          for (int i = start; i <= end; i++)\r
+          {\r
             if (i < seq.getLength())\r
             {\r
-                s = seq.getSequence().charAt(i);\r
+              s = seq.getSequence().charAt(i);\r
             }\r
 \r
             charOffset = (av.charWidth - fm.charWidth(s)) / 2;\r
             graphics.drawString(String.valueOf(s),\r
-                charOffset + x1 + (av.charWidth * (i - start)),\r
-                (y1 + av.charHeight) - pady);\r
+                                charOffset + x1 + (av.charWidth * (i - start)),\r
+                                (y1 + av.charHeight) - pady);\r
+          }\r
         }\r
     }\r
 \r
@@ -352,19 +362,20 @@ public class SequenceRenderer
     {\r
       int pady = av.charHeight / 5;\r
       int charOffset = 0;\r
-      graphics.setColor(Color.lightGray);\r
+      graphics.setColor(Color.black);\r
       graphics.fillRect(x1, y1, av.charWidth, av.charHeight);\r
-      graphics.setColor(Color.white);\r
-\r
-      graphics.setColor(Color.white);\r
 \r
-      char s = seq.getCharAt(res);\r
+      if(av.validCharWidth)\r
+      {\r
+        graphics.setColor(Color.white);\r
 \r
-      charOffset = (av.charWidth - fm.charWidth(s)) / 2;\r
-      graphics.drawString(String.valueOf(s),\r
-                charOffset + x1,\r
-                (y1 + av.charHeight) - pady);\r
+        char s = seq.getCharAt(res);\r
 \r
+        charOffset = (av.charWidth - fm.charWidth(s)) / 2;\r
+        graphics.drawString(String.valueOf(s),\r
+                            charOffset + x1,\r
+                            (y1 + av.charHeight) - pady);\r
+      }\r
 \r
     }\r
 }\r