AlignSeq takes printstream as arg
[jalview.git] / src / jalview / gui / AlignFrame.java
index 1d408db..dcb3f44 100755 (executable)
@@ -61,6 +61,7 @@ public class AlignFrame
   Stack redoList = new Stack();\r
   private int treeCount = 0;\r
 \r
+\r
   /**\r
    * Creates a new AlignFrame object.\r
    *\r
@@ -161,6 +162,16 @@ public class AlignFrame
 \r
   }\r
 \r
+\r
+  /*\r
+   Added so Castor Mapping file can obtain Jalview Version\r
+  */\r
+  public String getVersion()\r
+  {\r
+    return  jalview.bin.Cache.getProperty("VERSION");\r
+  }\r
+\r
+\r
   /**\r
    * DOCUMENT ME!\r
    *\r
@@ -617,7 +628,6 @@ public class AlignFrame
   {\r
     if (viewport.getSelectionGroup() == null)\r
     {\r
-      System.out.println("nothing selected");\r
       return;\r
     }\r
 \r
@@ -687,13 +697,14 @@ public class AlignFrame
       seqs[i].setDBRef(seq.getDBRef());\r
       seqs[i].setSequenceFeatures(seq.getSequenceFeatures());\r
       seqs[i].setDatasetSequence(seq.getDatasetSequence());\r
+\r
     }\r
 \r
-    Desktop.jalviewClipboard = new Object[]{seqs,  viewport.alignment.getDataset()};\r
     FastaFile ff = new FastaFile();\r
     ff.addDBPrefix( viewport.showDBPrefix );\r
     ff.addJVSuffix( viewport.showJVSuffix );\r
     c.setContents(new StringSelection( ff.print(seqs)), this);\r
+    Desktop.jalviewClipboard = new Object[]{seqs,  viewport.alignment.getDataset()};\r
   }\r
 \r
   /**\r
@@ -749,8 +760,9 @@ public class AlignFrame
        sequences = (SequenceI[])Desktop.jalviewClipboard[0];\r
      }\r
      else\r
+     {\r
        sequences = new FormatAdapter().readFile(str, "Paste", format);\r
-\r
+     }\r
 \r
       if (newAlignment)\r
       {\r
@@ -782,8 +794,24 @@ public class AlignFrame
       {\r
         //!newAlignment\r
         for (int i = 0; i < sequences.length; i++)\r
+        {\r
           viewport.alignment.addSequence(sequences[i]);\r
+          if(sequences[i].getDatasetSequence()==null)\r
+          {\r
+             ////////////////////////////\r
+            //Datset needs extension;\r
+            /////////////////////////////\r
+            Sequence ds = new Sequence(sequences[i].getName(),\r
+                                       AlignSeq.extractGaps("-. ", sequences[i].getSequence()),\r
+                                       sequences[i].getStart(),\r
+                                       sequences[i].getEnd());\r
+            sequences[i].setDatasetSequence(ds);\r
+            viewport.alignment.getDataset().addSequence(ds);\r
 \r
+\r
+          }\r
+\r
+        }\r
         viewport.setEndSeq(viewport.alignment.getHeight());\r
         viewport.alignment.getWidth();\r
         viewport.firePropertyChange("alignment", null, viewport.getAlignment().getSequences());\r
@@ -1369,13 +1397,13 @@ public class AlignFrame
   {\r
     viewport.showSequenceFeatures(sequenceFeatures.isSelected());\r
 \r
-   // if (viewport.showSequenceFeatures &&\r
-     //   ! ( (Alignment) viewport.alignment.getDataset()).featuresAdded)\r
+    if (viewport.showSequenceFeatures &&\r
+        ! ( (Alignment) viewport.alignment.getDataset()).featuresAdded)\r
     {\r
-     // System.out.println("new fetcher");\r
-    //  new SequenceFeatureFetcher(viewport.\r
-     //     alignment,\r
-     //     alignPanel);\r
+      System.out.println("new fetcher");\r
+      new SequenceFeatureFetcher(viewport.\r
+         alignment,\r
+          alignPanel);\r
     }\r
 \r
     featureSettings.setEnabled(true);\r
@@ -1855,7 +1883,7 @@ public class AlignFrame
   {\r
     addHistoryItem(new HistoryItem("ID Sort", viewport.alignment,\r
                                    HistoryItem.SORT));\r
-    AlignmentSorter.sortByID(viewport.getAlignment());\r
+    AlignmentSorter.sortByID(viewport.getAlignment(), viewport.showDBPrefix);\r
     alignPanel.repaint();\r
   }\r
 \r
@@ -2355,7 +2383,7 @@ public class AlignFrame
             {\r
               SequenceI[] msa = gatherSequencesForAlignment();\r
               new jalview.ws.MsaWSClient(sh, title, msa,\r
-                  false, true);\r
+                  false, true, viewport.getAlignment().getDataset());\r
 \r
             }\r
 \r
@@ -2372,7 +2400,7 @@ public class AlignFrame
               {\r
                 SequenceI[] msa = gatherSequencesForAlignment();\r
                 new jalview.ws.MsaWSClient(sh, title, msa,\r
-                    true, true);\r
+                    true, true, viewport.getAlignment().getDataset());\r
 \r
               }\r
 \r
@@ -2447,8 +2475,8 @@ public class AlignFrame
     if (value == JalviewFileChooser.APPROVE_OPTION)\r
     {\r
       jalview.io.VamsasDatastore vs = new jalview.io.VamsasDatastore(viewport);\r
-      vs.store(chooser.getSelectedFile().getAbsolutePath()\r
-          );\r
+      //vs.store(chooser.getSelectedFile().getAbsolutePath()   );\r
+      vs.storeJalview( chooser.getSelectedFile().getAbsolutePath(), this);\r
     }\r
   }\r
 \r