X-Git-Url: http://source.jalview.org/gitweb/?a=blobdiff_plain;f=src%2Fjalview%2Fgui%2FAnnotationExporter.java;h=136a38e37a9e6ee6c16dae0bc5b0d644c869de8f;hb=2447e0f9b158c45152803a91e3e17866bd676d4f;hp=25802e6baaa42d1e765a1371f72943f48119a832;hpb=ad15cff29620f960119f80176f1fd443da9f6763;p=jalview.git diff --git a/src/jalview/gui/AnnotationExporter.java b/src/jalview/gui/AnnotationExporter.java index 25802e6..136a38e 100644 --- a/src/jalview/gui/AnnotationExporter.java +++ b/src/jalview/gui/AnnotationExporter.java @@ -21,6 +21,7 @@ package jalview.gui; import jalview.datamodel.AlignmentAnnotation; +import jalview.datamodel.SequenceI; import jalview.io.AnnotationFile; import jalview.io.FeaturesFile; import jalview.io.JalviewFileChooser; @@ -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,21 @@ public class AnnotationExporter extends JPanel .getString("label.no_features_on_alignment"); if (features) { + FeaturesFile formatter = new FeaturesFile(); + SequenceI[] sequences = ap.av.getAlignment().getDataset() + .getSequencesArray(); + Map featureColours = ap.getFeatureRenderer() + .getDisplayedFeatureCols(); + boolean includeNonPositional = ap.av.isShowNPFeats(); if (GFFFormat.isSelected()) { - text = new FeaturesFile().printGFFFormat(ap.av.getAlignment() - .getDataset().getSequencesArray(), ap.getFeatureRenderer() - .getDisplayedFeatureCols(), true, ap.av.isShowNpFeats());// ap.av.featuresDisplayed//); + text = formatter.printGffFormat(sequences, featureColours, true, + includeNonPositional); } else { - text = new FeaturesFile().printJalviewFormat(ap.av.getAlignment() - .getDataset().getSequencesArray(), ap.getFeatureRenderer() - .getDisplayedFeatureCols(), true, ap.av.isShowNpFeats()); // ap.av.featuresDisplayed); + text = formatter.printJalviewFormat(sequences, featureColours, + true, includeNonPositional); } } else @@ -186,6 +193,7 @@ public class AnnotationExporter extends JPanel } return text; } + public void toTextbox_actionPerformed(ActionEvent e) { CutAndPasteTransfer cap = new CutAndPasteTransfer(); @@ -197,23 +205,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 +242,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 +251,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 +260,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);