JAL-2015 JAL-1956 rollout of FeatureColourI in place of
[jalview.git] / src / jalview / gui / AnnotationExporter.java
index df6f9eb..383dd1b 100644 (file)
@@ -1,6 +1,6 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
- * Copyright (C) 2014 The Jalview Authors
+ * Jalview - A Sequence Alignment Editor and Viewer ($$Version-Rel$$)
+ * Copyright (C) $$Year-Rel$$ The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
@@ -20,6 +20,7 @@
  */
 package jalview.gui;
 
+import jalview.api.FeatureColourI;
 import jalview.datamodel.AlignmentAnnotation;
 import jalview.io.AnnotationFile;
 import jalview.io.FeaturesFile;
@@ -32,6 +33,7 @@ import java.awt.Color;
 import java.awt.FlowLayout;
 import java.awt.event.ActionEvent;
 import java.awt.event.ActionListener;
+import java.util.Map;
 
 import javax.swing.BorderFactory;
 import javax.swing.ButtonGroup;
@@ -120,8 +122,9 @@ public class AnnotationExporter extends JPanel
             jalview.bin.Cache.getProperty("LAST_DIRECTORY"));
 
     chooser.setFileView(new JalviewFileView());
-    chooser.setDialogTitle(features ? MessageManager.getString("label.save_features_to_file")
-            : MessageManager.getString("label.save_annotation_to_file"));
+    chooser.setDialogTitle(features ? MessageManager
+            .getString("label.save_features_to_file") : MessageManager
+            .getString("label.save_annotation_to_file"));
     chooser.setToolTipText(MessageManager.getString("action.save"));
 
     int value = chooser.showSaveDialog(this);
@@ -152,17 +155,17 @@ public class AnnotationExporter extends JPanel
             .getString("label.no_features_on_alignment");
     if (features)
     {
+      Map<String, FeatureColourI> displayedFeatureColours = ap
+              .getFeatureRenderer().getDisplayedFeatureCols();
       if (GFFFormat.isSelected())
       {
         text = new FeaturesFile().printGFFFormat(ap.av.getAlignment()
-                .getDataset().getSequencesArray(), ap.getFeatureRenderer()
-                .getDisplayedFeatureCols(), true, ap.av.isShowNpFeats());// ap.av.featuresDisplayed//);
+                .getDataset().getSequencesArray(), displayedFeatureColours, true, ap.av.isShowNPFeats());// ap.av.featuresDisplayed//);
       }
       else
       {
         text = new FeaturesFile().printJalviewFormat(ap.av.getAlignment()
-                .getDataset().getSequencesArray(), ap.getFeatureRenderer()
-                .getDisplayedFeatureCols(), true, ap.av.isShowNpFeats()); // ap.av.featuresDisplayed);
+                .getDataset().getSequencesArray(), displayedFeatureColours, true, ap.av.isShowNPFeats()); // ap.av.featuresDisplayed);
       }
     }
     else
@@ -186,6 +189,7 @@ public class AnnotationExporter extends JPanel
     }
     return text;
   }
+
   public void toTextbox_actionPerformed(ActionEvent e)
   {
     CutAndPasteTransfer cap = new CutAndPasteTransfer();
@@ -197,23 +201,26 @@ public class AnnotationExporter extends JPanel
       Desktop.addInternalFrame(
               cap,
               (features ? MessageManager.formatMessage(
-                      "label.features_for_params", new String[]
-                      { ap.alignFrame.getTitle() }) : MessageManager
-                      .formatMessage("label.annotations_for_params",
-                              new String[]
-                              { ap.alignFrame.getTitle() })), 600, 500);
+                      "label.features_for_params",
+                      new String[] { ap.alignFrame.getTitle() })
+                      : MessageManager.formatMessage(
+                              "label.annotations_for_params",
+                              new String[] { ap.alignFrame.getTitle() })),
+              600, 500);
     } catch (OutOfMemoryError oom)
     {
       new OOMWarning((features ? MessageManager.formatMessage(
-              "label.generating_features_for_params", new String[]
-              { ap.alignFrame.getTitle() }) : MessageManager.formatMessage(
-              "label.generating_annotations_for_params", new String[]
-              { ap.alignFrame.getTitle() })), oom);
+              "label.generating_features_for_params",
+              new String[] { ap.alignFrame.getTitle() })
+              : MessageManager.formatMessage(
+                      "label.generating_annotations_for_params",
+                      new String[] { ap.alignFrame.getTitle() })), oom);
       cap.dispose();
     }
 
     close_actionPerformed(null);
   }
+
   public void close_actionPerformed(ActionEvent e)
   {
     try
@@ -231,6 +238,7 @@ public class AnnotationExporter extends JPanel
     toFile.setText(MessageManager.getString("label.to_file"));
     toFile.addActionListener(new ActionListener()
     {
+      @Override
       public void actionPerformed(ActionEvent e)
       {
         toFile_actionPerformed(e);
@@ -239,6 +247,7 @@ public class AnnotationExporter extends JPanel
     toTextbox.setText(MessageManager.getString("label.to_textbox"));
     toTextbox.addActionListener(new ActionListener()
     {
+      @Override
       public void actionPerformed(ActionEvent e)
       {
         toTextbox_actionPerformed(e);
@@ -247,6 +256,7 @@ public class AnnotationExporter extends JPanel
     close.setText(MessageManager.getString("action.close"));
     close.addActionListener(new ActionListener()
     {
+      @Override
       public void actionPerformed(ActionEvent e)
       {
         close_actionPerformed(e);