Save output use whole alignment
authoramwaterhouse <Andrew Waterhouse>
Wed, 19 Jul 2006 15:20:10 +0000 (15:20 +0000)
committeramwaterhouse <Andrew Waterhouse>
Wed, 19 Jul 2006 15:20:10 +0000 (15:20 +0000)
src/jalview/gui/AlignFrame.java

index 0edc578..d6143bf 100755 (executable)
@@ -352,15 +352,16 @@ public class AlignFrame
 \r
       if (viewport.hasHiddenColumns)\r
       {\r
-        System.out.println("PROMPT USER HERE");\r
-        omitHidden = viewport.getSelectionAsString();\r
+     //  System.out.println("PROMPT USER HERE");\r
+     //   omitHidden = viewport.getSelectionAsString();\r
       }\r
 \r
       String output = new FormatAdapter().formatSequences(\r
           format,\r
-          viewport.getSelectionAsNewSequence(),\r
-          omitHidden) ;\r
-\r
+          viewport.alignment.getSequencesArray(),\r
+          null);\r
+          //viewport.getSelectionAsNewSequence(),\r
+          //omitHidden) ;\r
 \r
 \r
       if (output == null)\r
@@ -394,14 +395,17 @@ public class AlignFrame
   protected void outputText_actionPerformed(ActionEvent e)\r
   {\r
     CutAndPasteTransfer cap = new CutAndPasteTransfer();\r
+    Desktop.addInternalFrame(cap,\r
+                             "Alignment output - " + e.getActionCommand(), 600,\r
+                             500);\r
 \r
 \r
     String [] omitHidden = null;\r
 \r
     if(viewport.hasHiddenColumns)\r
     {\r
-      System.out.println("PROMPT USER HERE");\r
-      omitHidden = viewport.getSelectionAsString();\r
+   //   System.out.println("PROMPT USER HERE");\r
+   //   omitHidden = viewport.getSelectionAsString();\r
     }\r
 \r
     cap.setText(new FormatAdapter().formatSequences(\r
@@ -670,13 +674,21 @@ public class AlignFrame
     }\r
 \r
     SequenceI [] seqs = viewport.getSelectionAsNewSequence();\r
+    String[] omitHidden = null;\r
+\r
+    if (viewport.hasHiddenColumns)\r
+    {\r
+      omitHidden = viewport.getSelectionAsString();\r
+    }\r
 \r
-    Clipboard c = Toolkit.getDefaultToolkit().getSystemClipboard();\r
+    String output = new FormatAdapter().formatSequences(\r
+        "Fasta",\r
+        seqs,\r
+        omitHidden);\r
 \r
-    FastaFile ff = new FastaFile();\r
-    ff.addJVSuffix( viewport.showJVSuffix );\r
 \r
-    c.setContents(new StringSelection(ff.print(seqs)), Desktop.instance);\r
+    Toolkit.getDefaultToolkit().getSystemClipboard()\r
+        .setContents(new StringSelection(output), Desktop.instance);\r
 \r
     Vector hiddenColumns = null;\r
     if(viewport.hasHiddenColumns && viewport.getSelectionGroup()!=null)\r
@@ -692,6 +704,7 @@ public class AlignFrame
                           region[1]-hiddenOffset});\r
       }\r
     }\r
+\r
     Desktop.jalviewClipboard = new Object[]{ seqs,\r
         viewport.alignment.getDataset(),\r
         hiddenColumns};\r
@@ -2555,7 +2568,10 @@ public class AlignFrame
 \r
 public void showTranslation_actionPerformed(ActionEvent e)\r
 {\r
-  int s, sSize = viewport.alignment.getHeight();\r
+  SequenceI [] selection = viewport.getSelectionAsNewSequence();\r
+  String [] seqstring = viewport.getSelectionAsString();\r
+\r
+  int s, sSize = selection.length;\r
   SequenceI [] newSeq = new SequenceI[sSize];\r
 \r
   int res, resSize;\r
@@ -2564,7 +2580,7 @@ public void showTranslation_actionPerformed(ActionEvent e)
   for(s=0; s<sSize; s++)\r
   {\r
     protein = new StringBuffer();\r
-    seq = AlignSeq.extractGaps("-. ", viewport.alignment.getSequenceAt(s).getSequence());\r
+    seq = AlignSeq.extractGaps("-. ", seqstring[s]);\r
     resSize = seq.length();\r
     resSize -= resSize%3;\r
 \r
@@ -2580,7 +2596,8 @@ public void showTranslation_actionPerformed(ActionEvent e)
       else\r
         protein.append( aa );\r
     }\r
-    newSeq[s] = new Sequence(viewport.alignment.getSequenceAt(s).getName(), protein.toString());\r
+    newSeq[s] = new Sequence(selection[s].getName(),\r
+                             protein.toString());\r
   }\r
 \r
 \r