Merge branch 'master' of https://source.jalview.org/git/jalviewjs.git
[jalviewjs.git] / site / j2s / jalview / appletgui / Finder.js
index 76128f9..372bcb8 100644 (file)
-Clazz.declarePackage ("jalview.appletgui");\r
-Clazz.load (["awt2swing.Panel", "java.awt.event.ActionListener", "awt2swing.Button", "$.Checkbox", "$.Label", "$.TextField", "java.awt.GridLayout"], "jalview.appletgui.Finder", ["awt2swing.Frame", "jalview.analysis.Finder", "jalview.bin.JalviewLite", "jalview.datamodel.SequenceFeature", "jalview.util.MessageManager", "java.awt.Font", "$.Rectangle", "java.awt.event.KeyAdapter", "$.WindowAdapter"], function () {\r
-c$ = Clazz.decorateAsClass (function () {\r
-this.av = null;\r
-this.ap = null;\r
-this.frame = null;\r
-this.searchResults = null;\r
-this.seqIndex = 0;\r
-this.resIndex = -1;\r
-this.jLabel1 = null;\r
-this.textfield = null;\r
-this.findAll = null;\r
-this.findNext = null;\r
-this.actionsPanel = null;\r
-this.gridLayout1 = null;\r
-this.createNewGroup = null;\r
-this.caseSensitive = null;\r
-this.searchDescription = null;\r
-Clazz.instantialize (this, arguments);\r
-}, jalview.appletgui, "Finder", awt2swing.Panel, java.awt.event.ActionListener);\r
-Clazz.prepareFields (c$, function () {\r
-this.jLabel1 =  new awt2swing.Label ();\r
-this.textfield =  new awt2swing.TextField ();\r
-this.findAll =  new awt2swing.Button ();\r
-this.findNext =  new awt2swing.Button ();\r
-this.actionsPanel =  new awt2swing.Panel ();\r
-this.gridLayout1 =  new java.awt.GridLayout ();\r
-this.createNewGroup =  new awt2swing.Button ();\r
-this.caseSensitive =  new awt2swing.Checkbox ();\r
-this.searchDescription =  new awt2swing.Checkbox ();\r
-});\r
-Clazz.makeConstructor (c$, \r
-function (ap) {\r
-Clazz.superConstructor (this, jalview.appletgui.Finder, []);\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.av = ap.av;\r
-this.ap = ap;\r
-this.frame =  new awt2swing.Frame ();\r
-this.frame.add (this);\r
-jalview.bin.JalviewLite.addFrame (this.frame, jalview.util.MessageManager.getString ("action.find"), 340, 120);\r
-this.frame.repaint ();\r
-this.frame.addWindowListener (((Clazz.isClassDefined ("jalview.appletgui.Finder$1") ? 0 : jalview.appletgui.Finder.$Finder$1$ ()), Clazz.innerTypeInstance (jalview.appletgui.Finder$1, this, Clazz.cloneFinals ("ap", ap))));\r
-this.textfield.requestFocus ();\r
-}, "jalview.appletgui.AlignmentPanel");\r
-Clazz.overrideMethod (c$, "actionPerformed", \r
-function (evt) {\r
-if (evt.getSource () === this.textfield) {\r
-this.doSearch (false);\r
-} else if (evt.getSource () === this.findNext) {\r
-this.doSearch (false);\r
-} else if (evt.getSource () === this.findAll) {\r
-this.resIndex = -1;\r
-this.seqIndex = 0;\r
-this.doSearch (true);\r
-} else if (evt.getSource () === this.createNewGroup) {\r
-this.createNewGroup_actionPerformed ();\r
-}}, "java.awt.event.ActionEvent");\r
-Clazz.defineMethod (c$, "createNewGroup_actionPerformed", \r
-function () {\r
-var seqs =  new Array (this.searchResults.getSize ());\r
-var features =  new Array (this.searchResults.getSize ());\r
-for (var i = 0; i < this.searchResults.getSize (); i++) {\r
-seqs[i] = this.searchResults.getResultSequence (i);\r
-features[i] =  new jalview.datamodel.SequenceFeature (this.textfield.getText ().trim (), "Search Results", null, this.searchResults.getResultStart (i), this.searchResults.getResultEnd (i), "Search Results");\r
-}\r
-if (this.ap.seqPanel.seqCanvas.getFeatureRenderer ().amendFeatures (seqs, features, true, this.ap)) {\r
-this.ap.alignFrame.sequenceFeatures.setState (true);\r
-this.av.setShowSequenceFeatures (true);\r
-this.ap.highlightSearchResults (null);\r
-}});\r
-Clazz.defineMethod (c$, "doSearch", \r
-function (findAll) {\r
-if (this.ap.av.applet.currentAlignFrame != null) {\r
-this.ap = this.ap.av.applet.currentAlignFrame.alignPanel;\r
-this.av = this.ap.av;\r
-}this.createNewGroup.setEnabled (false);\r
-var finder =  new jalview.analysis.Finder (this.av.getAlignment (), this.av.getSelectionGroup (), this.seqIndex, this.resIndex);\r
-finder.setCaseSensitive (this.caseSensitive.getState ());\r
-finder.setIncludeDescription (this.searchDescription.getState ());\r
-finder.setFindAll (findAll);\r
-var searchString = this.textfield.getText ();\r
-finder.find (searchString);\r
-this.seqIndex = finder.getSeqIndex ();\r
-this.resIndex = finder.getResIndex ();\r
-this.searchResults = finder.getSearchResults ();\r
-var idMatch = finder.getIdMatch ();\r
-var haveResults = false;\r
-if ((idMatch.size () > 0)) {\r
-haveResults = true;\r
-this.ap.idPanel.highlightSearchResults (idMatch);\r
-} else {\r
-this.ap.idPanel.highlightSearchResults (null);\r
-}if (this.searchResults.getSize () > 0) {\r
-haveResults = true;\r
-this.createNewGroup.setEnabled (true);\r
-} else {\r
-this.searchResults = null;\r
-}this.ap.highlightSearchResults (this.searchResults);\r
-if (!haveResults) {\r
-this.ap.alignFrame.setStatus (jalview.util.MessageManager.getString ("label.finished_searching"));\r
-this.resIndex = -1;\r
-this.seqIndex = 0;\r
-} else {\r
-if (findAll) {\r
-var message = (idMatch.size () > 0) ? "" + idMatch.size () + " IDs" : "";\r
-if (idMatch.size () > 0 && this.searchResults != null && this.searchResults.getSize () > 0) {\r
-message += " and ";\r
-}if (this.searchResults != null) {\r
-message += this.searchResults.getSize () + " subsequence matches.";\r
-}this.ap.alignFrame.setStatus (jalview.util.MessageManager.formatMessage ("label.search_results",  Clazz.newArray (-1, [searchString, message])));\r
-} else {\r
-this.ap.alignFrame.setStatus (jalview.util.MessageManager.formatMessage ("label.found_match_for",  Clazz.newArray (-1, [searchString])));\r
-}}}, "~B");\r
-Clazz.defineMethod (c$, "jbInit", \r
- function () {\r
-this.jLabel1.setFont ( new java.awt.Font ("Verdana", 0, 12));\r
-this.jLabel1.setText (jalview.util.MessageManager.getString ("action.find"));\r
-this.jLabel1.setBounds ( new java.awt.Rectangle (3, 30, 34, 15));\r
-this.setLayout (null);\r
-this.textfield.setFont ( new java.awt.Font ("Verdana", 0, 10));\r
-this.textfield.setText ("");\r
-this.textfield.setBounds ( new java.awt.Rectangle (40, 17, 133, 21));\r
-this.textfield.addKeyListener (((Clazz.isClassDefined ("jalview.appletgui.Finder$2") ? 0 : jalview.appletgui.Finder.$Finder$2$ ()), Clazz.innerTypeInstance (jalview.appletgui.Finder$2, this, null)));\r
-this.textfield.addActionListener (this);\r
-this.findAll.setFont ( new java.awt.Font ("Verdana", 0, 10));\r
-this.findAll.setLabel (jalview.util.MessageManager.getString ("action.find_all"));\r
-this.findAll.addActionListener (this);\r
-this.findNext.setEnabled (false);\r
-this.findNext.setFont ( new java.awt.Font ("Verdana", 0, 10));\r
-this.findNext.setLabel (jalview.util.MessageManager.getString ("action.find_next"));\r
-this.findNext.addActionListener (this);\r
-this.actionsPanel.setBounds ( new java.awt.Rectangle (195, 5, 141, 64));\r
-this.actionsPanel.setLayout (this.gridLayout1);\r
-this.gridLayout1.setHgap (0);\r
-this.gridLayout1.setRows (3);\r
-this.gridLayout1.setVgap (2);\r
-this.createNewGroup.setEnabled (false);\r
-this.createNewGroup.setFont ( new java.awt.Font ("Verdana", 0, 10));\r
-this.createNewGroup.setLabel (jalview.util.MessageManager.getString ("label.new_feature"));\r
-this.createNewGroup.addActionListener (this);\r
-this.caseSensitive.setLabel (jalview.util.MessageManager.getString ("label.match_case"));\r
-this.caseSensitive.setBounds ( new java.awt.Rectangle (30, 39, 126, 23));\r
-this.searchDescription.setLabel (jalview.util.MessageManager.getString ("label.include_description"));\r
-this.searchDescription.setBounds ( new java.awt.Rectangle (30, 59, 170, 23));\r
-this.actionsPanel.add (this.findNext, null);\r
-this.actionsPanel.add (this.findAll, null);\r
-this.actionsPanel.add (this.createNewGroup, null);\r
-this.add (this.caseSensitive);\r
-this.add (this.textfield, null);\r
-this.add (this.jLabel1, null);\r
-this.add (this.actionsPanel, null);\r
-this.add (this.searchDescription);\r
-});\r
-Clazz.defineMethod (c$, "textfield_keyTyped", \r
-function (e) {\r
-this.findNext.setEnabled (true);\r
-}, "java.awt.event.KeyEvent");\r
-c$.$Finder$1$ = function () {\r
-Clazz.pu$h(self.c$);\r
-c$ = Clazz.declareAnonymous (jalview.appletgui, "Finder$1", java.awt.event.WindowAdapter);\r
-Clazz.overrideMethod (c$, "windowClosing", \r
-function (evt) {\r
-this.f$.ap.highlightSearchResults (null);\r
-}, "java.awt.event.WindowEvent");\r
-c$ = Clazz.p0p ();\r
-};\r
-c$.$Finder$2$ = function () {\r
-Clazz.pu$h(self.c$);\r
-c$ = Clazz.declareAnonymous (jalview.appletgui, "Finder$2", java.awt.event.KeyAdapter);\r
-Clazz.overrideMethod (c$, "keyTyped", \r
-function (e) {\r
-this.b$["jalview.appletgui.Finder"].textfield_keyTyped (e);\r
-}, "java.awt.event.KeyEvent");\r
-c$ = Clazz.p0p ();\r
-};\r
-});\r
+Clazz.declarePackage ("jalview.appletgui");
+Clazz.load (["awt2swing.Panel", "java.awt.event.ActionListener", "awt2swing.Button", "$.Checkbox", "$.Label", "$.TextField", "java.awt.GridLayout"], "jalview.appletgui.Finder", ["awt2swing.Frame", "jalview.analysis.Finder", "jalview.bin.JalviewLite", "jalview.datamodel.SequenceFeature", "jalview.util.MessageManager", "java.awt.Font", "$.Rectangle", "java.awt.event.KeyAdapter", "$.WindowAdapter"], function () {
+c$ = Clazz.decorateAsClass (function () {
+this.av = null;
+this.ap = null;
+this.frame = null;
+this.searchResults = null;
+this.seqIndex = 0;
+this.resIndex = -1;
+this.jLabel1 = null;
+this.textfield = null;
+this.findAll = null;
+this.findNext = null;
+this.actionsPanel = null;
+this.gridLayout1 = null;
+this.createNewGroup = null;
+this.caseSensitive = null;
+this.searchDescription = null;
+Clazz.instantialize (this, arguments);
+}, jalview.appletgui, "Finder", awt2swing.Panel, java.awt.event.ActionListener);
+Clazz.prepareFields (c$, function () {
+this.jLabel1 =  new awt2swing.Label ();
+this.textfield =  new awt2swing.TextField ();
+this.findAll =  new awt2swing.Button ();
+this.findNext =  new awt2swing.Button ();
+this.actionsPanel =  new awt2swing.Panel ();
+this.gridLayout1 =  new java.awt.GridLayout ();
+this.createNewGroup =  new awt2swing.Button ();
+this.caseSensitive =  new awt2swing.Checkbox ();
+this.searchDescription =  new awt2swing.Checkbox ();
+});
+Clazz.makeConstructor (c$, 
+function (ap) {
+Clazz.superConstructor (this, jalview.appletgui.Finder, []);
+try {
+this.jbInit ();
+} catch (e) {
+if (Clazz.exceptionOf (e, Exception)) {
+e.printStackTrace ();
+} else {
+throw e;
+}
+}
+this.av = ap.av;
+this.ap = ap;
+this.frame =  new awt2swing.Frame ();
+this.frame.add (this);
+jalview.bin.JalviewLite.addFrame (this.frame, jalview.util.MessageManager.getString ("action.find"), 340, 120);
+this.frame.repaint ();
+this.frame.addWindowListener (((Clazz.isClassDefined ("jalview.appletgui.Finder$1") ? 0 : jalview.appletgui.Finder.$Finder$1$ ()), Clazz.innerTypeInstance (jalview.appletgui.Finder$1, this, Clazz.cloneFinals ("ap", ap))));
+this.textfield.requestFocus ();
+}, "jalview.appletgui.AlignmentPanel");
+Clazz.overrideMethod (c$, "actionPerformed", 
+function (evt) {
+if (evt.getSource () === this.textfield) {
+this.doSearch (false);
+} else if (evt.getSource () === this.findNext) {
+this.doSearch (false);
+} else if (evt.getSource () === this.findAll) {
+this.resIndex = -1;
+this.seqIndex = 0;
+this.doSearch (true);
+} else if (evt.getSource () === this.createNewGroup) {
+this.createNewGroup_actionPerformed ();
+}}, "java.awt.event.ActionEvent");
+Clazz.defineMethod (c$, "createNewGroup_actionPerformed", 
+function () {
+var seqs =  new Array (this.searchResults.getSize ());
+var features =  new Array (this.searchResults.getSize ());
+for (var i = 0; i < this.searchResults.getSize (); i++) {
+seqs[i] = this.searchResults.getResultSequence (i);
+features[i] =  new jalview.datamodel.SequenceFeature (this.textfield.getText ().trim (), "Search Results", null, this.searchResults.getResultStart (i), this.searchResults.getResultEnd (i), "Search Results");
+}
+if (this.ap.seqPanel.seqCanvas.getFeatureRenderer ().amendFeatures (seqs, features, true, this.ap)) {
+this.ap.alignFrame.sequenceFeatures.setState (true);
+this.av.setShowSequenceFeatures (true);
+this.ap.highlightSearchResults (null);
+}});
+Clazz.defineMethod (c$, "doSearch", 
+function (findAll) {
+if (this.ap.av.applet.currentAlignFrame != null) {
+this.ap = this.ap.av.applet.currentAlignFrame.alignPanel;
+this.av = this.ap.av;
+}this.createNewGroup.setEnabled (false);
+var finder =  new jalview.analysis.Finder (this.av.getAlignment (), this.av.getSelectionGroup (), this.seqIndex, this.resIndex);
+finder.setCaseSensitive (this.caseSensitive.getState ());
+finder.setIncludeDescription (this.searchDescription.getState ());
+finder.setFindAll (findAll);
+var searchString = this.textfield.getText ();
+finder.find (searchString);
+this.seqIndex = finder.getSeqIndex ();
+this.resIndex = finder.getResIndex ();
+this.searchResults = finder.getSearchResults ();
+var idMatch = finder.getIdMatch ();
+var haveResults = false;
+if ((idMatch.size () > 0)) {
+haveResults = true;
+this.ap.idPanel.highlightSearchResults (idMatch);
+} else {
+this.ap.idPanel.highlightSearchResults (null);
+}if (this.searchResults.getSize () > 0) {
+haveResults = true;
+this.createNewGroup.setEnabled (true);
+} else {
+this.searchResults = null;
+}this.ap.highlightSearchResults (this.searchResults);
+if (!haveResults) {
+this.ap.alignFrame.setStatus (jalview.util.MessageManager.getString ("label.finished_searching"));
+this.resIndex = -1;
+this.seqIndex = 0;
+} else {
+if (findAll) {
+var message = (idMatch.size () > 0) ? "" + idMatch.size () + " IDs" : "";
+if (idMatch.size () > 0 && this.searchResults != null && this.searchResults.getSize () > 0) {
+message += " and ";
+}if (this.searchResults != null) {
+message += this.searchResults.getSize () + " subsequence matches.";
+}this.ap.alignFrame.setStatus (jalview.util.MessageManager.formatMessage ("label.search_results",  Clazz.newArray (-1, [searchString, message])));
+} else {
+this.ap.alignFrame.setStatus (jalview.util.MessageManager.formatMessage ("label.found_match_for",  Clazz.newArray (-1, [searchString])));
+}}}, "~B");
+Clazz.defineMethod (c$, "jbInit", 
+ function () {
+this.jLabel1.setFont ( new java.awt.Font ("Verdana", 0, 12));
+this.jLabel1.setText (jalview.util.MessageManager.getString ("action.find"));
+this.jLabel1.setBounds ( new java.awt.Rectangle (3, 30, 34, 15));
+this.setLayout (null);
+this.textfield.setFont ( new java.awt.Font ("Verdana", 0, 10));
+this.textfield.setText ("");
+this.textfield.setBounds ( new java.awt.Rectangle (40, 17, 133, 21));
+this.textfield.addKeyListener (((Clazz.isClassDefined ("jalview.appletgui.Finder$2") ? 0 : jalview.appletgui.Finder.$Finder$2$ ()), Clazz.innerTypeInstance (jalview.appletgui.Finder$2, this, null)));
+this.textfield.addActionListener (this);
+this.findAll.setFont ( new java.awt.Font ("Verdana", 0, 10));
+this.findAll.setLabel (jalview.util.MessageManager.getString ("action.find_all"));
+this.findAll.addActionListener (this);
+this.findNext.setEnabled (false);
+this.findNext.setFont ( new java.awt.Font ("Verdana", 0, 10));
+this.findNext.setLabel (jalview.util.MessageManager.getString ("action.find_next"));
+this.findNext.addActionListener (this);
+this.actionsPanel.setBounds ( new java.awt.Rectangle (195, 5, 141, 64));
+this.actionsPanel.setLayout (this.gridLayout1);
+this.gridLayout1.setHgap (0);
+this.gridLayout1.setRows (3);
+this.gridLayout1.setVgap (2);
+this.createNewGroup.setEnabled (false);
+this.createNewGroup.setFont ( new java.awt.Font ("Verdana", 0, 10));
+this.createNewGroup.setLabel (jalview.util.MessageManager.getString ("label.new_feature"));
+this.createNewGroup.addActionListener (this);
+this.caseSensitive.setLabel (jalview.util.MessageManager.getString ("label.match_case"));
+this.caseSensitive.setBounds ( new java.awt.Rectangle (30, 39, 126, 23));
+this.searchDescription.setLabel (jalview.util.MessageManager.getString ("label.include_description"));
+this.searchDescription.setBounds ( new java.awt.Rectangle (30, 59, 170, 23));
+this.actionsPanel.add (this.findNext, null);
+this.actionsPanel.add (this.findAll, null);
+this.actionsPanel.add (this.createNewGroup, null);
+this.add (this.caseSensitive);
+this.add (this.textfield, null);
+this.add (this.jLabel1, null);
+this.add (this.actionsPanel, null);
+this.add (this.searchDescription);
+});
+Clazz.defineMethod (c$, "textfield_keyTyped", 
+function (e) {
+this.findNext.setEnabled (true);
+}, "java.awt.event.KeyEvent");
+c$.$Finder$1$ = function () {
+Clazz.pu$h(self.c$);
+c$ = Clazz.declareAnonymous (jalview.appletgui, "Finder$1", java.awt.event.WindowAdapter);
+Clazz.overrideMethod (c$, "windowClosing", 
+function (evt) {
+this.f$.ap.highlightSearchResults (null);
+}, "java.awt.event.WindowEvent");
+c$ = Clazz.p0p ();
+};
+c$.$Finder$2$ = function () {
+Clazz.pu$h(self.c$);
+c$ = Clazz.declareAnonymous (jalview.appletgui, "Finder$2", java.awt.event.KeyAdapter);
+Clazz.overrideMethod (c$, "keyTyped", 
+function (e) {
+this.b$["jalview.appletgui.Finder"].textfield_keyTyped (e);
+}, "java.awt.event.KeyEvent");
+c$ = Clazz.p0p ();
+};
+});