after merge
[jalview.git] / src / jalview / io / MSFfile.java
index 2cef0fe..179204e 100755 (executable)
@@ -155,30 +155,11 @@ public class MSFfile extends AlignFile
                     maxLength = head.length();\r
                 }\r
 \r
-                if (head.indexOf("/") > 0)\r
-                {\r
-                    StringTokenizer st = new StringTokenizer(head, "/");\r
-\r
-                    if (st.countTokens() == 2)\r
-                    {\r
-                        head = st.nextToken();\r
-\r
-                        String tmp = st.nextToken();\r
-                        st = new StringTokenizer(tmp, "-");\r
-\r
-                        if (st.countTokens() == 2)\r
-                        {\r
-                            start = Integer.valueOf(st.nextToken()).intValue();\r
-                            end = Integer.valueOf(st.nextToken()).intValue();\r
-                        }\r
-                    }\r
-                }\r
-\r
-\r
                 // Replace ~ with a sensible gap character\r
                 seq = seq.replace('~', '-');\r
 \r
-                Sequence newSeq = new Sequence(head, seq, start, end);\r
+                Sequence newSeq = parseId(head);\r
+                newSeq.setSequence(seq);\r
 \r
                 seqs.addElement(newSeq);\r
             }\r
@@ -197,7 +178,7 @@ public class MSFfile extends AlignFile
      *\r
      * @return DOCUMENT ME!\r
      */\r
-    public static int checkSum(String seq)\r
+    public int checkSum(String seq)\r
     {\r
         int check = 0;\r
         String sequence = seq.toUpperCase();\r
@@ -223,17 +204,6 @@ public class MSFfile extends AlignFile
         return check % 10000;\r
     }\r
 \r
-    /**\r
-     * DOCUMENT ME!\r
-     *\r
-     * @param s DOCUMENT ME!\r
-     *\r
-     * @return DOCUMENT ME!\r
-     */\r
-    public static String print(SequenceI[] s)\r
-    {\r
-        return print(s, false);\r
-    }\r
 \r
     /**\r
      * DOCUMENT ME!\r
@@ -243,9 +213,11 @@ public class MSFfile extends AlignFile
      *\r
      * @return DOCUMENT ME!\r
      */\r
-    public static String print(SequenceI[] seqs, boolean is_NA)\r
+    public String print(SequenceI[] seqs)\r
     {\r
 \r
+      boolean is_NA = jalview.util.Comparison.isNucleotide(seqs);\r
+\r
       SequenceI [] s = new SequenceI[seqs.length];\r
 \r
         StringBuffer out = new StringBuffer("!!" + (is_NA ? "NA" : "AA") +\r
@@ -265,7 +237,7 @@ public class MSFfile extends AlignFile
           {\r
             if (sb.charAt(ii) == '.')\r
             {\r
-              sb.replace(ii, ii + 1, "~");\r
+              sb.setCharAt(ii, '~');\r
             }\r
             else\r
               break;\r
@@ -275,7 +247,7 @@ public class MSFfile extends AlignFile
           {\r
             if (sb.charAt(ii) == '.')\r
             {\r
-              sb.replace(ii, ii + 1, "~");\r
+              sb.setCharAt(ii,'~');\r
             }\r
             else\r
               break;\r
@@ -317,9 +289,7 @@ public class MSFfile extends AlignFile
         while ((i < s.length) && (s[i] != null))\r
         {\r
 \r
-            nameBlock[i] = new String("  Name: " + s[i].getName()\r
-                                      + "/" + s[i].getStart() + "-" + s[i].getEnd()\r
-                                      +" ");\r
+            nameBlock[i] = new String("  Name: " + printId(s[i])+" ");\r
 \r
             idBlock[i] = new String("Len: " +\r
                     maxLenpad.form(s[i].getSequence().length()) + "  Check: " +\r
@@ -373,11 +343,9 @@ public class MSFfile extends AlignFile
 \r
             while ((j < s.length) && (s[j] != null))\r
             {\r
-                String name = s[j].getName();\r
-              //  out.append(new Format("%-" + maxid + "s").form(name)+ " ");\r
+                String name = printId( s[j] );\r
 \r
-                out.append(new Format("%-" + maxid + "s").form(name\r
-                   + "/" + s[j].getStart() + "-" + s[j].getEnd()) + " ");\r
+                out.append(new Format("%-" + maxid + "s").form(name+" "));\r
 \r
 \r
                 for (int k = 0; k < 5; k++)\r