Merge branch 'master' of https://source.jalview.org/git/jalviewjs.git
[jalviewjs.git] / site / j2s / jalview / appletgui / CutAndPasteTransfer.js
index 7719073..0230bfe 100644 (file)
-Clazz.declarePackage ("jalview.appletgui");\r
-Clazz.load (["awt2swing.Panel", "java.awt.event.ActionListener", "$.MouseListener", "awt2swing.Button", "$.TextArea", "java.awt.BorderLayout"], "jalview.appletgui.CutAndPasteTransfer", ["awt2swing.Frame", "$.Label", "jalview.analysis.AlignmentUtils", "jalview.api.ComplexAlignFile", "jalview.appletgui.AlignFrame", "$.AppletJmol", "$.JVDialog", "$.SplitFrame", "jalview.datamodel.PDBEntry", "jalview.io.AnnotationFile", "$.AppletFormatAdapter", "$.IdentifyFile", "$.NewickFile", "jalview.jsdev.GenericFileAdapter", "jalview.schemes.TCoffeeColourScheme", "jalview.util.MessageManager", "java.awt.Font"], function () {\r
-c$ = Clazz.decorateAsClass (function () {\r
-this.pdbImport = false;\r
-this.treeImport = false;\r
-this.annotationImport = false;\r
-this.seq = null;\r
-this.alignFrame = null;\r
-this.source = null;\r
-this.textarea = null;\r
-this.accept = null;\r
-this.addSequences = null;\r
-this.$cancel = null;\r
-this.buttonPanel = null;\r
-this.borderLayout1 = null;\r
-Clazz.instantialize (this, arguments);\r
-}, jalview.appletgui, "CutAndPasteTransfer", awt2swing.Panel, [java.awt.event.ActionListener, java.awt.event.MouseListener]);\r
-Clazz.prepareFields (c$, function () {\r
-this.textarea =  new awt2swing.TextArea ();\r
-this.accept =  new awt2swing.Button ("New Window");\r
-this.addSequences =  new awt2swing.Button ("Add to Current Alignment");\r
-this.$cancel =  new awt2swing.Button ("Close");\r
-this.buttonPanel =  new awt2swing.Panel ();\r
-this.borderLayout1 =  new java.awt.BorderLayout ();\r
-});\r
-Clazz.makeConstructor (c$, \r
-function (forImport, alignFrame) {\r
-Clazz.superConstructor (this, jalview.appletgui.CutAndPasteTransfer, []);\r
-try {\r
-this.jbInit ();\r
-} catch (e) {\r
-if (Clazz.exceptionOf (e, Exception)) {\r
-e.printStackTrace ();\r
-} else {\r
-throw e;\r
-}\r
-}\r
-this.alignFrame = alignFrame;\r
-if (!forImport) {\r
-this.buttonPanel.setVisible (false);\r
-}}, "~B,jalview.appletgui.AlignFrame");\r
-Clazz.defineMethod (c$, "getText", \r
-function () {\r
-return this.textarea.getText ();\r
-});\r
-Clazz.defineMethod (c$, "setText", \r
-function (text) {\r
-this.textarea.setText (text);\r
-}, "~S");\r
-Clazz.defineMethod (c$, "setPDBImport", \r
-function (seq) {\r
-this.seq = seq;\r
-this.accept.setLabel (jalview.util.MessageManager.getString ("action.accept"));\r
-this.addSequences.setVisible (false);\r
-this.pdbImport = true;\r
-}, "jalview.datamodel.SequenceI");\r
-Clazz.defineMethod (c$, "setTreeImport", \r
-function () {\r
-this.treeImport = true;\r
-this.accept.setLabel (jalview.util.MessageManager.getString ("action.accept"));\r
-this.addSequences.setVisible (false);\r
-});\r
-Clazz.defineMethod (c$, "setAnnotationImport", \r
-function () {\r
-this.annotationImport = true;\r
-this.accept.setLabel (jalview.util.MessageManager.getString ("action.accept"));\r
-this.addSequences.setVisible (false);\r
-});\r
-Clazz.overrideMethod (c$, "actionPerformed", \r
-function (evt) {\r
-if (evt.getSource () === this.accept) {\r
-this.ok (true);\r
-} else if (evt.getSource () === this.addSequences) {\r
-this.ok (false);\r
-} else if (evt.getSource () === this.$cancel) {\r
-this.cancel ();\r
-}}, "java.awt.event.ActionEvent");\r
-Clazz.defineMethod (c$, "ok", \r
-function (newWindow) {\r
-var text = this.getText ();\r
-var length = text.length;\r
-this.textarea.append ("\n");\r
-if (this.textarea.getText ().length == length) {\r
-var warning = "\n\n#################################################\nWARNING!! THIS IS THE MAXIMUM SIZE OF TEXTAREA!!\n\nCAN\'T INPUT FULL ALIGNMENT\n\nYOU MUST DELETE THIS WARNING TO CONTINUE\n\nMAKE SURE LAST SEQUENCE PASTED IS COMPLETE\n#################################################\n";\r
-this.textarea.setText (text.substring (0, text.length - warning.length) + warning);\r
-this.textarea.setCaretPosition (text.length);\r
-}if (this.pdbImport) {\r
-this.openPdbViewer (text);\r
-} else if (this.treeImport) {\r
-if (!this.loadTree ()) {\r
-return;\r
-}} else if (this.annotationImport) {\r
-this.loadAnnotations ();\r
-} else if (this.alignFrame != null) {\r
-this.loadAlignment (text, newWindow, this.alignFrame.getAlignViewport ());\r
-}if (Clazz.instanceOf (this.getParent (), awt2swing.Frame)) {\r
-(this.getParent ()).setVisible (false);\r
-} else {\r
-(this.getParent ()).setVisible (false);\r
-}}, "~B");\r
-Clazz.defineMethod (c$, "loadTree", \r
-function () {\r
-try {\r
-var fin =  new jalview.io.NewickFile (this.textarea.getText (), "Paste");\r
-fin.parse ();\r
-if (fin.getTree () != null) {\r
-this.alignFrame.loadTree (fin, "Pasted tree file");\r
-return true;\r
-}} catch (ex) {\r
-if (Clazz.exceptionOf (ex, Exception)) {\r
-this.textarea.setText (jalview.util.MessageManager.formatMessage ("label.could_not_parse_newick_file",  Clazz.newArray (-1, [ex.getMessage ()])));\r
-return false;\r
-} else {\r
-throw ex;\r
-}\r
-}\r
-return false;\r
-});\r
-Clazz.defineMethod (c$, "loadAlignment", \r
-function (text, newWindow, viewport) {\r
-var al = null;\r
-var format =  new jalview.io.IdentifyFile ().Identify (text, jalview.io.AppletFormatAdapter.PASTE);\r
-var afa =  new jalview.io.AppletFormatAdapter (this.alignFrame.alignPanel);\r
-try {\r
-al = afa.readFile (text, jalview.io.AppletFormatAdapter.PASTE, format);\r
-this.source = afa.getAlignFile ();\r
-} catch (ex) {\r
-if (Clazz.exceptionOf (ex, java.io.IOException)) {\r
-ex.printStackTrace ();\r
-} else {\r
-throw ex;\r
-}\r
-}\r
-if (al != null) {\r
-al.setDataset (null);\r
-var allowSplitFrame = this.alignFrame.viewport.applet.getDefaultParameter ("enableSplitFrame", false);\r
-if (allowSplitFrame && this.openSplitFrame (al, format)) {\r
-return;\r
-}if (newWindow) {\r
-var af;\r
-if (Clazz.instanceOf (this.source, jalview.api.ComplexAlignFile)) {\r
-var colSel = (this.source).getColumnSelection ();\r
-var hiddenSeqs = (this.source).getHiddenSequences ();\r
-var showSeqFeatures = (this.source).isShowSeqFeatures ();\r
-var cs = (this.source).getColourScheme ();\r
-af =  new jalview.appletgui.AlignFrame (al, hiddenSeqs, colSel, this.alignFrame.viewport.applet, "Cut & Paste input - " + format, false);\r
-af.getAlignViewport ().setShowSequenceFeatures (showSeqFeatures);\r
-af.changeColour (cs);\r
-} else {\r
-af =  new jalview.appletgui.AlignFrame (al, this.alignFrame.viewport.applet, "Cut & Paste input - " + format, false);\r
-}af.setStatus (jalview.util.MessageManager.getString ("label.successfully_pasted_annotation_to_alignment"));\r
-} else {\r
-this.alignFrame.addSequences (al.getSequencesArray ());\r
-this.alignFrame.setStatus (jalview.util.MessageManager.getString ("label.successfully_pasted_alignment_file"));\r
-}}}, "~S,~B,jalview.appletgui.AlignViewport");\r
-Clazz.defineMethod (c$, "openSplitFrame", \r
-function (al, format) {\r
-var thisAlignment = this.alignFrame.getAlignViewport ().getAlignment ();\r
-if (thisAlignment.isNucleotide () == al.isNucleotide ()) {\r
-return false;\r
-}var protein = thisAlignment.isNucleotide () ? al : thisAlignment;\r
-var dna = thisAlignment.isNucleotide () ? thisAlignment : al;\r
-var mapped = jalview.analysis.AlignmentUtils.mapProteinToCdna (protein, dna);\r
-if (!mapped) {\r
-return false;\r
-}var title = jalview.util.MessageManager.getString ("label.open_split_window");\r
-var dialog =  new jalview.appletgui.JVDialog (this.getParent (), title, true, 100, 400);\r
-dialog.ok.setLabel (jalview.util.MessageManager.getString ("action.yes"));\r
-dialog.cancel.setLabel (jalview.util.MessageManager.getString ("action.no"));\r
-var question =  new awt2swing.Panel ( new java.awt.BorderLayout ());\r
-var text = jalview.util.MessageManager.getString ("label.open_split_window?");\r
-question.add ( new awt2swing.Label (text, 0), "Center");\r
-dialog.setMainPanel (question);\r
-dialog.setVisible (true);\r
-dialog.toFront ();\r
-if (!dialog.accept) {\r
-return false;\r
-}var applet = this.alignFrame.viewport.applet;\r
-var copyFrame =  new jalview.appletgui.AlignFrame (this.alignFrame.viewport.getAlignment (), applet, this.alignFrame.getTitle (), false, false);\r
-var newFrame =  new jalview.appletgui.AlignFrame (al, this.alignFrame.viewport.applet, "Cut & Paste input - " + format, false, false);\r
-var dnaFrame = al.isNucleotide () ? newFrame : copyFrame;\r
-var proteinFrame = al.isNucleotide () ? copyFrame : newFrame;\r
-var sf =  new jalview.appletgui.SplitFrame (dnaFrame, proteinFrame);\r
-sf.addToDisplay (false, applet);\r
-return true;\r
-}, "jalview.datamodel.AlignmentI,~S");\r
-Clazz.defineMethod (c$, "loadAnnotations", \r
-function () {\r
-var tcf = null;\r
-try {\r
-tcf = jalview.jsdev.GenericFileAdapter.getFile ("TCoffeeScoreFile", [this.textarea.getText (), jalview.io.AppletFormatAdapter.PASTE]);\r
-if (tcf.isValid ()) {\r
-if (tcf.annotateAlignment (this.alignFrame.viewport.getAlignment (), true)) {\r
-this.alignFrame.tcoffeeColour.setEnabled (true);\r
-this.alignFrame.alignPanel.fontChanged ();\r
-this.alignFrame.changeColour ( new jalview.schemes.TCoffeeColourScheme (this.alignFrame.viewport.getAlignment ()));\r
-this.alignFrame.setStatus (jalview.util.MessageManager.getString ("label.successfully_pasted_tcoffee_scores_to_alignment"));\r
-} else {\r
-this.alignFrame.setStatus (jalview.util.MessageManager.formatMessage ("label.failed_add_tcoffee_scores",  Clazz.newArray (-1, [(tcf.getWarningMessage () != null ? tcf.getWarningMessage () : "")])));\r
-}} else {\r
-tcf = null;\r
-}} catch (x) {\r
-if (Clazz.exceptionOf (x, Exception)) {\r
-tcf = null;\r
-} else {\r
-throw x;\r
-}\r
-}\r
-if (tcf == null) {\r
-if ( new jalview.io.AnnotationFile ().annotateAlignmentView (this.alignFrame.viewport, this.textarea.getText (), jalview.io.AppletFormatAdapter.PASTE)) {\r
-this.alignFrame.alignPanel.fontChanged ();\r
-this.alignFrame.alignPanel.setScrollValues (0, 0);\r
-this.alignFrame.setStatus (jalview.util.MessageManager.getString ("label.successfully_pasted_annotation_to_alignment"));\r
-} else {\r
-if (!this.alignFrame.parseFeaturesFile (this.textarea.getText (), jalview.io.AppletFormatAdapter.PASTE)) {\r
-this.alignFrame.setStatus (jalview.util.MessageManager.getString ("label.couldnt_parse_pasted_text_as_valid_annotation_feature_GFF_tcoffee_file"));\r
-}}}});\r
-Clazz.defineMethod (c$, "openPdbViewer", \r
-function (text) {\r
-var pdb =  new jalview.datamodel.PDBEntry ();\r
-pdb.setFile (text);\r
- new jalview.appletgui.AppletJmol (pdb,  Clazz.newArray (-1, [this.seq]), null, this.alignFrame.alignPanel, jalview.io.AppletFormatAdapter.PASTE);\r
-}, "~S");\r
-Clazz.defineMethod (c$, "cancel", \r
-function () {\r
-this.textarea.setText ("");\r
-if (Clazz.instanceOf (this.getParent (), awt2swing.Frame)) {\r
-(this.getParent ()).setVisible (false);\r
-} else {\r
-(this.getParent ()).setVisible (false);\r
-}});\r
-Clazz.defineMethod (c$, "jbInit", \r
- function () {\r
-this.textarea.setFont ( new java.awt.Font ("Monospaced", 0, 10));\r
-this.textarea.setText (jalview.util.MessageManager.getString ("label.paste_your_alignment_file"));\r
-this.textarea.addMouseListener (this);\r
-this.setLayout (this.borderLayout1);\r
-this.accept.addActionListener (this);\r
-this.addSequences.addActionListener (this);\r
-this.$cancel.addActionListener (this);\r
-this.add (this.buttonPanel, "South");\r
-this.buttonPanel.add (this.accept, null);\r
-this.buttonPanel.add (this.addSequences);\r
-this.buttonPanel.add (this.$cancel, null);\r
-this.add (this.textarea, "Center");\r
-});\r
-Clazz.overrideMethod (c$, "mousePressed", \r
-function (evt) {\r
-if (this.textarea.getText ().startsWith (jalview.util.MessageManager.getString ("label.paste_your"))) {\r
-this.textarea.setText ("");\r
-}}, "java.awt.event.MouseEvent");\r
-Clazz.overrideMethod (c$, "mouseReleased", \r
-function (evt) {\r
-}, "java.awt.event.MouseEvent");\r
-Clazz.overrideMethod (c$, "mouseClicked", \r
-function (evt) {\r
-}, "java.awt.event.MouseEvent");\r
-Clazz.overrideMethod (c$, "mouseEntered", \r
-function (evt) {\r
-}, "java.awt.event.MouseEvent");\r
-Clazz.overrideMethod (c$, "mouseExited", \r
-function (evt) {\r
-}, "java.awt.event.MouseEvent");\r
-});\r
+Clazz.declarePackage ("jalview.appletgui");
+Clazz.load (["awt2swing.Panel", "java.awt.event.ActionListener", "$.MouseListener", "awt2swing.Button", "$.TextArea", "java.awt.BorderLayout"], "jalview.appletgui.CutAndPasteTransfer", ["awt2swing.Frame", "$.Label", "jalview.analysis.AlignmentUtils", "jalview.api.ComplexAlignFile", "jalview.appletgui.AlignFrame", "$.AppletJmol", "$.JVDialog", "$.SplitFrame", "jalview.datamodel.PDBEntry", "jalview.io.AnnotationFile", "$.AppletFormatAdapter", "$.IdentifyFile", "$.NewickFile", "jalview.jsdev.GenericFileAdapter", "jalview.schemes.TCoffeeColourScheme", "jalview.util.MessageManager", "java.awt.Font"], function () {
+c$ = Clazz.decorateAsClass (function () {
+this.pdbImport = false;
+this.treeImport = false;
+this.annotationImport = false;
+this.seq = null;
+this.alignFrame = null;
+this.source = null;
+this.textarea = null;
+this.accept = null;
+this.addSequences = null;
+this.$cancel = null;
+this.buttonPanel = null;
+this.borderLayout1 = null;
+Clazz.instantialize (this, arguments);
+}, jalview.appletgui, "CutAndPasteTransfer", awt2swing.Panel, [java.awt.event.ActionListener, java.awt.event.MouseListener]);
+Clazz.prepareFields (c$, function () {
+this.textarea =  new awt2swing.TextArea ();
+this.accept =  new awt2swing.Button ("New Window");
+this.addSequences =  new awt2swing.Button ("Add to Current Alignment");
+this.$cancel =  new awt2swing.Button ("Close");
+this.buttonPanel =  new awt2swing.Panel ();
+this.borderLayout1 =  new java.awt.BorderLayout ();
+});
+Clazz.makeConstructor (c$, 
+function (forImport, alignFrame) {
+Clazz.superConstructor (this, jalview.appletgui.CutAndPasteTransfer, []);
+try {
+this.jbInit ();
+} catch (e) {
+if (Clazz.exceptionOf (e, Exception)) {
+e.printStackTrace ();
+} else {
+throw e;
+}
+}
+this.alignFrame = alignFrame;
+if (!forImport) {
+this.buttonPanel.setVisible (false);
+}}, "~B,jalview.appletgui.AlignFrame");
+Clazz.defineMethod (c$, "getText", 
+function () {
+return this.textarea.getText ();
+});
+Clazz.defineMethod (c$, "setText", 
+function (text) {
+this.textarea.setText (text);
+}, "~S");
+Clazz.defineMethod (c$, "setPDBImport", 
+function (seq) {
+this.seq = seq;
+this.accept.setLabel (jalview.util.MessageManager.getString ("action.accept"));
+this.addSequences.setVisible (false);
+this.pdbImport = true;
+}, "jalview.datamodel.SequenceI");
+Clazz.defineMethod (c$, "setTreeImport", 
+function () {
+this.treeImport = true;
+this.accept.setLabel (jalview.util.MessageManager.getString ("action.accept"));
+this.addSequences.setVisible (false);
+});
+Clazz.defineMethod (c$, "setAnnotationImport", 
+function () {
+this.annotationImport = true;
+this.accept.setLabel (jalview.util.MessageManager.getString ("action.accept"));
+this.addSequences.setVisible (false);
+});
+Clazz.overrideMethod (c$, "actionPerformed", 
+function (evt) {
+if (evt.getSource () === this.accept) {
+this.ok (true);
+} else if (evt.getSource () === this.addSequences) {
+this.ok (false);
+} else if (evt.getSource () === this.$cancel) {
+this.cancel ();
+}}, "java.awt.event.ActionEvent");
+Clazz.defineMethod (c$, "ok", 
+function (newWindow) {
+var text = this.getText ();
+var length = text.length;
+this.textarea.append ("\n");
+if (this.textarea.getText ().length == length) {
+var warning = "\n\n#################################################\nWARNING!! THIS IS THE MAXIMUM SIZE OF TEXTAREA!!\n\nCAN\'T INPUT FULL ALIGNMENT\n\nYOU MUST DELETE THIS WARNING TO CONTINUE\n\nMAKE SURE LAST SEQUENCE PASTED IS COMPLETE\n#################################################\n";
+this.textarea.setText (text.substring (0, text.length - warning.length) + warning);
+this.textarea.setCaretPosition (text.length);
+}if (this.pdbImport) {
+this.openPdbViewer (text);
+} else if (this.treeImport) {
+if (!this.loadTree ()) {
+return;
+}} else if (this.annotationImport) {
+this.loadAnnotations ();
+} else if (this.alignFrame != null) {
+this.loadAlignment (text, newWindow, this.alignFrame.getAlignViewport ());
+}if (Clazz.instanceOf (this.getParent (), awt2swing.Frame)) {
+(this.getParent ()).setVisible (false);
+} else {
+(this.getParent ()).setVisible (false);
+}}, "~B");
+Clazz.defineMethod (c$, "loadTree", 
+function () {
+try {
+var fin =  new jalview.io.NewickFile (this.textarea.getText (), "Paste");
+fin.parse ();
+if (fin.getTree () != null) {
+this.alignFrame.loadTree (fin, "Pasted tree file");
+return true;
+}} catch (ex) {
+if (Clazz.exceptionOf (ex, Exception)) {
+this.textarea.setText (jalview.util.MessageManager.formatMessage ("label.could_not_parse_newick_file",  Clazz.newArray (-1, [ex.getMessage ()])));
+return false;
+} else {
+throw ex;
+}
+}
+return false;
+});
+Clazz.defineMethod (c$, "loadAlignment", 
+function (text, newWindow, viewport) {
+var al = null;
+var format =  new jalview.io.IdentifyFile ().Identify (text, jalview.io.AppletFormatAdapter.PASTE);
+var afa =  new jalview.io.AppletFormatAdapter (this.alignFrame.alignPanel);
+try {
+al = afa.readFile (text, jalview.io.AppletFormatAdapter.PASTE, format);
+this.source = afa.getAlignFile ();
+} catch (ex) {
+if (Clazz.exceptionOf (ex, java.io.IOException)) {
+ex.printStackTrace ();
+} else {
+throw ex;
+}
+}
+if (al != null) {
+al.setDataset (null);
+var allowSplitFrame = this.alignFrame.viewport.applet.getDefaultParameter ("enableSplitFrame", false);
+if (allowSplitFrame && this.openSplitFrame (al, format)) {
+return;
+}if (newWindow) {
+var af;
+if (Clazz.instanceOf (this.source, jalview.api.ComplexAlignFile)) {
+var colSel = (this.source).getColumnSelection ();
+var hiddenSeqs = (this.source).getHiddenSequences ();
+var showSeqFeatures = (this.source).isShowSeqFeatures ();
+var cs = (this.source).getColourScheme ();
+af =  new jalview.appletgui.AlignFrame (al, hiddenSeqs, colSel, this.alignFrame.viewport.applet, "Cut & Paste input - " + format, false);
+af.getAlignViewport ().setShowSequenceFeatures (showSeqFeatures);
+af.changeColour (cs);
+} else {
+af =  new jalview.appletgui.AlignFrame (al, this.alignFrame.viewport.applet, "Cut & Paste input - " + format, false);
+}af.setStatus (jalview.util.MessageManager.getString ("label.successfully_pasted_annotation_to_alignment"));
+} else {
+this.alignFrame.addSequences (al.getSequencesArray ());
+this.alignFrame.setStatus (jalview.util.MessageManager.getString ("label.successfully_pasted_alignment_file"));
+}}}, "~S,~B,jalview.appletgui.AlignViewport");
+Clazz.defineMethod (c$, "openSplitFrame", 
+function (al, format) {
+var thisAlignment = this.alignFrame.getAlignViewport ().getAlignment ();
+if (thisAlignment.isNucleotide () == al.isNucleotide ()) {
+return false;
+}var protein = thisAlignment.isNucleotide () ? al : thisAlignment;
+var dna = thisAlignment.isNucleotide () ? thisAlignment : al;
+var mapped = jalview.analysis.AlignmentUtils.mapProteinToCdna (protein, dna);
+if (!mapped) {
+return false;
+}var title = jalview.util.MessageManager.getString ("label.open_split_window");
+var dialog =  new jalview.appletgui.JVDialog (this.getParent (), title, true, 100, 400);
+dialog.ok.setLabel (jalview.util.MessageManager.getString ("action.yes"));
+dialog.cancel.setLabel (jalview.util.MessageManager.getString ("action.no"));
+var question =  new awt2swing.Panel ( new java.awt.BorderLayout ());
+var text = jalview.util.MessageManager.getString ("label.open_split_window?");
+question.add ( new awt2swing.Label (text, 0), "Center");
+dialog.setMainPanel (question);
+dialog.setVisible (true);
+dialog.toFront ();
+if (!dialog.accept) {
+return false;
+}var applet = this.alignFrame.viewport.applet;
+var copyFrame =  new jalview.appletgui.AlignFrame (this.alignFrame.viewport.getAlignment (), applet, this.alignFrame.getTitle (), false, false);
+var newFrame =  new jalview.appletgui.AlignFrame (al, this.alignFrame.viewport.applet, "Cut & Paste input - " + format, false, false);
+var dnaFrame = al.isNucleotide () ? newFrame : copyFrame;
+var proteinFrame = al.isNucleotide () ? copyFrame : newFrame;
+var sf =  new jalview.appletgui.SplitFrame (dnaFrame, proteinFrame);
+sf.addToDisplay (false, applet);
+return true;
+}, "jalview.datamodel.AlignmentI,~S");
+Clazz.defineMethod (c$, "loadAnnotations", 
+function () {
+var tcf = null;
+try {
+tcf = jalview.jsdev.GenericFileAdapter.getFile ("TCoffeeScoreFile", [this.textarea.getText (), jalview.io.AppletFormatAdapter.PASTE]);
+if (tcf.isValid ()) {
+if (tcf.annotateAlignment (this.alignFrame.viewport.getAlignment (), true)) {
+this.alignFrame.tcoffeeColour.setEnabled (true);
+this.alignFrame.alignPanel.fontChanged ();
+this.alignFrame.changeColour ( new jalview.schemes.TCoffeeColourScheme (this.alignFrame.viewport.getAlignment ()));
+this.alignFrame.setStatus (jalview.util.MessageManager.getString ("label.successfully_pasted_tcoffee_scores_to_alignment"));
+} else {
+this.alignFrame.setStatus (jalview.util.MessageManager.formatMessage ("label.failed_add_tcoffee_scores",  Clazz.newArray (-1, [(tcf.getWarningMessage () != null ? tcf.getWarningMessage () : "")])));
+}} else {
+tcf = null;
+}} catch (x) {
+if (Clazz.exceptionOf (x, Exception)) {
+tcf = null;
+} else {
+throw x;
+}
+}
+if (tcf == null) {
+if ( new jalview.io.AnnotationFile ().annotateAlignmentView (this.alignFrame.viewport, this.textarea.getText (), jalview.io.AppletFormatAdapter.PASTE)) {
+this.alignFrame.alignPanel.fontChanged ();
+this.alignFrame.alignPanel.setScrollValues (0, 0);
+this.alignFrame.setStatus (jalview.util.MessageManager.getString ("label.successfully_pasted_annotation_to_alignment"));
+} else {
+if (!this.alignFrame.parseFeaturesFile (this.textarea.getText (), jalview.io.AppletFormatAdapter.PASTE)) {
+this.alignFrame.setStatus (jalview.util.MessageManager.getString ("label.couldnt_parse_pasted_text_as_valid_annotation_feature_GFF_tcoffee_file"));
+}}}});
+Clazz.defineMethod (c$, "openPdbViewer", 
+function (text) {
+var pdb =  new jalview.datamodel.PDBEntry ();
+pdb.setFile (text);
+ new jalview.appletgui.AppletJmol (pdb,  Clazz.newArray (-1, [this.seq]), null, this.alignFrame.alignPanel, jalview.io.AppletFormatAdapter.PASTE);
+}, "~S");
+Clazz.defineMethod (c$, "cancel", 
+function () {
+this.textarea.setText ("");
+if (Clazz.instanceOf (this.getParent (), awt2swing.Frame)) {
+(this.getParent ()).setVisible (false);
+} else {
+(this.getParent ()).setVisible (false);
+}});
+Clazz.defineMethod (c$, "jbInit", 
+ function () {
+this.textarea.setFont ( new java.awt.Font ("Monospaced", 0, 10));
+this.textarea.setText (jalview.util.MessageManager.getString ("label.paste_your_alignment_file"));
+this.textarea.addMouseListener (this);
+this.setLayout (this.borderLayout1);
+this.accept.addActionListener (this);
+this.addSequences.addActionListener (this);
+this.$cancel.addActionListener (this);
+this.add (this.buttonPanel, "South");
+this.buttonPanel.add (this.accept, null);
+this.buttonPanel.add (this.addSequences);
+this.buttonPanel.add (this.$cancel, null);
+this.add (this.textarea, "Center");
+});
+Clazz.overrideMethod (c$, "mousePressed", 
+function (evt) {
+if (this.textarea.getText ().startsWith (jalview.util.MessageManager.getString ("label.paste_your"))) {
+this.textarea.setText ("");
+}}, "java.awt.event.MouseEvent");
+Clazz.overrideMethod (c$, "mouseReleased", 
+function (evt) {
+}, "java.awt.event.MouseEvent");
+Clazz.overrideMethod (c$, "mouseClicked", 
+function (evt) {
+}, "java.awt.event.MouseEvent");
+Clazz.overrideMethod (c$, "mouseEntered", 
+function (evt) {
+}, "java.awt.event.MouseEvent");
+Clazz.overrideMethod (c$, "mouseExited", 
+function (evt) {
+}, "java.awt.event.MouseEvent");
+});