/*\r
* Jalview - A Sequence Alignment Editor and Viewer\r
- * Copyright (C) 2005 AM Waterhouse, J Procter, G Barton, M Clamp, S Searle\r
+ * Copyright (C) 2006 AM Waterhouse, J Procter, G Barton, M Clamp, S Searle\r
*\r
* This program is free software; you can redistribute it and/or\r
* modify it under the terms of the GNU General Public License\r
public class CutAndPasteTransfer extends GCutAndPasteTransfer\r
{\r
\r
- AlignmentI addToThisAlignment;\r
+ AlignViewport viewport;\r
\r
public CutAndPasteTransfer()\r
{\r
/**\r
* DOCUMENT ME!\r
*/\r
- public void setForInput(AlignmentI alignment)\r
+ public void setForInput(AlignViewport viewport)\r
{\r
- addToThisAlignment = alignment;\r
+ this.viewport = viewport;\r
getContentPane().add(inputButtonPanel, java.awt.BorderLayout.SOUTH);\r
}\r
\r
textarea.append(text);\r
}\r
\r
+\r
+ public void save_actionPerformed(ActionEvent e)\r
+ {\r
+ JalviewFileChooser chooser = new JalviewFileChooser(\r
+ jalview.bin.Cache.getProperty(\r
+ "LAST_DIRECTORY"));\r
+\r
+ chooser.setAcceptAllFileFilterUsed(false);\r
+ chooser.setFileView(new JalviewFileView());\r
+ chooser.setDialogTitle("Save Text to File");\r
+ chooser.setToolTipText("Save");\r
+\r
+ int value = chooser.showSaveDialog(this);\r
+\r
+ if (value == JalviewFileChooser.APPROVE_OPTION)\r
+ {\r
+ try\r
+ {\r
+ java.io.PrintWriter out = new java.io.PrintWriter(\r
+ new java.io.FileWriter(chooser.getSelectedFile()));\r
+\r
+ out.print(getText());\r
+ out.close();\r
+ }\r
+ catch (Exception ex)\r
+ {\r
+ ex.printStackTrace();\r
+ }\r
+\r
+ }\r
+ }\r
+\r
+\r
+\r
/**\r
* DOCUMENT ME!\r
*\r
String format = new IdentifyFile().Identify(getText(), "Paste");\r
SequenceI[] sequences = null;\r
\r
- if (FormatAdapter.formats.contains(format))\r
+ if (FormatAdapter.isValidFormat(format))\r
{\r
try{\r
sequences = new FormatAdapter().readFile(getText(), "Paste", format);\r
\r
if (sequences != null)\r
{\r
- if(addToThisAlignment!=null)\r
+ if(viewport!=null)\r
{\r
for(int i=0; i<sequences.length; i++)\r
- addToThisAlignment.addSequence(sequences[i]);\r
+ viewport.getAlignment().addSequence(sequences[i]);\r
+\r
+ viewport.firePropertyChange("alignment", null, viewport.getAlignment().getSequences());\r
}\r
else\r
{\r
- AlignFrame af = new AlignFrame(new Alignment(sequences));\r
+ AlignFrame af = new AlignFrame(new Alignment(sequences),\r
+ AlignFrame.DEFAULT_WIDTH,\r
+ AlignFrame.DEFAULT_HEIGHT);\r
af.currentFileFormat = format;\r
Desktop.addInternalFrame(af, "Cut & Paste input - " + format,\r
- AlignFrame.NEW_WINDOW_WIDTH,\r
- AlignFrame.NEW_WINDOW_HEIGHT);\r
+ AlignFrame.DEFAULT_WIDTH,\r
+ AlignFrame.DEFAULT_HEIGHT);\r
af.statusBar.setText("Successfully pasted alignment file");\r
\r
try\r
catch (Exception ex)\r
{\r
}\r
-\r
}\r
- try\r
- {\r
- this.setClosed(true);\r
- }\r
- catch (Exception ex)\r
- {\r
- }\r
}\r
}\r
\r