X-Git-Url: http://source.jalview.org/gitweb/?a=blobdiff_plain;ds=sidebyside;f=src%2Fjalview%2Fgui%2FCutAndPasteTransfer.java;fp=src%2Fjalview%2Fgui%2FCutAndPasteTransfer.java;h=df0142cd524919c33d86ce11932b2cdf0a87339e;hb=483e7163b1fb8d4bcb9393014816c944befce328;hp=4184ecaadc9f5c673d303dc1717a7f4d0228032e;hpb=19424d4e1623bfcdcf30567f7a233fe81c4a9e4e;p=jalview.git diff --git a/src/jalview/gui/CutAndPasteTransfer.java b/src/jalview/gui/CutAndPasteTransfer.java index 4184eca..df0142c 100644 --- a/src/jalview/gui/CutAndPasteTransfer.java +++ b/src/jalview/gui/CutAndPasteTransfer.java @@ -30,8 +30,11 @@ import jalview.bin.Jalview; import jalview.datamodel.AlignmentI; import jalview.datamodel.ColumnSelection; import jalview.datamodel.SequenceI; +import jalview.io.AlignmentFileI; import jalview.io.AppletFormatAdapter; -import jalview.io.FileParse; +import jalview.io.DataSourceType; +import jalview.io.FileFormatException; +import jalview.io.FileFormatI; import jalview.io.FormatAdapter; import jalview.io.IdentifyFile; import jalview.io.JalviewFileChooser; @@ -49,6 +52,9 @@ import java.awt.datatransfer.Transferable; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import java.awt.event.MouseEvent; +import java.io.FileWriter; +import java.io.IOException; +import java.io.PrintWriter; import javax.swing.JMenuItem; import javax.swing.JPopupMenu; @@ -67,7 +73,7 @@ public class CutAndPasteTransfer extends GCutAndPasteTransfer AlignViewportI viewport; - FileParse source = null; + AlignmentFileI source = null; public CutAndPasteTransfer() { @@ -144,8 +150,8 @@ public class CutAndPasteTransfer extends GCutAndPasteTransfer { try { - java.io.PrintWriter out = new java.io.PrintWriter( - new java.io.FileWriter(chooser.getSelectedFile())); + PrintWriter out = new PrintWriter(new FileWriter( + chooser.getSelectedFile())); out.print(getText()); out.close(); @@ -212,8 +218,15 @@ public class CutAndPasteTransfer extends GCutAndPasteTransfer return; } - String format = new IdentifyFile().identify(text, "Paste"); - if (format == null || format.equalsIgnoreCase("EMPTY DATA FILE")) + FileFormatI format = null; + try + { + format = new IdentifyFile().identify(text, DataSourceType.PASTE); + } catch (FileFormatException e1) + { + // leave as null + } + if (format == null) { System.err.println(MessageManager .getString("label.couldnt_read_data")); @@ -230,29 +243,26 @@ public class CutAndPasteTransfer extends GCutAndPasteTransfer // TODO: identify feature, annotation or tree file and parse appropriately. AlignmentI al = null; - if (FormatAdapter.isValidFormat(format)) + try { - try - { - FormatAdapter fa = new FormatAdapter(alignpanel); - al = fa.readFile(getText(), "Paste", format); - source = fa.getAlignFile(); + FormatAdapter fa = new FormatAdapter(alignpanel); + al = fa.readFile(getText(), DataSourceType.PASTE, format); + source = fa.getAlignFile(); - } catch (java.io.IOException ex) - { - JvOptionPane.showInternalMessageDialog(Desktop.desktop, - MessageManager.formatMessage( - "label.couldnt_read_pasted_text", - new String[] { ex.toString() }), MessageManager - .getString("label.error_parsing_text"), - JvOptionPane.WARNING_MESSAGE); - } + } catch (IOException ex) + { + JvOptionPane.showInternalMessageDialog(Desktop.desktop, MessageManager + .formatMessage("label.couldnt_read_pasted_text", new String[] + { ex.toString() }), MessageManager + .getString("label.error_parsing_text"), + JvOptionPane.WARNING_MESSAGE); } if (al != null && al.hasValidSequence()) { String title = MessageManager.formatMessage( - "label.input_cut_paste_params", new String[] { format }); + "label.input_cut_paste_params", + new String[] { format.toString() }); FeatureSettingsModelI proxyColourScheme = source .getFeatureColourScheme();