X-Git-Url: http://source.jalview.org/gitweb/?a=blobdiff_plain;f=src%2Fjalview%2Fgui%2FAnnotationExporter.java;h=e50859d56d51341ec2905e58dcd152dd0729b8f5;hb=d83c0095dae033f5b4b7c81eb1493083b5cbe346;hp=118aab8fd31dd1b4f6899dad81a80c904166a831;hpb=d423f22792e47dbc800ae220a58677f988971d06;p=jalview.git diff --git a/src/jalview/gui/AnnotationExporter.java b/src/jalview/gui/AnnotationExporter.java index 118aab8..e50859d 100755 --- a/src/jalview/gui/AnnotationExporter.java +++ b/src/jalview/gui/AnnotationExporter.java @@ -1,5 +1,5 @@ /* - * Jalview - A Sequence Alignment Editor and Viewer (Version 2.5) + * Jalview - A Sequence Alignment Editor and Viewer (Version 2.6) * Copyright (C) 2010 J Procter, AM Waterhouse, G Barton, M Clamp, S Searle * * This file is part of Jalview. @@ -88,8 +88,8 @@ public class AnnotationExporter extends JPanel public void toFile_actionPerformed(ActionEvent e) { - JalviewFileChooser chooser = new JalviewFileChooser(jalview.bin.Cache - .getProperty("LAST_DIRECTORY")); + JalviewFileChooser chooser = new JalviewFileChooser( + jalview.bin.Cache.getProperty("LAST_DIRECTORY")); chooser.setFileView(new JalviewFileView()); chooser.setDialogTitle(features ? "Save Features to File" @@ -177,10 +177,18 @@ public class AnnotationExporter extends JPanel } CutAndPasteTransfer cap = new CutAndPasteTransfer(); - cap.setText(text); - Desktop.addInternalFrame(cap, (features ? "Features for - " - : "Annotations for - ") - + ap.alignFrame.getTitle(), 600, 500); + try + { + cap.setText(text); + Desktop.addInternalFrame(cap, (features ? "Features for - " + : "Annotations for - ") + ap.alignFrame.getTitle(), 600, 500); + } catch (OutOfMemoryError oom) + { + new OOMWarning("generating " + + (features ? "Features for - " : "Annotations for - ") + + ap.alignFrame.getTitle(), oom); + cap.dispose(); + } close_actionPerformed(null); } @@ -188,6 +196,10 @@ public class AnnotationExporter extends JPanel 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