X-Git-Url: http://source.jalview.org/gitweb/?a=blobdiff_plain;f=src%2Fjalview%2Fgui%2FAnnotationExporter.java;h=e43c06b54bb1134f71e356220ada8f5526232280;hb=0155cd99a3b96570ad67dbc992c731ba2ce74bb9;hp=a199c95d1b7cb94a3fd6c7d4d613f5da4ec66d2c;hpb=b2f9a8d7bce642ff4011bc6d49e02bb0569fbb11;p=jalview.git diff --git a/src/jalview/gui/AnnotationExporter.java b/src/jalview/gui/AnnotationExporter.java index a199c95..e43c06b 100644 --- a/src/jalview/gui/AnnotationExporter.java +++ b/src/jalview/gui/AnnotationExporter.java @@ -1,33 +1,50 @@ /* - * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1) + * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2) * Copyright (C) 2014 The Jalview Authors * * This file is part of Jalview. * * Jalview is free software: you can redistribute it and/or * modify it under the terms of the GNU General Public License - * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version. + * as published by the Free Software Foundation, either version 3 + * of the License, or (at your option) any later version. * * Jalview is distributed in the hope that it will be useful, but * WITHOUT ANY WARRANTY; without even the implied warranty * of MERCHANTABILITY or FITNESS FOR A PARTICULAR * PURPOSE. See the GNU General Public License for more details. * - * You should have received a copy of the GNU General Public License along with Jalview. If not, see . + * You should have received a copy of the GNU General Public License + * along with Jalview. If not, see . * The Jalview Authors are detailed in the 'AUTHORS' file. */ package jalview.gui; -import java.util.*; -import java.util.List; +import jalview.datamodel.AlignmentAnnotation; +import jalview.datamodel.SequenceGroup; +import jalview.io.AnnotationFile; +import jalview.io.FeaturesFile; +import jalview.io.JalviewFileChooser; +import jalview.io.JalviewFileView; +import jalview.util.MessageManager; -import java.awt.*; -import java.awt.event.*; -import javax.swing.*; +import java.awt.BorderLayout; +import java.awt.Color; +import java.awt.FlowLayout; +import java.awt.event.ActionEvent; +import java.awt.event.ActionListener; +import java.util.Hashtable; +import java.util.List; -import jalview.datamodel.*; -import jalview.io.*; -import jalview.util.MessageManager; +import javax.swing.BorderFactory; +import javax.swing.ButtonGroup; +import javax.swing.JButton; +import javax.swing.JInternalFrame; +import javax.swing.JLabel; +import javax.swing.JLayeredPane; +import javax.swing.JPanel; +import javax.swing.JRadioButton; +import javax.swing.SwingConstants; /** * @@ -73,7 +90,7 @@ public class AnnotationExporter extends JPanel this.ap = ap; features = true; CSVFormat.setVisible(false); - frame.setTitle("Export Features"); + frame.setTitle(MessageManager.getString("label.export_features")); } public void exportAnnotations(AlignmentPanel ap, @@ -87,7 +104,7 @@ public class AnnotationExporter extends JPanel this.annotations = annotations; this.sequenceGroups = list; this.alignmentProperties = alProperties; - frame.setTitle("Export Annotations"); + frame.setTitle(MessageManager.getString("label.export_annotations")); } public void toFile_actionPerformed(ActionEvent e) @@ -96,28 +113,30 @@ public class AnnotationExporter extends JPanel jalview.bin.Cache.getProperty("LAST_DIRECTORY")); chooser.setFileView(new JalviewFileView()); - chooser.setDialogTitle(features ? "Save Features to File" - : "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); if (value == JalviewFileChooser.APPROVE_OPTION) { - String text = "No features found on alignment"; + String text = MessageManager.getString("label.no_features_on_alignment"); if (features) { if (GFFFormat.isSelected()) { text = new FeaturesFile().printGFFFormat(ap.av.getAlignment() - .getDataset().getSequencesArray(), - getDisplayedFeatureCols(), true, ap.av.isShowNpFeats());// ap.av.featuresDisplayed//); + .getDataset().getSequencesArray(), ap + .getFeatureRenderer().getDisplayedFeatureCols(), true, + ap.av.isShowNpFeats());// ap.av.featuresDisplayed//); } else { text = new FeaturesFile().printJalviewFormat(ap.av.getAlignment() - .getDataset().getSequencesArray(), - getDisplayedFeatureCols(), true, ap.av.isShowNpFeats()); // ap.av.featuresDisplayed); + .getDataset().getSequencesArray(), ap + .getFeatureRenderer().getDisplayedFeatureCols(), true, + ap.av.isShowNpFeats()); // ap.av.featuresDisplayed); } } else @@ -151,20 +170,20 @@ public class AnnotationExporter extends JPanel public void toTextbox_actionPerformed(ActionEvent e) { - String text = "No features found on alignment"; + String text = MessageManager.getString("label.no_features_on_alignment"); if (features) { if (GFFFormat.isSelected()) { text = new FeaturesFile().printGFFFormat(ap.av.getAlignment() - .getDataset().getSequencesArray(), - getDisplayedFeatureCols(), true, ap.av.isShowNpFeats()); + .getDataset().getSequencesArray(), ap.getFeatureRenderer() + .getDisplayedFeatureCols(), true, ap.av.isShowNpFeats()); } else { text = new FeaturesFile().printJalviewFormat(ap.av.getAlignment() - .getDataset().getSequencesArray(), - getDisplayedFeatureCols(), true, ap.av.isShowNpFeats()); + .getDataset().getSequencesArray(), ap.getFeatureRenderer() + .getDisplayedFeatureCols(), true, ap.av.isShowNpFeats()); } } else if (!features) @@ -184,38 +203,26 @@ public class AnnotationExporter extends JPanel try { cap.setText(text); - 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); + 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); } 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); + 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); cap.dispose(); } close_actionPerformed(null); } - - private Hashtable getDisplayedFeatureCols() - { - Hashtable fcols = new Hashtable(); - if (ap.av.featuresDisplayed == null) - { - return fcols; - } - Enumeration en = ap.av.featuresDisplayed.keys(); - FeatureRenderer fr = ap.seqPanel.seqCanvas.getFeatureRenderer(); // consider - // higher - // level - // method ? - while (en.hasMoreElements()) - { - Object col = en.nextElement(); - fcols.put(col, fr.featureColours.get(col)); - } - return fcols; - } - public void close_actionPerformed(ActionEvent e) { try