IdMask must be Max seq end, not seq width
authoramwaterhouse <Andrew Waterhouse>
Wed, 15 Nov 2006 15:46:50 +0000 (15:46 +0000)
committeramwaterhouse <Andrew Waterhouse>
Wed, 15 Nov 2006 15:46:50 +0000 (15:46 +0000)
src/jalview/appletgui/SeqCanvas.java
src/jalview/gui/SeqCanvas.java

index 4f32678..13a0ec8 100755 (executable)
@@ -355,13 +355,22 @@ public class SeqCanvas
    */\r
   String getMask()\r
   {\r
-    String mask = "00";\r
-    for (int i = av.alignment.getWidth(); i > 0; i /= 10)\r
+    String mask = "0";\r
+    int maxWidth = 0;\r
+    int tmp;\r
+    for (int i = 0; i < av.alignment.getHeight(); i++)\r
+    {\r
+      tmp = av.alignment.getSequenceAt(i).getEnd();\r
+      if (tmp > maxWidth)\r
+        maxWidth = tmp;\r
+    }\r
+\r
+    for (int i = maxWidth; i > 0; i /= 10)\r
     {\r
       mask += "0";\r
     }\r
     return mask;\r
-    }\r
+  }\r
 \r
   public void drawWrappedPanel(Graphics g, int canvasWidth, int canvasHeight,\r
                                int startRes)\r
index aa98e76..1e66928 100755 (executable)
@@ -417,8 +417,17 @@ public class SeqCanvas extends JComponent
      */\r
     String getMask()\r
     {\r
-      String mask = "00";\r
-      for (int i = av.alignment.getWidth(); i > 0; i /= 10)\r
+      String mask = "0";\r
+      int maxWidth = 0;\r
+      int tmp;\r
+      for(int i=0; i<av.alignment.getHeight(); i++)\r
+      {\r
+        tmp = av.alignment.getSequenceAt(i).getEnd();\r
+        if(tmp>maxWidth)\r
+          maxWidth = tmp;\r
+      }\r
+\r
+      for (int i = maxWidth; i > 0; i /= 10)\r
       {\r
         mask += "0";\r
       }\r