JAL-1807 test
[jalviewjs.git] / bin / jalview / io / SequenceAnnotationReport.js
index 4ab2aa6..889211b 100644 (file)
-Clazz.declarePackage ("jalview.io");\r
-Clazz.load (null, "jalview.io.SequenceAnnotationReport", ["jalview.util.DBRefUtils", "$.UrlLink", "java.lang.Float", "java.util.ArrayList"], function () {\r
-c$ = Clazz.decorateAsClass (function () {\r
-this.linkImageURL = null;\r
-Clazz.instantialize (this, arguments);\r
-}, jalview.io, "SequenceAnnotationReport");\r
-Clazz.makeConstructor (c$, \r
-function (linkImageURL) {\r
-this.linkImageURL = linkImageURL;\r
-}, "~S");\r
-Clazz.defineMethod (c$, "appendFeatures", \r
-function (tooltipText2, rpos, features) {\r
-this.appendFeatures (tooltipText2, rpos, features, null);\r
-}, "StringBuffer,~N,java.util.List");\r
-Clazz.defineMethod (c$, "appendFeatures", \r
-function (tooltipText2, rpos, features, minmax) {\r
-var tmpString;\r
-if (features != null) {\r
-for (var feature, $feature = features.iterator (); $feature.hasNext () && ((feature = $feature.next ()) || true);) {\r
-if (feature.getType ().equals ("disulfide bond")) {\r
-if (feature.getBegin () == rpos || feature.getEnd () == rpos) {\r
-if (tooltipText2.length () > 6) {\r
-tooltipText2.append ("<br>");\r
-}tooltipText2.append ("disulfide bond " + feature.getBegin () + ":" + feature.getEnd ());\r
-}} else {\r
-if (tooltipText2.length () > 6) {\r
-tooltipText2.append ("<br>");\r
-}var linkOnly = feature.getValue ("linkonly") != null;\r
-if (!linkOnly) {\r
-tooltipText2.append (feature.getType () + " ");\r
-if (rpos != 0) {\r
-tooltipText2.append (feature.begin);\r
-}if (feature.begin != feature.end) {\r
-tooltipText2.append (" " + feature.end);\r
-}if (feature.getDescription () != null && !feature.description.equals (feature.getType ())) {\r
-tmpString = feature.getDescription ();\r
-var tmp2up = tmpString.toUpperCase ();\r
-var startTag = tmp2up.indexOf ("<HTML>");\r
-if (startTag > -1) {\r
-tmpString = tmpString.substring (startTag + 6);\r
-tmp2up = tmp2up.substring (startTag + 6);\r
-}var endTag = tmp2up.indexOf ("</BODY>");\r
-if (endTag > -1) {\r
-tmpString = tmpString.substring (0, endTag);\r
-tmp2up = tmp2up.substring (0, endTag);\r
-}endTag = tmp2up.indexOf ("</HTML>");\r
-if (endTag > -1) {\r
-tmpString = tmpString.substring (0, endTag);\r
-}if (startTag > -1) {\r
-tooltipText2.append ("; " + tmpString);\r
-} else {\r
-if (tmpString.indexOf ("<") > -1 || tmpString.indexOf (">") > -1) {\r
-tmpString = tmpString.replaceAll ("<", "&lt;");\r
-tmpString = tmpString.replaceAll (">", "&gt;");\r
-tooltipText2.append ("; ");\r
-tooltipText2.append (tmpString);\r
-} else {\r
-tooltipText2.append ("; " + tmpString);\r
-}}}if (!Float.isNaN (feature.getScore ())) {\r
-var rng = (minmax == null) ? null : (minmax.get (feature.getType ()));\r
-if (rng != null && rng[0] != null && rng[0][0] != rng[0][1]) {\r
-tooltipText2.append (" Score=" + feature.getScore ());\r
-}}if (feature.getValue ("status") != null) {\r
-var status = feature.getValue ("status").toString ();\r
-if (status.length > 0) {\r
-tooltipText2.append ("; (" + feature.getValue ("status") + ")");\r
-}}}}if (feature.links != null) {\r
-if (this.linkImageURL != null) {\r
-tooltipText2.append (" <img src=\"" + this.linkImageURL + "\">");\r
-} else {\r
-for (var urlstring, $urlstring = feature.links.iterator (); $urlstring.hasNext () && ((urlstring = $urlstring.next ()) || true);) {\r
-try {\r
-for (var urllink, $urllink = 0, $$urllink = this.createLinksFrom (null, urlstring); $urllink < $$urllink.length && ((urllink = $$urllink[$urllink]) || true); $urllink++) {\r
-tooltipText2.append ("<br/> <a href=\"" + urllink[3] + "\" target=\"" + urllink[0] + "\">" + (urllink[0].toLowerCase ().equals (urllink[1].toLowerCase ()) ? urllink[0] : (urllink[0] + ":" + urllink[1])) + "</a></br>");\r
-}\r
-} catch (x) {\r
-if (Clazz.exceptionOf (x, Exception)) {\r
-System.err.println ("problem when creating links from " + urlstring);\r
-x.printStackTrace ();\r
-} else {\r
-throw x;\r
-}\r
-}\r
-}\r
-}}}\r
-}}, "StringBuffer,~N,java.util.List,java.util.Hashtable");\r
-Clazz.defineMethod (c$, "createLinksFrom", \r
-function (seq, link) {\r
-var urlSets =  new java.util.ArrayList ();\r
-var uniques =  new java.util.ArrayList ();\r
-var urlLink =  new jalview.util.UrlLink (link);\r
-if (!urlLink.isValid ()) {\r
-System.err.println (urlLink.getInvalidMessage ());\r
-return null;\r
-}var target = urlLink.getTarget ();\r
-var label = urlLink.getLabel ();\r
-if (seq != null && urlLink.isDynamic ()) {\r
-var dbr = jalview.util.DBRefUtils.selectRefs (seq.getDBRef (),  Clazz.newArray (-1, [target]));\r
-var id = seq.getName ();\r
-var descr = seq.getDescription ();\r
-if (descr != null && descr.length < 1) {\r
-descr = null;\r
-}if (dbr != null) {\r
-for (var r = 0; r < dbr.length; r++) {\r
-if (id != null && dbr[r].getAccessionId ().equals (id)) {\r
-id = null;\r
-}var urls = urlLink.makeUrls (dbr[r].getAccessionId (), true);\r
-if (urls != null) {\r
-for (var u = 0; u < urls.length; u += 2) {\r
-var unq = urls[u] + "|" + urls[u + 1];\r
-if (!uniques.contains (unq)) {\r
-urlSets.add ( Clazz.newArray (-1, [target, label, urls[u], urls[u + 1]]));\r
-uniques.add (unq);\r
-}}\r
-}}\r
-}if (id != null) {\r
-var urls = urlLink.makeUrls (id, true);\r
-if (urls != null) {\r
-for (var u = 0; u < urls.length; u += 2) {\r
-var unq = urls[u] + "|" + urls[u + 1];\r
-if (!uniques.contains (unq)) {\r
-urlSets.add ( Clazz.newArray (-1, [target, label, urls[u], urls[u + 1]]));\r
-uniques.add (unq);\r
-}}\r
-}}if (descr != null && urlLink.getRegexReplace () != null) {\r
-var urls = urlLink.makeUrls (descr, true);\r
-if (urls != null) {\r
-for (var u = 0; u < urls.length; u += 2) {\r
-var unq = urls[u] + "|" + urls[u + 1];\r
-if (!uniques.contains (unq)) {\r
-urlSets.add ( Clazz.newArray (-1, [target, label, urls[u], urls[u + 1]]));\r
-uniques.add (unq);\r
-}}\r
-}}} else {\r
-var unq = label + "|" + urlLink.getUrl_prefix ();\r
-if (!uniques.contains (unq)) {\r
-uniques.add (unq);\r
-urlSets.add ( Clazz.newArray (-1, [target, label, null, urlLink.getUrl_prefix ()]));\r
-}}return urlSets.toArray ( Clazz.newArray (-1, []));\r
-}, "jalview.datamodel.SequenceI,~S");\r
-Clazz.defineMethod (c$, "createSequenceAnnotationReport", \r
-function (tip, sequence, showDbRefs, showNpFeats, minmax) {\r
-this.createSequenceAnnotationReport (tip, sequence, showDbRefs, showNpFeats, true, minmax);\r
-}, "StringBuffer,jalview.datamodel.SequenceI,~B,~B,java.util.Hashtable");\r
-Clazz.defineMethod (c$, "createSequenceAnnotationReport", \r
-function (tip, sequence, showDbRefs, showNpFeats, tableWrap, minmax) {\r
-var tmp;\r
-tip.append ("<i>");\r
-var maxWidth = 0;\r
-if (sequence.getDescription () != null) {\r
-tmp = sequence.getDescription ();\r
-tip.append ("<br>" + tmp);\r
-maxWidth = Math.max (maxWidth, tmp.length);\r
-}var ds = sequence;\r
-while (ds.getDatasetSequence () != null) {\r
-ds = ds.getDatasetSequence ();\r
-}\r
-var dbrefs = ds.getDBRef ();\r
-if (showDbRefs && dbrefs != null) {\r
-for (var i = 0; i < dbrefs.length; i++) {\r
-tip.append ("<br>");\r
-tmp = dbrefs[i].getSource () + " " + dbrefs[i].getAccessionId ();\r
-tip.append (tmp);\r
-maxWidth = Math.max (maxWidth, tmp.length);\r
-}\r
-}var features = sequence.getSequenceFeatures ();\r
-if (showNpFeats && features != null) {\r
-for (var i = 0; i < features.length; i++) {\r
-if (features[i].begin == 0 && features[i].end == 0) {\r
-var sz = -tip.length ();\r
-var tfeat =  new java.util.ArrayList ();\r
-tfeat.add (features[i]);\r
-this.appendFeatures (tip, 0, tfeat, minmax);\r
-sz += tip.length ();\r
-maxWidth = Math.max (maxWidth, sz);\r
-}}\r
-}if (tableWrap && maxWidth > 60) {\r
-tip.insert (0, "<table width=350 border=0><tr><td><i>");\r
-tip.append ("</i></td></tr></table>");\r
-}}, "StringBuffer,jalview.datamodel.SequenceI,~B,~B,~B,java.util.Hashtable");\r
-});\r
+Clazz.declarePackage ("jalview.io");
+Clazz.load (null, "jalview.io.SequenceAnnotationReport", ["jalview.util.DBRefUtils", "$.UrlLink", "java.lang.Float", "java.util.ArrayList"], function () {
+c$ = Clazz.decorateAsClass (function () {
+this.linkImageURL = null;
+Clazz.instantialize (this, arguments);
+}, jalview.io, "SequenceAnnotationReport");
+Clazz.makeConstructor (c$, 
+function (linkImageURL) {
+this.linkImageURL = linkImageURL;
+}, "~S");
+Clazz.defineMethod (c$, "appendFeatures", 
+function (tooltipText2, rpos, features) {
+this.appendFeatures (tooltipText2, rpos, features, null);
+}, "StringBuffer,~N,java.util.List");
+Clazz.defineMethod (c$, "appendFeatures", 
+function (tooltipText2, rpos, features, minmax) {
+var tmpString;
+if (features != null) {
+for (var feature, $feature = features.iterator (); $feature.hasNext () && ((feature = $feature.next ()) || true);) {
+if (feature.getType ().equals ("disulfide bond")) {
+if (feature.getBegin () == rpos || feature.getEnd () == rpos) {
+if (tooltipText2.length () > 6) {
+tooltipText2.append ("<br>");
+}tooltipText2.append ("disulfide bond " + feature.getBegin () + ":" + feature.getEnd ());
+}} else {
+if (tooltipText2.length () > 6) {
+tooltipText2.append ("<br>");
+}var linkOnly = feature.getValue ("linkonly") != null;
+if (!linkOnly) {
+tooltipText2.append (feature.getType () + " ");
+if (rpos != 0) {
+tooltipText2.append ("" + feature.begin);
+}if (feature.begin != feature.end) {
+tooltipText2.append (" " + feature.end);
+}if (feature.getDescription () != null && !feature.description.equals (feature.getType ())) {
+tmpString = feature.getDescription ();
+var tmp2up = tmpString.toUpperCase ();
+var startTag = tmp2up.indexOf ("<HTML>");
+if (startTag > -1) {
+tmpString = tmpString.substring (startTag + 6);
+tmp2up = tmp2up.substring (startTag + 6);
+}var endTag = tmp2up.indexOf ("</BODY>");
+if (endTag > -1) {
+tmpString = tmpString.substring (0, endTag);
+tmp2up = tmp2up.substring (0, endTag);
+}endTag = tmp2up.indexOf ("</HTML>");
+if (endTag > -1) {
+tmpString = tmpString.substring (0, endTag);
+}if (startTag > -1) {
+tooltipText2.append ("; " + tmpString);
+} else {
+if (tmpString.indexOf ("<") > -1 || tmpString.indexOf (">") > -1) {
+tmpString = tmpString.replaceAll ("<", "&lt;");
+tmpString = tmpString.replaceAll (">", "&gt;");
+tooltipText2.append ("; ");
+tooltipText2.append (tmpString);
+} else {
+tooltipText2.append ("; " + tmpString);
+}}}if (!Float.isNaN (feature.getScore ())) {
+var rng = (minmax == null) ? null : (minmax.get (feature.getType ()));
+if (rng != null && rng[0] != null && rng[0][0] != rng[0][1]) {
+tooltipText2.append (" Score=" + feature.getScore ());
+}}if (feature.getValue ("status") != null) {
+var status = feature.getValue ("status").toString ();
+if (status.length > 0) {
+tooltipText2.append ("; (" + feature.getValue ("status") + ")");
+}}}}if (feature.links != null) {
+if (this.linkImageURL != null) {
+tooltipText2.append (" <img src=\"" + this.linkImageURL + "\">");
+} else {
+for (var urlstring, $urlstring = feature.links.iterator (); $urlstring.hasNext () && ((urlstring = $urlstring.next ()) || true);) {
+try {
+for (var urllink, $urllink = 0, $$urllink = this.createLinksFrom (null, urlstring); $urllink < $$urllink.length && ((urllink = $$urllink[$urllink]) || true); $urllink++) {
+tooltipText2.append ("<br/> <a href=\"" + urllink[3] + "\" target=\"" + urllink[0] + "\">" + (urllink[0].toLowerCase ().equals (urllink[1].toLowerCase ()) ? urllink[0] : (urllink[0] + ":" + urllink[1])) + "</a></br>");
+}
+} catch (x) {
+if (Clazz.exceptionOf (x, Exception)) {
+System.err.println ("problem when creating links from " + urlstring);
+x.printStackTrace ();
+} else {
+throw x;
+}
+}
+}
+}}}
+}}, "StringBuffer,~N,java.util.List,java.util.Hashtable");
+Clazz.defineMethod (c$, "createLinksFrom", 
+function (seq, link) {
+var urlSets =  new java.util.ArrayList ();
+var uniques =  new java.util.ArrayList ();
+var urlLink =  new jalview.util.UrlLink (link);
+if (!urlLink.isValid ()) {
+System.err.println (urlLink.getInvalidMessage ());
+return null;
+}var target = urlLink.getTarget ();
+var label = urlLink.getLabel ();
+if (seq != null && urlLink.isDynamic ()) {
+var dbr = jalview.util.DBRefUtils.selectRefs (seq.getDBRef (),  Clazz.newArray (-1, [target]));
+var id = seq.getName ();
+var descr = seq.getDescription ();
+if (descr != null && descr.length < 1) {
+descr = null;
+}if (dbr != null) {
+for (var r = 0; r < dbr.length; r++) {
+if (id != null && dbr[r].getAccessionId ().equals (id)) {
+id = null;
+}var urls = urlLink.makeUrls (dbr[r].getAccessionId (), true);
+if (urls != null) {
+for (var u = 0; u < urls.length; u += 2) {
+var unq = urls[u] + "|" + urls[u + 1];
+if (!uniques.contains (unq)) {
+urlSets.add ( Clazz.newArray (-1, [target, label, urls[u], urls[u + 1]]));
+uniques.add (unq);
+}}
+}}
+}if (id != null) {
+var urls = urlLink.makeUrls (id, true);
+if (urls != null) {
+for (var u = 0; u < urls.length; u += 2) {
+var unq = urls[u] + "|" + urls[u + 1];
+if (!uniques.contains (unq)) {
+urlSets.add ( Clazz.newArray (-1, [target, label, urls[u], urls[u + 1]]));
+uniques.add (unq);
+}}
+}}if (descr != null && urlLink.getRegexReplace () != null) {
+var urls = urlLink.makeUrls (descr, true);
+if (urls != null) {
+for (var u = 0; u < urls.length; u += 2) {
+var unq = urls[u] + "|" + urls[u + 1];
+if (!uniques.contains (unq)) {
+urlSets.add ( Clazz.newArray (-1, [target, label, urls[u], urls[u + 1]]));
+uniques.add (unq);
+}}
+}}} else {
+var unq = label + "|" + urlLink.getUrl_prefix ();
+if (!uniques.contains (unq)) {
+uniques.add (unq);
+urlSets.add ( Clazz.newArray (-1, [target, label, null, urlLink.getUrl_prefix ()]));
+}}return urlSets.toArray ( Clazz.newArray (-1, []));
+}, "jalview.datamodel.SequenceI,~S");
+Clazz.defineMethod (c$, "createSequenceAnnotationReport", 
+function (tip, sequence, showDbRefs, showNpFeats, minmax) {
+this.createSequenceAnnotationReport (tip, sequence, showDbRefs, showNpFeats, true, minmax);
+}, "StringBuffer,jalview.datamodel.SequenceI,~B,~B,java.util.Hashtable");
+Clazz.defineMethod (c$, "createSequenceAnnotationReport", 
+function (tip, sequence, showDbRefs, showNpFeats, tableWrap, minmax) {
+var tmp;
+tip.append ("<i>");
+var maxWidth = 0;
+if (sequence.getDescription () != null) {
+tmp = sequence.getDescription ();
+tip.append ("<br>" + tmp);
+maxWidth = Math.max (maxWidth, tmp.length);
+}var ds = sequence;
+while (ds.getDatasetSequence () != null) {
+ds = ds.getDatasetSequence ();
+}
+var dbrefs = ds.getDBRef ();
+if (showDbRefs && dbrefs != null) {
+for (var i = 0; i < dbrefs.length; i++) {
+tip.append ("<br>");
+tmp = dbrefs[i].getSource () + " " + dbrefs[i].getAccessionId ();
+tip.append (tmp);
+maxWidth = Math.max (maxWidth, tmp.length);
+}
+}var features = sequence.getSequenceFeatures ();
+if (showNpFeats && features != null) {
+for (var i = 0; i < features.length; i++) {
+if (features[i].begin == 0 && features[i].end == 0) {
+var sz = -tip.length ();
+var tfeat =  new java.util.ArrayList ();
+tfeat.add (features[i]);
+this.appendFeatures (tip, 0, tfeat, minmax);
+sz += tip.length ();
+maxWidth = Math.max (maxWidth, sz);
+}}
+}if (tableWrap && maxWidth > 60) {
+tip.insert (0, "<table width=350 border=0><tr><td><i>");
+tip.append ("</i></td></tr></table>");
+}}, "StringBuffer,jalview.datamodel.SequenceI,~B,~B,~B,java.util.Hashtable");
+});